Evolutionary Algorithms Homework
1
1、 可视化函数
首先,我们可以利用 MATLAB 中的平面等高线函数 contour 对我们的函数进
行可视化处理,我们可以粗略的判断,函数的极小值肯定分布在原点附近(针对整
个平面而言),因此我们就只须画出定义域在
上的图像,代码
参考 visualization.m,其运行结果等高线图如下所示。
图 1 在特定定义域上的等高线图
因此我们就可以回答第一个问题,该函数有两个局部最小点,具体是多少以及
哪个是全局最优点,我们可以利用 Nelder-Mead Simplex 算法进行求解。
2、 算法求解
根据 Nelder-Mead Simplex 算法的原理以及参考后文给出的参考资料后,自行
编写代码,可自行参考源文件 NMS.m。NMS 函数调用格式如下:
[x,fval,flag,time,object_value]=NMS(fun,x0,max_time,eps)
Input:
% fun: object function
% x0: starting point
% max_time: the max number of iteration ,the default value is 10000
% eps: accuracy, the default value is 1e-8
Output:
评论0