资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考,不能作为科学依据。本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考!,数学试验与Matlab,1/229,实 验 一,矩阵运算与Matlab命令,2/229,日常矩阵及其运算,矩阵应用实例:,榄球防护用具生产管理,3/229,应用问题,一个工厂生产三种橄榄球用具:防护帽、垫肩、臀垫。,需要不一样数量:硬塑料、泡沫塑料 尼龙线、劳动力。,为监控生产,管理者对它们之间关系十分关心。,为把握这些量关系,他列出下面表,4/229,原料产品关系表,5/229,订单,管理者接到四份订单如上表所表示。,问应该怎样计算每份订单所需原材料,方便组织生产?,6/229,将表格写成矩阵形式,7/229,计 算,输入下面Matlab指令,A=4 2 3;1 3 2;1 3 3;3 2 2,B=35 20 60 45;10 15 50 40;20 12 45 20,C=A*B,请自行计算观看结果,8/229,Matlab基本指令,向量创建和运算,9/229,1.直接输入向量,x1=1 2 4,x2=1,2,1,x3=x1,运行结果,x1=1 2 4,x2=1 2 1,x3=,1,2,4,10/229,2.冒号创建向量,x1=3.4:6.7,x2=3.4:2:6.7,x3=2.6:-0.8:0,运算结果,x1=,3.4000 4.4000 5.4000 6.4000,x2=,3.4000 5.4000,x3=,2.6000 1.8000 1.0000 0.,11/229,3.生成线性等分向量,指令x=linspace(a,b,n)在a,b区间产生 n 个等分点(包含端点),x=linspace(0,1,5),结果,x=,0 0.2500 0.5000 0.7500 1.0000,12/229,工作空间,在Matlab窗口创建向量后并运行后,向量就存在于工作空间,能够被调用。,13/229,向量运算,设x=x1 x2 x3;y=y1 y2 y3;为两个三维向量,a,b为标量。,向量数乘:a*x=a*x1 a*x2 a*x3,向量平移:x+b=x1+b x2+b x3+b,向量和:x+y=x1+y1 x2+y2 x3+y3,向量差:x-y=x1-y1 x2-y2 x3-y3,数乘幂:如 a2,14/229,元素群运算(四则运算),x.*y=x1*y1 x2*y2 x3*y3 (元素群乘积),x./y=x1/y1 x2/y2 x3/y3 (元素群右除,右边y做分母),x.y=y1/x1 y2/x2 y3/x3 (元素群左除,左边x做分母),x.5=x15 x25 x35 (元素群乘幂),2.x=2x1 2x2 2x3 (元素群乘幂),x.y=x1y1 x2y2 x3y3 (元素群乘幂),15/229,元素群运算(函数计算),Matlab有许多内部函数,可直接作用于向量产生一个同维函数向量。,x=linspace(0,4,*,pi,100);(产生100维向量x),y=sin(x);(y也自动为100维向量),y1=sin(x).2;,y2=exp(-x).*sin(x);,观察结果,16/229,创建矩阵(数值矩阵创建),直接输入法创建简单矩阵。,A=1 2 3 4;5 6 7 8;9 10 11 12,B=-1.3,sqrt(3);(1+2),*,4/5,sin(5);exp(2),6,观察运行结果,17/229,创建矩阵(符号矩阵创建),用指令“syms”说明符号变量。,syms a11 a12 a13 a14 a21 a22 a23 a24 a31 a32 a33 a34 b11 b12 b13 b14 b21 b22 b23 b24 b31 b32 b33 b34,A1=a11 a12 a13 a14;a21 a22 a23 a24;a31 a32 a33 a34,B1=b11 b12 b13 b14;b21 b22 b23 b24;b31 b32 b33 b34,运行,18/229,矩阵运算,(矩阵加减、数乘、乘积,),C=A1+B1,D=A1-B1,syms c,cA=c*A1,A2=A1(:,1:3),B1,G=A2*B1,19/229,矩阵运算,(矩阵加减、数乘、乘积,),A,A_trans=A,H=1 2 3;2 1 0;1 2 3,K=1 2 3;2 1 0;2 3 1,h_det=det(H),k_det=det(K),H_inv=inv(H),K_inv=K-1,20/229,矩阵运算(左除和右除),左除“”:,求矩阵方程AX=B解;(,A、B行要保持一致),解为 X=AB;,当A为方阵且可逆时有X=AB=inv(A)*B;,右除“/”:,求矩阵方程XA=B解,(,A、B列要保持一致),解为 X=B/A,,当A为方阵且可逆时有X=B/A=B,*,inv(A),21/229,矩阵运算(左除和右除),求矩阵方程:,设A、B满足关系式:AB2B+A,求B。,其中A=3 0 1;1 1 0;0 1 4。,解:有(A-2I)BA,程序:,A=3 0 1;1 1 0;0 1 4;,B=inv(A-2*eye(3)*A,B=(A-2*eye(3)A,观察结果:,22/229,分块矩阵,(,矩阵标识,),1.矩阵元素标识:,A(i,j)表示矩阵A 第 i 行 j 列元素;,2.向量标识方式 A(vr,vc):,vr=i1,i2,ik、vc=j1,j2,ju分别是含有矩阵A行号和列号单调向量。,A(vr,vc)是取出矩阵A第i1,i2,ik行与j1,j2,ju列交叉处元素所组成新矩阵。,23/229,分块矩阵,(,矩阵标识,),取出A1、3行和1、3列交叉处元素组成新矩阵A1,程序,A=1 0 1 1 2;0 1-1 2 3;,3 0 5 1 0;2 3 1 2 1,vr=1,3;vc=1,3;,A1=A(vr,vc),观察结果,24/229,分块矩阵,(,矩阵标识,),将A分为四块,并把它们赋值到矩阵B中,观察运行后结果。,程序,A11=A(1:2,1:2),A12=A(1:2,3:5),A21=A(3:4,1:2),A22=A(3:4,3:5),B=A11 A12;A21 A22,结果,25/229,分块矩阵,(矩阵修改和提取),修改矩阵A,将它第1行变为0。,程序:,A=1 0 1 1 2;0 1-1 2 3;,3 0 5 1 0;2 3 1 2 1,A(1,:)=0 0 0 0 0;A,删除上面矩阵A第1、3行。,程序:,A(1,3,:)=,结果,26/229,生成特殊矩阵,全1阵,ones(n),ones(m,n),ones(size(A),全零阵:,zeros(n),zeros(m,n),zeros(size(A),经常用于对某个矩阵或向量赋0初值,单位阵:,eye(n),eye(m,n),随机阵:,rand(m,n),rand(n)=rand(n,n)用于随机模拟,常和rand(seed,k)配合使用。,27/229,生成特殊矩阵,将rand指令运行屡次,观察结果。,程序:,y1=rand(1,5),y2=rand(1,5),rand(seed,3),x1=rand(1,5),rand(seed,3),x2=rand(1,5),结果,28/229,惯用矩阵函数,det(A):方阵行列式;,rank(A):矩阵秩;,eig(A):方阵特征值和特征向量;,trace(A):矩阵迹;,rref(A):初等变换阶梯化矩阵A,svd(A):矩阵奇异值分解。,cond(A):矩阵条件数;,29/229,数据简单分析,1.当数据为行向量或列向量时,函数对整个向量进行计算.,2.当数据为矩阵时,命令对列进行计算,即把每一列数据当成同一变量不一样观察值。,max(求最大)、min(求最小)、mean(求平均值)、sum(求和)、std(求标准差)、cumsum(求累积和)、median(求中值)、diff(差分)、sort(升序排列)、sortrows(行升序排列)等等,。,30/229,数据简单分析,观察:生成一个36随机数矩阵,并将其各列排序、求各列最大值与各列元素之和。,程序,rand(seed,1);A=rand(3,6),Asort=sort(A),Amax=max(A),Asum=sum(A),结果,31/229,试验二,函数可视化与Matlab作图,32/229,函数可视化,f(x),g(x)是周期函数吗?观察它们图象。,程序,clf,x=linspace(0,8,*,pi,100);,F=inline(sin(x+cos(x+sin(x);,y1=sin(x+cos(x+sin(x);y2=0.2*x+sin(x+cos(x+sin(x);,plot(x,y1,k:,x,y2,k-)legend(sin(x+cos(x+sin(x),0.2x+sin(x+cos(x+sin(x),2),令,33/229,绘制平面曲线(plot指令),plot(x,y):,以x为横坐标、y为纵坐标绘制二维图形,x,y是同维数向量;,plot(y):,相当于x=1,2,length(y)时情形。,34/229,绘制平面曲线,(绘制多个图形),1.plot(x,y1;y2;),x是横坐标向量,y1;y2;是由若干函数纵坐标拼成矩阵,2.plot(x,y1),hold on,plot(x,y2),hold off,3.plot(x,y1,x,y2,),4.plotyy,两个坐标系,用于绘制不一样尺度函数。,35/229,绘制平面曲线,(线型、点形和颜色控制),plot(x,y,颜色线型点形),plot(x,y,颜色线型点形,x,y,颜色线型点形,),句柄图形和set命令改变属性值,可套用:,h=plot(x,y),set(h,属性,属性值,属性,属性值,),也可用plot(x,y,属性,属性值)设置图形对象属性。,36/229,绘制平面曲线,(属性变量和属性值),线宽:LineWidth,点大小:MarkerSize,线型:LineStyle,颜色:color,37/229,绘制平面曲线,(例),观察:,改变绘图线型和颜色。,用grid on 指令为图形窗口加上 网格线,并改变网格线型和字体大小,。,程序,h=plot(0:0.1:2,*,pi,sin(0:0.1:2,*,pi);,set(h,LineWidth,5,color,red);grid on,set(gca,GridLineStyle,-,fontsize,16),观察结果,38/229,绘制平面曲线,(坐标轴控制),axis指令,axis(xmin xmax ymin ymax):,设定二维图形x和y坐标范围;,axis(xmin xmax ymin ymax zmin ymax):,设定三维图形坐标范围;,其中xminxxmax,yminyymax,zminzzmax,。,39/229,绘制平面曲线,(,gca属性控制),改变当前轴对象句柄gca属性,用set(gca,属性,属性值,)可改变字体大小、坐标刻度等轴对象内容。比如:,set(gca,ytick,-1-0.5 0 0.5 1),将 y 坐标按向量-1-0.5 0 0.5 1将刻度分成4格;,set(gca,yticklabel,a|b|c|d|e),改变y坐标刻度说明。,40/229,绘制平面曲线,(,gca属性控制,例),设置y坐标刻度并加以说明,并改变字体大小。,程序,plot(0:0.1:2*pi,sin(0:0.1:2*pi),k.-,);grid on,axis(0 6.3-1.1 1.1),,set(gca,ytick,-1-0.5 0 0.5 1),set(gca,yticklabel,a|b|c|d|e),set(gca,fontsize,20),get(gca),运行结果,41/229,绘制平面曲线,(文字标注),title(图形标题);,xlabel(x轴名称);ylabel(y轴名称);zlabel(z轴名称);,text(说明文字):创建说明文字;,gtext(说明文字):用鼠标在特定位置输入文字。,文字标注惯用符号:,pi();alpha();beta();,leftarrow (左箭头)rightarrow (右箭头);,bullet(点号),42/229,绘制平面曲线,(程序讲解,exp2_1.m),clf,t=0:0.1:3,*,pi;alpha=0:0.1:3,*,pi;,plot(t,sin(t),r-);hold on;plot(alpha,3*exp(-0.5,*,alpha),k:);,set(gca,fontsize,15,fontname,times New Roman),xlabel(itt(deg);,ylabel(itmagnitude);,title(itsine wave and itAe-alphaittwave);,43/229,绘制平面曲线,(程序讲解,exp2_1.m),text(6,sin(6),fontsize15The Value itsin(t)at itt=6rightarrowbullet,HorizontalAlignment,right),text(2,3*exp(-0.5,*,2),fontsize15bulletleftarrow The Value of it3e-0.5 itt=,num2str(3*exp(-0.5,*,2),at itt=2);,legend(itsin(t),itAe-alphat),注1:num2str:string1,num2str,string2,用方括号,注2:,legend 请结合图形观察此命令使用,44/229,图形窗口创建和分割,subplot(m,n,k)命令。,在图形区域中显示多个图形窗口。,m为上下分割数,n为左右分割数,k为第k子图编号。,例:将一个图形分为9个子图,在第k个子图画sin(kx)图象.,程序:,clf,b=2*pi;x=linspace(0,b,50);,for k=1:9,y=sin(k*,x);,subplot(3,3,k),plot(x,y),axis(0,2,*,pi,-1,1),end,45/229,若干有用指令,clf:去除图形窗口已经有内容.,shg:显示图形窗口。,clear、clear x:去除工作空间已经有变量。,figure(n):打开第n个图形窗口,help:,:续行号,46/229,绘制二元函数,基本步骤:,1.生成二维网格点,2.计算函数在网格点上值,3.绘制函数图形,47/229,三维绘图,(,meshgrid指令:,生,成网格点,),观察meshgrid指令效果。,程序:,a=-0.98;b=0.98;c=-1;d=1;n=10;,x=linspace(a,b,n);y=linspace(c,d,n);,X,Y=meshgrid(x,y);,plot(X,Y,+),观察结果,48/229,三维绘图,(计算函数值,定义域淘汰,),程序:,for i=1:n,for j=1:n,if(1-X(i,j)eps1|X(i,j)-Y(i,j)0 算法收敛;=0到达最大步骤而停顿;1,%如有两个输出量(目标函数,梯度)。,g=,%计算g为函数x点解析梯度(可省)。,if nargout 2,%如有三个输出量(目标函数,梯度,海森阵)。,H=,%H为函数在x点海森阵,(可省)。,end,141/229,Matlab优化工具箱介绍,(,zxy6_4,讲解运行),bandemo.m简化和剖析,程序zxy6_4.m是对bandemo.m简化,基本结构为:,(1)绘制香蕉函数等值线图,并将Start Point和Solution标在图形上。,(2)用Switch语句结构,允许程序选取BFGS、DFP、最速下降法和单纯形法等四种优化方法。,142/229,Matlab优化工具箱介绍,多变量约束优化指令fmincon,x,fval,exitflag,output,lambda,grad,hessian=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options,P1,P2,),上面命令等价于,143/229,Matlab优化工具箱介绍,线性规划linprog指令,x,fval,exitflag,output,lambda=linprog(f,A,b,Aeq,beq,lb,ub,x0,options),算法选择:,options=optimset(largescale,off),单纯形方法;,options=optimset(largescale,on),内点法(默认)。,144/229,Matlab优化工具箱介绍,一元函数寻优fminbnd指令,x,fval,exitflag,output,=fminbnd(fun,x1,x2,options,P1,P2,.),此时 x,x,1,x,2,是标量,f(x)为标量函数。,145/229,Matlab优化工具箱介绍,Quadprog:解二次规划,lsqnonlin:解非线性最小二乘,lsqcurvefit:非线性数据拟合,lsqnonneg:非负系数最小二乘法。,lsqlin:约束最小二乘,146/229,应用思索与练习,(计算最正确水槽断面面积),试推导对称2n+1边形面积普通公式,选择一系列 n 值,仿照zxy6_6.m计算它们最大断面面积,观察计算结果规律性。,在工程实践中并不能确保每一次计算都能够成功,不过本问题即使不成功,你是否也能洞察结果?,147/229,对盲人下山问题,引入一个有界约束区域,试用图形表现函数在区域边界上图象。,能够用等值线或用曲顶柱体曲面显示函数在区域改变情况。,不过提议单独用二维绘图指令plot画出它们曲线图,观察函数在边界极值情况。,应用思索与练习,(盲人约束下山),148/229,应用思索与练习,(盲人约束下山),结合高等数学知识,假如可能,用Matlab符号演算指令求出函数在不一样约束下极值点和最值点(比如可用Lagrange函数方法处理这些问题)。,你也能够在盲人下山模拟中对有约束情况进行讨论,这时盲人应该怎样前进呢?,149/229,应用思索与练习,(,啤酒配方问题,),某啤酒厂希望用原料掺水方法生产一个复合标准低成本啤酒。其标准要求为:酒精含量为3.1;发酵前平均比重在1.0341.040之间;颜色在810EBC单位之间;每升混合物中,蛇麻子脂含量在2025mg之间。,请依据相关数据算出最优配方。,150/229,应用思索与练习,(,储能飞轮设计,),下面表示式用于设计储能用飞轮。,准则是储备能量最大。,用约束条件限定了重量、直径、转速和厚度,,试计算最优解。你能确定算出解是最优吗?,151/229,应用思索与练习,(,齿轮减速器设计),抽去各变量物理意义,齿轮减速器最优设计模型以下:,这是一个含有7个变量、23个约束优化问题。试对其进行计算。,你可能会碰到很大困难,你能想方法处理这些困难吗?,152/229,应用思索与练习,(,齿轮减速器设计),153/229,方程求根、不动点和迭代,试验七,154/229,隐函数存在定理可视化,155/229,隐函数存在定理可视化,选择特殊例子,运行zxy7_1.m,画出曲面z=F(x,y)、x-y平面图像和它们交线。,画出曲线z=F(x,0,y);(备注),156/229,隐函数存在定理可视化,157/229,隐函数存在定理可视化,确定隐函数,方程求根,x,fval,exitflag,output=fzero(fun,x0,options),zxy7-2.m,158/229,蛛网图与不动点迭代,称满足方程 f(x)=x点x为函数f不动点,求函数f不动点。能够从一个初始点x0出发,以格式 x,n+1,=f(x,n,)进行迭代;,得到x,0,x,1,x,2,x,n,.,假如该数列是收敛,则,159/229,蛛网图与不动点迭代,160/229,蛛网图与不动点迭代,运行观察程序zxy7_3,,了解蛛网图原理,161/229,简单和复杂:二次函数迭代和混沌,观察 对二次函数 f(x)=rx(1-x)进行迭代,其中0 r 1是一个可变参数。,1)固定若干个不一样值,观察迭代序列极限;,迭代N次,略去前n个迭代值,并将后N n个迭代值画在r-x坐标系中(zxy7_4),2)用蛛网图观察三种不一样类型迭代。,(,zxy7_5),3)加密r取值,得到加密Feigenbaum图。(zxy7_4改变参数),162/229,线性代数试验,试验八,163/229,向量组线性关系,164/229,向量组线性关系,(产生相关向量,,运行zxy8_1,),产生向量:产生m个n维向量,且各向量分量均在a,b之间。,clear n=3;m=2;a=-10;b=10;,rand(seed,32),A=unifrnd(a,b,n,m),组合向量:产生 m=2个组合系数,将组合得到新向量并入矩阵 A中:,x=unifrnd(-1,1,1,m),A(:,3)=x(1)*A(:,1)+x(2)*A(:,2),165/229,向量组线性关系,(产生相关向量,,运行zxy8_1),运行zxy8_1,A=,-1.7383 -9.1707 0.0256 8.7064 6.6219 -9.0842,4.7096 7.5495 -0.0246 -8.9245 -3.5331 8.3272,-5.7470 3.9105 -0.0038 -0.2352 -6.6197 2.1934,166/229,向量组线性关系,(产生相关性判别),167/229,Gauss消元法,(运行rref(A),rrefmovie(A)),rref(A)将矩阵A做行初等变换阶梯化。,B=rref(A),B=,1.0000 0 -0.0011 -0.5360 0.5851 0.2590,0 1.0000 -0.0026 -0.8478 -0.8330 0.9415,0 0 0 0 0 0,rrefmovie(A):观察到行初等变换过程,168/229,Gauss消元法,(同解方程),Rref(A),169/229,Gauss消元法,(解,),向量形式,170/229,Gauss消元法,(基础解系),Ax=0 基础解系可由下式计算:,X=-B(1:r,r+1:m+s);eye(l),其中r=rank(A),l=m+s-r为基础解系个数。,r=2;m=2;s=4;,B=-B(1:2,r+1:m+s);eye(m+s-r),问题:怎样用,Matlab,解普通非线性齐次方程组,如A(:,1:4)X=A(:,7)?,171/229,应用练习与思索(,平面四杆机构设计),172/229,应用练习与思索(,平面四杆机构设计),某操纵装置采取四杆铰链机构。已知两连架杆(L,1,L,3,)输入角和输出角满足下表数据所表示对应关系,机架长度L,4,=50mm,试确定其余三杆长度。,173/229,应用练习与思索(,平面四杆机构设计),174/229,应用练习与思索(,平面四杆机构设计),确定四杆长度,并用,Matlab,绘图指令用图形表示你设计结果。你需要设计一个表现方案,使人能够很明白看出你设计结果是正确。,假如只利用表前两组对应角度值,设计方案还是唯一吗?计算一下结果。一样给出直观表示。体会到自由变量含义?,假如表中值为4组对应角度值,你就碰到超定方程了。它没有准确解,只有近似解。你愿意用,Matlab,去解它吗?试一试。,175/229,应用练习与思索,(用Matlab做线性代数题),176/229,应用练习与思索,(用Matlab做线性代数题),syms a,a1=1;4;0;2;a2=2;7;1;3;a3=0;1;-1;1;a4=3;10;a;4;,A=a1,a2,a3,a4,for i=2:4%行初等变换,A(i,:)=A(i,:)-A(1,:)*A(i,1);,end,A(2,:)=A(2,:)/A(2,2);,for i=3:4,A(i,:)=A(i,:)-A(2,:)*A(i,2);,end,177/229,矩阵相同化简,178/229,矩阵相同化简,179/229,矩阵相同化简,选择方阵A,如 二阶方阵,A=1/5,99/100;1,0;,选择一个初始点(二维列向量),按下面公式进行迭代:,x,k+1,=Ax,k,观察这些迭代点位置和趋向,180/229,矩阵相同化简,(程序zxy8_2.m迭代部分),Clear,clf,n=40;a=-20*100;b=-a;c=a;d=b;p=0.1;,A=1/5,99/100;1,0;axis(a b c d),grid,hold on,button=1,while button=1,xi,yi,button=ginput(1);plot(xi,yi,ko),hold on,X0=xi;yi;X=X0;,for i=1:n,X=A*X,X0;h=plot(X(1,1),X(2,1),k.,X(1,1:2),X(2,1:2),k:);set(h,MarkerSize,6),grid,hold on,quiver(X(1,2),1,X(2,2),1,X(1,1)-X(1,2),0,X(2,1)-X(2,2),0,p),end,end,181/229,矩阵相同化简,(程序zxy8_2.m画直线),p=60;,x=linspace(a,b,30);,pc,lamda=eig(A),pc=-pc;,z1=pc(2,1)/pc(1,1)*x;,z2=pc(2,2)/pc(1,2)*x;,plot(x,z1,linewidth,2),h=quiver(500,501,-1000,-1001,pc(1,1),0,pc(2,1),0,p)set(h,linewidth,2,color,red),182/229,矩阵相同化简,(高维线性离散动力系统),动力系统理论基本目标是了解迭代过程最终或渐进性态,,假如迭代过程是一时间为自变量微分方程,则该理论试图预言微分方程解在遥远未来或遥远过去最终性态。,假如过程是像函数迭代离散过程,则这种理论希望了解伴随n变大,迭代点最终性态。,就是说,动力系统提出了一个听起来非数学问题:这些点跑到哪里去?当它们抵达那里又在干些什么?,183/229,矩阵相同化简,(高维线性离散动力系统),记线性动力系统L(x),它是,L(x)=Lx,其中 L 是适当维数方阵,,我们只考虑23维情形。,184/229,矩阵相同化简,(高维线性离散动力系统),185/229,矩阵相同化简,(高维线性离散动力系统),考查前面在2 维情况例子中标准形,A=2,0;,0,1/2,它含有混合特征值,运行zxy8_3.m 进行观察迭代情形。,观察BPAP-1迭代情况,比较异同。,186/229,主成份分析和线性变换,气象分析预报中需要分析很多变量指标。,何抓住主要特点,用较少指标代替原来较多指标,又能综合反应原来较多指标信息,就是实际工作者所关心问题。(降维),主成份分析方法为此提供了一个有效伎俩。,187/229,主成份分析和线性变换,设有两个变量指标:,X,1,:代表某地10月副高强度指数;,X,2,:代表该地10月副高面积指数。,188/229,主成份分析和线性变换,运行zxy8_4.m,画出散点图。,怎样找到适当坐标轴,使信息损失尽可能小?,189/229,主成份分析和线性变换,190/229,主成份分析和线性变换,求协方差矩阵,求正交矩阵P,满足,运行观察,191/229,主成份分析和线性变换,(运行zxy8_4),192/229,线性变换,运行zxy8_5,193/229,数学试验与Matlab,晓 阳,华中科技大学数学系,zxyhust,194/229,Galton钉板和二项分布,分布列意义,195/229,Galton钉板模拟,英国生物统计学家Galton设计了Galton板,右边是一个5层Galton,钉,板,196/229,Galton钉板模拟(,原理),在一板上钉有n排钉子,自顶端扔进一小球任其自由下落,在下落过程中小球碰到钉子,左右落下机会相等,最终小球落入底板中某一个格子,图中用0 1 2 3 4 5表示这6个格子,197/229,Galton钉板模拟(,博彩问题,),在每一格子中放上适当价值奖品,如依次为 10 1 0.2 0.2 1 8 (元),扔一次小球你要付1元给庄主,假如小球落入某个格子,你将取得对应价值奖品,你合算吗?庄主会盈利吗?,198/229,Galton钉板模拟(,扔1万个小球,),小球落入哪一个格子是不确定,所以要计算落入每一个格子可能性,试想向Galton板中扔10000个小球,这些小球将堆积起来,小球堆积形状告诉了我们什么呢?,199/229,Galton钉板模拟(,程序zxy9_1.m,),(1)确定钉子位置:将钉子横、纵坐标存放在两个矩阵X和Y之中。,(2)选取0p1,将0,1区间分成两段:0,p)和 p,1。,(3)产生随机数r=rand(1,1),假如rp,让小球向左落下。(见备注),(4)将这一过程重复n次,并用直线连接小球落下时所经过点,这么就模拟了小球从顶端随机地落入某一格子过程。,200/229,Galton钉板模拟(,程序zxy9_1.m,),(5)模拟小球堆积形状。,输入扔球次数 m(比如 m=100),计算落在第 i 个格子小球数在总球数m中所占百分比f(i),当模拟结束时,就得到了频率:,f(0),f(1),f(2),f(3),f(4),画出它们图形。就是小球堆积形状,201/229,Galton钉板模拟(,程序zxy9_1.m,),(6)动画指令结构,moviein(n):创建动画矩阵;,制作动画矩阵数据;,getframe:拷贝动画矩阵;,movie(Mat,m):播放动画矩阵 m 次,,(zxy7_6演示、讲解,备注),202/229,Galton钉板模拟(,程序zxy9_1.m,),运行zxy9_1.m,203/229,一个模拟结果,扔100个小球,向右概率p=0.5,要改变参数观察一下不一样模拟结果吗?这很轻易.自己动手试试吧,204/229,随机变量及其分布,当你扔小球时,你和庄家关心什么?,?,对,是小球落入格子,编号数 X,(有些绕口,但很主要),在投球前,你不能说你小球会落在第0个格子。,但你能够说小球将落在第X个格子,X是一个随机数,是概率论中主要讨论对象-随机变量!,205/229,随机变量及其分布,实际上,更应该关心是,X,分布列,分布列是小球落在各格子里概率:,P(X=0),P(X=1),P(X=2),P(X=3),P(X=4),P(X=5),想一想,它是不是表现了大量投球后小球堆积极限形状呢,备注(比较频率和概率),206/229,Bernoulli试验和二项分布,不要把Galton钉板简单地看成消遣,它是一个有用概率模型,当你学习了概率论,你将知道Bernoulli试验模型,n重Bernoulli试验成功次数X 服从二项分布B(n,p).,上面模拟对应于n=5,p=0.5情形,207/229,二项分布列,随机变量,XB(n,p),,则它分布列为,208/229,统计工具箱,用指令f=binopdf(x,n,p)可计算二项分布分布列,用F=binocdf(x,n,p)可计算二项分布分布函数,用R=binornd(n,p,s,m)模拟m个二项随机数,209/229,观察二项分布列,运行binopdfcompare.m,固定n,改变p值,观察二项分布列形状,看一看:改变向右概率,小球堆积形状是怎样?,增加钉板层数n,作深入观察。,210/229,模拟二项分布随机变量,用R=binornd(5,0.5,1,1)模拟了一次投球结果。屡次运行它,看看你运气。,用R=binornd(5,0.5,1,m)成批模拟了m次投球结果,看看它堆积形状。(运行simulatingGalton.m),211/229,数学期望和平均收益,奖品设置,格子编号 0 1 2 3 4 5,奖品价值 5 10.2 0.2 1 5,观察:模拟5000次抽奖过程,抽奖一次支付1元,按上表取得回报。计算总收益和一次抽奖所得平均收益,计算理论均值,备注,212/229,数学期望和平均收益,格子编号X 0 1 2 3 4 5,分布列p p,0,p,1,p,2,p,3,p,4,p,5,价值函数f f,0,f,1,f,2,f,3,f,4,f,5,频率,m,0,/m m,1,/m m,2,/m m,3,/m m,4,/m m,5,/m,213/229,应用、思索和练习,(电力供给问题),某车间有200台车床相互独立工作,,因为经常需要检修、测量、调换刀具等种种原因需要停车,这使每台车床开工率只有60。而每台车床在开动时需耗电1kW,,显然向该车间供电200kW能够确保有足够电力供这些车床使用,,不过在电力比较担心情况下,给这个车间供给电力太多将造成浪费,太少又影响生产。,怎样处理这一矛盾?(模拟法?),214/229,应用、思索和练习,(,废品问题,),一工厂生产某种大量耗用零件,经过统计方法预计出废品率为p=0.015。工厂将100个零件装成一盒,销售给用户。不过很快接到用户反馈意见:声称100盒产品大约只有22盒全是正品,用户希望将这个百分比提升到80盒左右。,管理人员希望采取某种办法满足用户要求。为此他们进行了技术分析,希望降低废品率,不过这么做成本太高而不现实。,一名管理人员提出了一个简单想法,他认为能够在每盒产品100个零件之外奉送额外若干零件,这么希望基本确保用户得到100个正品,从而满足他们提出要求。这一方法可行吗?请用概率论知识对此进行分析,。,215/229,应用、思索和练习,(,奖品设计,),全部抽奖模型都是要盈利,没有些人想花费精力却一无所获,甚至赔本。,对Galton钉板抽奖模型,怎样在各个格子中摆放适当价值奖品获取利润?试提出你设计方案。,216/229,热轧机调整(正态分布),轧制钢材要经过两道工序,第一道是粗轧(热轧),第二道是精扎(冷轧)。,热轧机能够调整它额定长度值,控制轧出钢材平均长度。,成品材含有一个要求长度l,假如热轧出钢材长于l,精轧时就把多出长度切掉。,假如粗轧时轧出钢材长度比l短,则整根钢材报废。,精轧设备精度很高,轧出成品能够认为是完全符合要求长度要求。,问题是怎样调整热轧机额定值,使得钢材浪费最小。,217/229,热轧机调整(正态模型),218/229,热轧机调整,(正态模型),随机变量X N(,2,)描述了热轧机轧出钢材长度。,Y=normpdf(X,MU,SIGMA),(运行normpdfobs.m),219/229,热轧机调整,(模拟热轧机工作),运行观察程序zxy9_2.m,用正态分布发生器normrnd 模拟热轧结果。,观察哪些钢材需要切割,切割多少?哪些则将整根报废。,观察正态参数对轧钢结果影响作为对比观察,,220/229,热轧机调整,(优化zxy9_3.m,find),目标函数W()为得到一根成品材所浪费平均钢材长度,设成品材长度为l=2,热轧机精度为sigma=0.2.,仿真热轧机实际操作过程:对给定值,模拟热轧机轧制一批钢材,计算每得一根成品材所浪费平均钢材长度,得到预计值;,经过改变值,绘制改变曲线,确定使浪费到达最小额定长度,0,,这就是热轧机应该设置最正确额定长度预计值。,221/229,热轧机调整,(优化),222/229,应用练习与思索,(热轧机模型),依据上面结果,你得到什么印象。一根成品材长为2 米,浪费为0.44783米,这么结果能够接收吗?你有方法降低浪费量吗?,图中,曲线不是光滑,这是正常吗?不改变程序中参数,屡次运行程序,结果会保持不变吗?怎样解释你观察到情况?,你能够加密mu分点进行计算
展开阅读全文