清华数学实验第六章方程求根与最优化实验.ppt
方程求根方法 函数求极值方法 线性规划问题及求解 思考题与练习题,方程求根与最优化实验,例6.1求解 3 次方程 x3+1=0。,求多项式根(零点)方法:R=roots(P)P是多项式 P(x)=a1xn+a2 xn-1+an x+an+1系数a1,a2,an+1,R为多项式全部零点。,求数值解P=1,0,0,1;R=roots(P)R=-1.0000 0.5000+0.8660i 0.5000-0.8660i,求符号解 sym x;solve(x3+1=0)ans=-1 1/2-1/2*i*3(1/2)1/2+1/2*i*3(1/2),多项式求根方法p=1-30 0 2552;roots(p),ans=26.3146 11.8615-8.1761,例6.3 球体的吃水深度.计算半径 r=10 cm的球体,密度=0.638.浸入水深度 x=?,解:重量,体积,x3 30 x2+2552=0,求函数零点方法fun=inline(x.3-30*x.2+2552);x=fzero(fun,10),x=11.8615,例6.6 还贷问题。从银行贷款100万元建生产流水线,一年后建成投产。投产后流水线每年创造利润30万元,银行的年利率 p=10%,计算多少年后公司可以盈利?,function pay=debt(p,S)if nargin=0,p=0.1;S=100;endpay=S;k=1;S=S*(1+p);pay=pay,S;while S0 k=k+1;S=S*(1+p);S=S-30;pay=pay,S;end,调用 debtans=100.0000 110.0000 91.0000 70.1000 47.1100 21.8210-5.9969,第六年盈利 5.9969 万,求一元函数最小值方法Xmin=fminbnd(fun,x1,x2)fun是目标函数,x1,x2是最小值点搜索区间,Xmin是目标函数的最小值点。,例6.7求一元函数f(x)=0.5 x exp(x2)在区间0,2内的最小值,并绘出函数图形标出最小值点。,fun=inline(0.5-x.*exp(-x.2);fplot(fun,0,2),hold onx0,y0=fminbnd(fun,0,2)plot(x0,y0,o),x0=0.7071y0=0.0711,例6.9 花园靠楼房处有一温室,温室伸入花园 2 米,高3米.温室上方是楼房窗台,要将梯子从花园地上放靠在楼房墙上不损坏温室,用 7 米长的梯子是否可行?,解:设梯子长度为L,梯子与地面的 夹角为,数学模型:,L=inline(2./cos(alpha)+3./sin(alpha)x,Lmin=fminbnd(L,0.8,0.9),x=0.8528Lmin=7.0235,梯子长度基本可行。,最优化方法从可行方案中寻求最优方案,在一些限制条件下,针对系统的某一指标寻找最优方案。可表示为求某一函数在约束条件下的极大值(或极小值)问题。,线性规划的数学模型,决策变量:X=x1,x2,xn T目标函数系数:C=c1,c2,cnT不等式约束矩阵和向量:A,b,例6.13 建筑公司承建办公楼和住宅楼。建办公楼将获利润500元/平方米,建住宅楼获利润600元/平方米。总建筑面积不少于5000m2,办公楼的面积不能大于5000 m2,住宅楼不能大于3000m2。,假定公司当年建办公楼x1平方米,建住宅楼x2平方米。以所得利润最大为目标,得目标函数 z=500 x1+600 x2根据招标单位的要求,约束条件 x1+x2 5000 x1 5000 x2 3000 x1 0,x2 0,求解线性规划命令使用格式(1)x=linprog(C,A,b)x,fval=linprog(C,A,b)(2)x=linprog(c,A,b,Aeq,beq)x,fval=linprog(c,A,b,Aeq,beq)(3)x=linprog(c,A,b,Aeq,beq,e0,e1),MATLAB中线性规划问题标准形式,C目标函数系数向量A约束条件系数矩阵b约束条件常数向量,解线性规划问题标准形式,min-(500 x1+600 x2)s.t.-x1-x2-5000 x1 5000 x23000 x10,x20,C=50 60,C=500,600;A=-1,-1;1,0;0,1;b=-5000;5000;3000;x=linprog(-C,A,b)z=C*x,x=5000 3000z=4300000,程序:,结果:,一组决策变量(x1,x2,xn)表示某套方案;一组线性不等式或线性等式为约束条件;以决策变量的线性函数作为目标函数.,明确问题的目标,假设一组决策变量,考虑目标函数,考虑约束条件,建立线性规划问题数学模型:,例6.15某工厂制造A、B两种产品,A每吨用煤9吨,电4千瓦,3个工作日;制造B每吨用煤5吨,电5千瓦,10个工作日。制造A和B每吨分别获利7000元和12000元,该厂可利用资源有煤360吨,电力200千瓦,工作日300个。问A、B各生产多少吨获利最大。,数据列表分析,数学模型:设生产A产品数量x1,B产品数量x2。,约束条件9x1+5x23604x1+5x22003x1+10 x2300 x10,x20,记 C=7,12,c=7 12;A=9 5;4 5;3 10;b=360;200;300;x=linprog(-c,A,b)z=c*x,x=20 24z=428.00,计划A产品生产20吨,B产品生产24吨.利润:428千元,c=-7,-12;A=9 5;4 5;3 10;b=360;200;300;Aeq=;beq=;e0=0,0;e1=inf,inf;x,fval=linprog(c,A,b,Aeq,beq,e0,e1),Optimization terminated successfully.x=20.0000 24.0000fval=-428,完整的线性规划高级程序:,结果:,思考题与练习题,对“梯子问题”中的数学模型,用MATLAB命令fminbnd()求一元函数极大值问题的过程有哪些操作步?线性规划问题中的约束条件分为几类?MATLAB求线性规划命令linpro()需要哪些输入参数,其中输入参数的前后次序是如何规定的,用均值不等式做分析,其结论是否与实验结论一致?,5 某厂生产两种产品,产一吨甲产品用A资源 3吨、B资源 4m3;产一吨乙产品用A资源 2吨,B资源 6m3,C资源 7个单位.一吨甲产品和乙产品分别价值7万元和5万元,三种资源分别限制为90吨、200m3和210个单位.建立描述生产两种产品使总价值最高的线性规划数学模型?,