例1 求 f = 2 在0

主程序为wliti1.m:

f='2*exp(-x).*sin(x)';

fplot(f,[0,8]); %作图语句

[xmin,ymin]=fminbnd (f, 0,8)

f1='-2*exp(-x).*sin(x)';

[xmax,ymax]=fminbnd (f1, 0,8)

运行结果:

xmin = 3.9270 ymin = -0.0279

xmax = 0.7854 ymax = 0.6448

★(借助课件说明过程、作函数的图形)

例2 对边长为3米的正方形铁板,在四个角剪去相等的正方形以制成方形无盖水槽,问如何剪法使水槽的容积最大?

设剪去的正方形的边长为x,则水槽的容积为: ,建立无约束优化模型为:min y=- , 0

先编写M文件fun0.m如下:

function f=fun0(x)

f=-(3-2*x).^2*x;

主程序为wliti2.m:

[x,fval]=fminbnd('fun0',0,1.5);

xmax=x

fmax=-fval

运算结果为: xmax = 0.5000,fmax =2.0000.即剪掉的正方形的边长为0.5米时水槽的容积最大,最大容积为2立方米.

★(借助课件说明过程、作函数的图形、并编制计算程序)

例3

1、编写M-文件 fun1.m:

function f = fun1 (x)

f = exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1);

2、输入M文件wliti3.m如下:

x0 = [-1, 1];

x=fminunc(‘fun1’,x0);

y=fun1(x)

3、运行结果:

x= 0.5000 -1.0000

y = 1.3029e-10

★(借助课件说明过程、作函数的图形并编制计算程序)

例4 Rosenbrock 函数 f(x1,x2)=100(x2-x12)2+(1-x1)2 的最优解(极小)为x*=(1,1),极小值为f*=0.试用不同算法(搜索方向和步长搜索)求数值最优解.初值选为x0=(-1.2 , 2).

为获得直观认识,先画出Rosenbrock 函数的三维图形, 输入以下命令:

[x,y]=meshgrid(-2:0.1:2,-1:0.1:3);

z=100*(y-x.^2).^2+(1-x).^2;

mesh(x,y,z)

画出Rosenbrock 函数的等高线图,输入命令:

contour(x,y,z,20)

hold on

plot(-1.2,2,' o ');

text(-1.2,2,'start point')

plot(1,1,'o')

text(1,1,'solution')

f='100*(x(2)-x(1)^2)^2+(1-x(1))^2';

[x,fval,exitflag,output]=fminsearch(f, [-1.2 2])

运行结果:

x =1.0000 1.0000

fval =1.9151e-010

exitflag = 1

output =

iterations: 108

funcCount: 202

algorithm: 'Nelder-Mead simplex direct search'

★(借助课件说明过程、作函数的图形并编制计算程序)

(五)、 作业

陈酒出售的最佳时机问题

某酒厂有批新酿的好酒,如果现在就出售,可得总收入R0=50万元(人民币),如果窖藏起来待来日(第n年)按陈酒价格出售,第n年末可得总收入 (万元),而银行利率为r=0.05,试分析这批好酒窖藏多少年后出售可使总收入的现值最大. (假设现有资金X万元,将其存入银行,到第n年时增值为R(n)万元,则称X为R(n)的现值.)并填下表:

取消

评论

