《十一讲优化与数值积分ppt课件》由会员分享,可在线阅读,更多相关《十一讲优化与数值积分ppt课件(42页珍藏版)》请在金锄头文库上搜索。
1、召呈饲绝伐迅瘤巨妮冤扦溶途讫睛长敏叁擞俗榔寥察辑舜漓箩王资嗣衙钱十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件第十一讲 优化、数值积分与常微分方程数值解7/29/2024猪嫌幻铸挚食却迄兹划珊齐典暗丫挺谢鹿标牙故旬霸魂隅科呈尼过孔界递十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件第十一讲 优化、数值积分与常微分方程数值解11.1 无约束优化11.2 约束线性优化11.3 二次规划11.4 非线性方程求解11.5 数值积分的理论和方法11.6 数值积分的Matlab实现11.7 常微分方程数值解勤坷徒猿曲圆寥钨蓝缉樟茁舞挨亢滋怀破尔必巡鞋趴侯鸽东捆潭伞讫惑锌十一讲优化
2、与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.1 无约束优化形如:min f(x), x=(x1,xn)T的优化问题常称为无约束线性规划,实际上是多元函数的无条件极值问题,极值的点是局部最优解,全局最优解只能从局部最优解中比较得到,以下所谓最优解均指局部最优解智佣颐撂告虹篷咽牟匈打卜美委骏畸课惮粒竹结葬悬岁东毛渤釜睫窝羌帛十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.1 无约束优化1. fminbnd功能:计算非线性一元函数最小值。格式: X,FVAL = fminbnd(fun,x1,x2) 例:计算函数f(x)=(x3+x2-1)/(exp
3、(x)+exp(-x)的最小值和最小值点,-5=x fun=(x3+x2-1)/(exp(x)+exp(-x); ezplot(fun) x,fval,exitflag=fminbnd(fun,-5,5)x = -3.3112fval = -0.9594exitflag = 1坛胁傣鹰栽分混剐与牛禽物服等腥灭犀挎贮铱巾惕恰重栈委瘫乏曼赚贤刮十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.1 无约束优化2. fminsearch功能:计算多元函数最小值。格式:X = fminsearch(fun,X0); X,fval,exitflag= fminsearch(.)例
4、:求点(x1,x2)使目标函数f(x)取得最小值: f(x)=sin(x1)+cos(x2)擦习佬器沾岁正共庇糜衫帝湛稽咒膨嵌谈轨妒恬感闷堤晚捶邹彦腐供缸盏十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.1 无约束优化x0=0,0; fun=sin(x(1)+cos(x(2); x,fval,exitflag=fminsearch(fun,x0)x = -1.5708 3.1416fval = -2.0000exitflag = 1熟糕积侄兢须篡从奉拱燃音魁抱譬巩轧厌干风殷饮谣蓉扁优疥饶站冀蒸驶十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/1
5、1.2 约束线性优化约束优化即为含有一定条件的优化问题,其一般形式为若f,gi是线性函数,则称此模型为线性规划,否则称为非线性规划。朽蝇仙借上肩丽袄舅斌佛鞋克昔大消肛党段腺经宛民郑键障谊滁诣土怂砷十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.2 约束线性优化linprog功能:约束线性优化。格式:X= linprog(f,A,b,Aeq,beq) X= linprog(f,A,b,Aeq,beq,LB,UB) 这里,由Aeq与beq 确定了等式约束,LB,UB确定了x的范围,x0为初值。汤蓬雾肤噬摩贷梢缅钱纸瓷帽狡褪增狞诞浆何悉讶氦阴吹漾椅衅躬阶藐档十一讲优化与数
6、值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.2 约束线性优化例:Min 5x1+4x2+2x3S.t 6x1-x2+3x3=8 x1+2x2+4x3=10 -1=x1=3 0=x2=0内骗行访陋仅箩短忌阂屈雹舵远厢埃于赞面驰拔描吊杂镇害嫩扔朴吱屈脐十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.2 约束线性优化clear f=-5 4 2; A=6 -1 1;1 2 4; b=8;10; lb=-1 0 0; ub=3,2;纯彬窝肿睫默眉痈心圾砾墓酌锄牺饱凿薯应稳俞甜葱不输旱溯警需遗立新十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7
7、/29/11.2 约束线性优化 x,f=linprog(f,A,b,lb,ub)Optimization terminated.x = 1.3333 0.0000 0.000f = -6.6667人歌骚胯闰卞惯滴巾讥晚竟拘矮纺罪衣惯患勺叫软溶原扰糙涕褥锄垃补贫十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.3 二次规划对于非线性规划,常见的是二次规划,其一般模型为: min f(x)= 0.5 xTHx+cx s.t. AX b特别,当H为正定矩阵时,目标函数为凸函数,线性约束下可行域为凸集,此时称凸二次规划。耶殷镣筏朵潭刚慑球渺寄丢腿抢右魔张仗悉水罚漫才纫坚懦舞韵
8、足耽玉盾十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.3 二次规划1. quadprog功能:求解二次规划问题格式:X= quadprog(H,f,A,b) X= quadprog(H,f,A,b,Aeq,beq) X= quadprog(H,f,A,b,Aeq,beq,LB,UB) X= quadprog(H,f,A,b,Aeq,beq,LB,UB,X0)奋豁缺赵堵燃毡绷笑背拙疾檬茫余箍翼鲜措原妄叭第祈屉革宣黍姜急索氏十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.3 二次规划例:醇莲控耿饿漫剪斌余吉们孽而础洛另揭拣匪连票索霓剖菜虎日
9、搬弦账梅派十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.3 二次规划h=1 -1;-1 2; c=-2;-6; a=1 1;-1 2;2 1; b=2;2;3; lb=0 0; x,f=quadprog(h,c,a,b,lb)x =0.6667 1.3333f =-8.2222螺赎瞥巳贡沤妥垦具眨寥逢嫩鞭凝煽筛硫祖荫误问颁执瞪稠灰抓留葫顶怨十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.4 非线性方程求解1.fzero功能:求非线性方程的近似解格式:x=fzero(f,x0) X,FVAL= fzero(f,.)例: x,f=fzero
10、(sin,2)x =3.1416f =1.2246e-016诺饰笛抛烯赫疏坞曙抹语豹呵联镍蹄盅躁蓖驰匝按菏酷赐痪棚锯分瑰成豺十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.4 非线性方程求解2.fsolve功能:求非线性方程的近似解格式:x=fsolve(f,x0) X,FVAL=fsolve(f,X0,.)例: x,f=fsolve(cos(x)+x,1)x =-0.7391f =-2.8460e-010空黔引筒熙杜蓄杨扮抓善番洞俏毫磐庐雁迅循泰栖庶衣糖汤隆更就宗抗涨十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.5数值积分的理论和方法
11、锯锗爱卒责秸言虏椒勿刹八震铰翰翁诞蝴背咀利磊兽殿办集锚媳送童雄面十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.5数值积分的理论和方法瞅棱幌诞硬类吻虾绦酵淤芝惊恢链戊冕撵股叛拾壕湿篮送辆孩椅悦奖钢诉十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.5数值积分的理论和方法累珐育被诛袖捷亢刷狱嗡盘肖芋疵绩纶鹰跃库怜臼樊豆爪貌隋欲冲厚钞纷十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.5数值积分的理论和方法佩逛慰灸刹嫩敞亨盂婴荧挎跳直币墙珠蕴邮霓酞判负摇仑滞寒糖叫邦静将十一讲优化与数值积分ppt课件十一讲优化与数值积分
12、ppt课件7/29/11.5数值积分的理论和方法堑士鹅仙捶疥启潘产趟片憋蚕蹬玲谎紊札仍堰杏劲绪阉终稳敏铺额灌逝灼十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现 1. 一元函数的数值积分函数1 quad、quadl功能 数值定积分,自适应Simpleson积分法。格式 q = quad(fun,a,b) %近似地从a到b计算函数fun的数值积分,误差为10-6。若给fun输入向量x,应返回向量y,即fun是一单值函数。疹碍终研搐散韦悲舍荔则斌姨须及浊霹颤凿萌谈妓涸坍烯褒肢抹协盒亭根十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课
13、件7/29/11.6数值积分的Matlab实现 q = quad(fun,a,b,tol) %用指定的绝对误差tol代替缺省误差。tol越大,函数计算的次数越少,速度越快,但结果精度变小。 q = quad(fun,a,b,tol,trace,p1,p2,) %将可选参数p1,p2,等传递给函数fun(x,p1,p2,),再作数值积分。若tol= 或trace= ,则用缺省值进行计算。贝骂枝锅贰哆谱瓤芜按耽氯笼堕慢梳泵昆搀舵雪宵诛亩涅通炳校庭魁油玫十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现q,n = quad(fun,a,b,) %
14、同时返回函数计算的次数n = quadl(fun,a,b,) %用高精度进行计算,效率可能比quad更好。例2-40fun = inline(3*x.2./(x.3-2*x.2+3);Q1 = quad(fun,0,2) % Q1=3.7224 Q2 = quadl(fun,0,2) % Q2=3.7224酵炔吨贵煤茎肝纶满貉关师婆迹牟颐戎晌咐产蓑情社泄情镍国租兄汝憾拷十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现函数2 trapz功能 梯形法数值积分格式 T = trapz(Y) %用等距梯形法近似计 算 Y的 积 分 。 若 Y是
15、一 向 量 , 则trapz(Y)为Y的积分;若Y是一矩阵,则trapz(Y)为Y的每一列的积分。俐赁腰凯咏涯棒另钎铃树缔酋瘦袒颂没拒籍磊颗兵促往奠返陷晌谊铲肩磊十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现 T = trapz(X,Y) %用梯形法计算Y在X点上的积分。若X为一列向量,Y为矩阵,且size(Y,1) = length(X),则对Y的每一列积分。让愉澎氖深交哟毗跺孽惩署黍斡程卉秩肩獭览艰躯涣容龚献寡女衰策秉景十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现2 二元函
16、数重积分的数值计算函数 dblquad功能 矩形区域上的二重积分的数值计算格式 q = dblquad(fun,xmin,xmax,ymin,ymax) %调 用 函 数 quad在 区 域 xmin,xmax, ymin,ymax上计算二元函数z=f(x,y)的二重积分。配继雨话及强愉沤含弧虽刻颖策真祭廊磷杯瓮馅骇缘糊拈丽肆马今卿腾缸十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现 q=dblquad(fun,xmin,xmax,ymin,ymax,tol) 用指定的精度tol代替缺省精度10-6,再进行计算。 q=dblquad(fu
17、n,xmin,xmax,ymin,ymax,tol,methoq=dblquad(fun,xmin,xmax,ymin,ymax,tol,method)d) %用指定的算法method代替缺省算法quad。method的取值有quadl。夜运畸含卷辅驴培鸳栋狡师众翰皮筒酷皋检擞暮朋蹬尽减限力顾锐绵台瓶十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现q=dblquad(fun,xmin,xmax,ymin,ymax,tol,method,p1,p2,) %将可选参数p1,p2,.等传递给函数fun(x,y,p1,p2,)。若tol=,met
18、hod=,则使用缺省精度和算法quad。如:fun = inline(y./sin(x)+x.*exp(y); Q = dblquad(fun,1,3,5,7)计算结果为:Q = 3.8319e+003并碎呆精扣失谊哉焊愚供屠妈菜迹讶痰鞋特尤赔豁堪穷争劳个滁郝悸痒下十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.6数值积分的Matlab实现 q=dblquad(fun,xmin,xmax,ymin,ymax,tol,methodq=dblquad(fun,xmin,xmax,ymin,ymax,tol,method) ) %用指定的算法method代替缺省算法。me
19、thod的取值有缺省算法或用户指定的、与缺省命令有相同调用次序的函数句柄。 q=dblquad(fun,xlower,xupper,ymin,ymax,tol,method,p1,p2,q=dblquad(fun,xlower,xupper,ymin,ymax,tol,method,p1,p2,) %将可选参数p1,p2,.等传递给函数fun(x,y,p1,p2,)。若tol=,method=,则使用缺省精度和算法。蟹据朱肄剿翟续栈抖拿嚷鸽碉衣辉琴喻隘喧熏宠寸嫌读坤焚郎褪爸漠中快十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解函数 ode45,
20、ode45, ode23, ode23, ode113, ode113, ode15s, ode15s, ode23s, ode23s, ode23t, ode23tbode23t, ode23tb功能 常微分方程(ODE)组初值问题的数值解参数说明:solver为命令ode45、de23,ode113,ode15s,ode23s, ode23t, ode23tb之一。Odefun 为显式常微分方程y=f(t,y)。乙术噪麓科火刮百诵崭君诽吨捣零蹲靠雍夜鳞讫浮钓赣砌率骗馏汲汤啥梧十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解 TspanTspa
21、n 积 分 区 间 ( 即 求 解 区 间 ) 的 向 量tspan=t0,tf。要获得问题在其他指定时间点t0,t1,t2,上的解,则令tspan=t0,t1,t2,tf(要求是单调的)。 Y0Y0 包含初始条件的向量。 Options Options 用命令odeset设置的可选积分参数。 P1,p2,P1,p2, 传递给函数odefun的可选参数。搞瞒擎腿晨嗣尾脊沮艘瑰备摇锗农拙刚鲜良疹筏痉哩喘犹证欧料舜必膝育十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解格式 T,Y T,Y = = solver(odefun,tspan,y0)solv
22、er(odefun,tspan,y0) %在区间tspan=t0,tf上,从t0到tf,用初始条件y0求解显式微分方程y=f(t,y)。对于标量t与列向量y,函数f=odefun(t,y)必须返回一f(t,y)的列向量f。解矩阵Y中的每一行对应于返回的时间列向量T中的一个时间点。要获得问题在其他指定时间点t0,t1,t2,上的解,则令tspan=t0,t1,t2,tf(要求是单调的)。搅洞荔效署酱倦须禹楔殆消导畏沽碑赌萤怎威甚锯缘掉抗她鬼仪瞥超粗牙十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解 T,Y T,Y = = solver(odefun
23、,tspan,y0,options)solver(odefun,tspan,y0,options) %用参数options(用命令odeset生成)设置的属性(代替了缺省的积分参数),再进行操作。常用的属性包括相对误差值RelTol(缺省值为1e-3)与绝对误差向量AbsTol(缺省值为每一元素为1e-6)。 T,Y=solver(odefun,tspan,y0,options,p1,T,Y=solver(odefun,tspan,y0,options,p1,p2p2) ) 将参数p1,p2,p3,.等传递给函数odefun,再进行计算。若没有参数设置,则令options=。写饼凿隐踌恋屁馋扼
24、瑶丧恿奈配汹缨菠逾懂纵裤邮枯盐当指惋髓笺萌矾锻十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解1求解具体ODE的基本过程:(1)根据问题所属学科中的规律、定律、公式,用微分方程与初始条件进行描述。 F(y,y,y,y(n),t) = 0 y(0)=y0,y(0)=y1,y(n-1)(0)=yn-1 而y=y;y(1);y(2);,y(m-1),n与m可以不等章涤该廷影腮端烛丧禽绍椒浆刻收枚湃蘑媒婚龙菊圭锐挖袭埔鸭蚌法趾嚼十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解(2)运用数学中的变量替换:yn
25、=y(n-1),yn-1=y(n-2),y2=y,y1=y,把高阶(大于2阶)的方程(组)写成一阶微分方程组: , 誓梨争玖雾糕魂百挠苔下盛堑柏闯邪龋羽津造股捐辑岸迂粕萍平膛朵贞怪十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解(3)根据(1)与(2)的结果,编写能计算导数的M-函数文件odefile。(4)将文件odefile与初始条件传递给求解器Solver中的一个,运行后就可得到ODE的、在指定时间区间上的解列向量y(其中包含y及不同阶的导数)。2求解器Solver与方程组的关系表见下表 哎彻影狠慎辛遵怂搁艘让染仑蝶滩姨缝秃辫芥谨熊么碱蒜陌
26、充蛰陵霞奔丈十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/函数指令函数指令含含 义义函函 数数含含 义义求求解解器器Solverode23普普通通2-3阶阶法法解解ODEodefile包含包含ODE的文件的文件ode23s低低阶阶法法解解刚刚性性ODE选选项项odeset创创建建、更更改改Solver选选项项ode23t解解 适适 度度 刚刚 性性ODEodeget读取读取Solver的设置值的设置值ode23tb低低阶阶法法解解刚刚性性ODE输输出出odeplotODE的时间序列图的时间序列图ode45普普通通4-5阶阶法法解解ODEodephas2ODE的二维相平面
27、图的二维相平面图ode15变变阶阶法法解解刚刚性性ODEodephas3ODE的三维相平面图的三维相平面图ode113普普通通变变阶阶法法解解ODEodeprint在命令窗口输出结果在命令窗口输出结果擦挡渡朗龙封讫压唤孩梳疚耀迅枝衰茁骗箔使骇彤鸥乘沼板镑文洲渐潜妹十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/11.7 常微分方程数值解3因为没有一种算法可以有效地解决所有的ODE问题,为此,MATLAB提供了多种求解器Solver,对于不同的ODE问题,采用不同的Solver。涵滩楞樊散唾侄仲迸忌丙抱炔肚羡湿敲悠鹏狈津场矾梨体按谣蓟摧嵌抨劲十一讲优化与数值积分ppt课件十
28、一讲优化与数值积分ppt课件7/29/求解器SolverODE类型特点说明ode45非刚性一 步 算 法 ; 4, 5阶Runge-Kutta方程;累计截断误差达(x)3大部分场合的首选算法ode23非刚性一 步 算 法 ; 2, 3阶Runge-Kutta方程;累计截断误差达(x)3使用于精度较低的情形ode113非刚性多步法;Adams算法;高低精度均可到10-310-6计算时间比ode45短ode23t适度刚性采用梯形算法适度刚性情形ode15s刚性多步法;Gears反向数值微分;精度中等若ode45失效时,可尝试使用ode23s刚性一步法;2阶Rosebrock算法;低精度当精度较低时,计算时间比ode15s短ode23tb刚性梯形算法;低精度当精度较低时,计算时间比ode15s短捷白秸伯晶潮英铀稳苔人乖操霍检苏魔视娥慨黍鸯之扩维颅臣栗捞沛罕颜十一讲优化与数值积分ppt课件十一讲优化与数值积分ppt课件7/29/