matlab利用随机投点求一元函数在某个区间的最小值

请在【-2,2】上随机投点,求出f(x)=5.*x.^4-x.^3+2*x.^2+3*x-8 在该区间上的最小值点。。。。求大神帮忙

利用matlab求一元函数在某一区间的最小值。

工具/原料
电脑
matlab
方法/步骤
1、用“导数为零”法求极值点,具体代码及其结果如下图所示:

2、采用优化算法求极小值,具体代码及其结果如下图所示:

3、绘制图形观察最小值,下图是代码:

4、绘制图形观察最小值,下图是绘制的函数图形:

5、据图形观察,重设fminbnd的搜索区间
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-03-30
syms x f

f=@(x) 5.*x.^4-x.^3+2*x.^2+3*x-8

rnd=(rand(1,1000)-0.5)*4;
f(rnd)
min(f(rnd))就是最小的。本回答被网友采纳