matlab画三元隐函数,用MATLAB求三元函数的最小值肿么编程相关推荐

  1. matlab绘图z=sin(x_「matlab画三维图」Matlab 应用之绘制三维图形(基础篇) - seo实验室...

    matlab画三维图 在Matlab中,三维图形的绘制包括三维曲线,三维网线图和三维曲面图.闲话不多说,直接进入正题.首先介绍几个函数: 1.plot3(x,y,z,-) 其中,x,y,z为维数相同的 ...

  2. jiegputo matlab转置,matlab实现用免疫克隆算法求二元函数的最优值(附源码)

    用免疫克隆算法求二元函数的最优值 求下面函数的最小值(最优解) ​ Goldstein-Price函数: ​ f1(x)=[1+(x1+x2+1)2(19-14x1+3x12-14x2+6x1x2+3 ...

  3. python多元函数求极小值_使用遗传算法求二元函数的最小值

    二元函数为y=x1^2+x2^2,x∈[-5,5] NIND=121; %初始种群的个数(Number of individuals) NVAR=2; %一个染色体(个体)有多少基因 PRECI=20 ...

  4. python多元函数求解_使用遗传算法求二元函数的最小值

    二元函数为y=x1^2+x2^2,x∈[-5,5] NIND=121; %初始种群的个数(Number of individuals) NVAR=2; %一个染色体(个体)有多少基因 PRECI=20 ...

  5. 遗传算法求二元函数极值怎么编码_使用遗传算法求二元函数的最小值

    二元函数为y=x1^2+x2^2,x∈[-5,5] NIND=121; %初始种群的个数(Number of individuals) NVAR=2; %一个染色体(个体)有多少基因 PRECI=20 ...

  6. matlab怎么画x 1,matlab画出y=1 (x 1)的函数曲线

    请matlab高手教教 matlab编写一段程序,画出函数y=x^3*e^(-x^2),-1 clearx=-1:0.01:1;y=(x.^3).*exp(-x.^2);plot(x,y);title ...

  7. matlab画伯德图开环程序,matlab伯德图开环闭环

    Matlab 中 Bode 图的绘制技巧 学术收藏 2010-06-04 21:21:48 阅读 54 评论 0 字号:大中小 订阅 我们经常会遇到使用 Matlab 画伯德图的情况,可能我们我们都知 ...

  8. matlab画不定积分图像实例,matlab怎么画函数图像,原来是这样的

    函数想必大家都不陌生,有时候我们需要画出函数的图形,但是复杂的函数我们画出来花费时间太多,下面我来教大家用matlab画函数图像. 工具/材料 电脑 matlab软件 操作方法 01 先下载安装这个软 ...

  9. matlab求分段函数的值.,如何用MATLAB求分段函数的最小值和最大值?

    7.1.1 分段线性插值 所谓分段线性插值就是通过插值点用折线段连接起来逼近原曲线,这也是计算机绘制图形的基本原理.实现分段线性插值不需编制函数程序,MATLAB自身提供了内部函数interp1其主要 ...

最新文章

  1. php5.5参数配置优化,5个PHP性能优化的编程习惯
  2. go初学者安装echo框架
  3. STL - bitset
  4. Nginx基本数据结构之ngx_array_t
  5. 左栏固定,右栏自适应
  6. linux 2.6内核进程调度,linux2.6内核进程调度
  7. mybatis 学习五 二级缓存不推荐使用
  8. Java并发包的理解
  9. flash制作文字笔顺_Flash中使用逐帧动画实现按笔顺书写汉字的效果
  10. CRT设置LOG日志功能
  11. 主流视频编码器特点、优缺点归纳和比较(H.264、HEVC、VP9、AV1)
  12. 没有计算机的一天英语作文带翻译,美好的一天糟糕的一天英语作文带翻译
  13. Python 交通仿真建模(1)
  14. 华硕PRIME Z390-P主板设置开启虚拟化技术
  15. linux audacity,Audacity使用教程 Audacity怎么用
  16. 【leetcode】1849. 将字符串拆分为递减的连续值
  17. 【2309. 兼具大小写的最好英文字母】
  18. 『Kali nethunter系列』手机发起“badUSB”攻击(Rucky,Rucky脚本)
  19. Python黑帽子--黑客与渗透测试编程之道 python3 实现代码
  20. ubuntu16.04 下怎么挂载iso文件

热门文章

  1. python捕获print标准输出
  2. CSS/HTML5带数字简洁大方的Top10排名列表
  3. TQIMX6ULL测试----网络设备
  4. geany怎么配python_教程详情|Geany配置python教程解析_234游戏网
  5. java biginteger sqrt_Java BigInteger 开方sqrt的实现
  6. 出版一本新书《燃烧的岁月》
  7. 逻辑回归画图_逻辑回归
  8. 用亲身经历告诉你,做跨境电商别踩这个坑
  9. lammps反应势Reaxff力场文件下载方法
  10. || 与 ?. 与 ??