近期在研究生物地理学优化算法(Biogeography-based optimization ) 时发现 在计算物种数概率时,原文章给出的公式与作者给出的源码形式不一样,一度以为是代码出了问题,最后发现是因为代码中对种群的排序是按照 从最好到最差 的顺序排序。
原论文下载:https://download.csdn.net/download/sunshinefcx/11111947
源码下载:https://download.csdn.net/download/sunshinefcx/11111950
代码中的栖息地排序如下形式【population(i) 表示第 i 个栖息地】:
for j = 1 : length(Population) % 其中 j 代表的是栖息地
% Population(1) 是适宜度最高的栖息地,相对应的这个栖息地的物种数量最多
% 随着 j 的增加,物种数量是减少的,栖息地的 适宜度 HSI 也是降低的
end
下面咱们来看,原论文及源码中分别是怎么实现的
原论文:
首先看原文我们可以知道,原文章中给出的 某栖息地在 (t+△t) 时刻有 S 种物种的概率 Ps 的计算公式如下: