方舟的小心脏瞬间骤停。</p>
全场这么多教授和专家,其他人都没有说话,唯独身份最高的那位跳出来。</p>
这就仿佛你打一个升级的单机游戏,才打到一半,等级还没有加满,最终Boss就跳出来说,我想要和你过两招。</p>
“你的加密算法思路很不错,但是前面采用的随机算法却有些配不上后面这么优秀的搜索算法。我建议你照我说的修改一下子。</p>
在第七行,通过3种理想状态的假设,寻优搜索的位置和路径的更新公式如下:</p>
x i t + 1 = x i t+α⊕L(λ),i=1,2,..,n(1)</p>
式中:xi为第i个数据在第t次迭代的位置,用于控制步长的搜索范围,其值服从正态分布。</p>
在式(1)中,L (λ) L(\lambda)L(λ)为Lévy随机搜索路径,随机步长为Lévy分布</p>
L ( s ,λ)~ s ?λ, ( 1 <λ≤ 3 )式中:—由前面的计算得到的随机特征。</p>
从你的上式可以看出,该迭代方式是一个随机漫步的过程。由于其随机游动特征,局部极值点附近往往会出现新解,因此这样的短步长搜索更加有利于提高解的质量。另外,距离局部最优值较远的地方也存在新解,偶尔的大步长探索,使得算法不容易陷入局部极值点。</p>
对于这样的问题,我个人建议更改一下步骤的顺序:</p>
步骤1 定义目标函数f(X), X =( x 1 ,..., x d ) T f(X),X=(x_1,...,x_d)^Tf(X),X=(x)函数初始化,并随机生成多个数据保存的初始位置 X i ( i = 1 , 2 ,..., n ) X_i(i=1,2,...,n)X (i=1,2,...,n),设置数据大小、问题维数、最大迭代次数等参数;</p>
步骤2 选择适应度函数并计算每个数据位置的目标函数值,得到当前的最优函数值;</p>
步骤3 记录上一代最优函数值,利用式(1)对其他鸟窝的位置和状态进行更新;</p>
步骤 4 现有位置函数值与上一代最优函数值进行比较,若较好,则改变当前最优值;</p>
步骤 5 通过位置更新后,用随机数r ∈[ 0 , 1 ] r\in[0,1]r∈[0,1]与P PP对比,若r > P r>Pr>P ,则对xt + 1 x^{t+1}x t+1进行随机改变,反之则不变。</p>
步骤6 若未达到最大迭代次数或最小误差要求,则返回步骤2 ,否则,继续下一步;</p>