在科学计算、工程应用等领域中我们经常遇到要求极值点的问题,下面我们就以Rosenbrock's "Banana"测试函数为例,用matlab求取该函数的极小值。
1.Rosenbrock函数简介
Rosenbrock函数是数学优化中的常用函数,他可以用来测试优化算法的性能。又叫“Rosenbrock山谷”、“Rosenbrock香蕉函数”、“香蕉函数”。它的定义式如下图所示:
2.匿名函数表示该函数,matlab的匿名函数代码为:ff=@(x)(100*(x(2)-x(1).^2)^2+(1-x(1))^2;
3.单纯形法求极值
4.检查目标函数
5.画rosenbrock函数三维图形,如下图所示是画图代码:
6.下面是画出的rosenbrock函数三维图形