python中轮盘赌算法的使用示例

  介绍

这篇文章给大家分享的是有关python中轮盘赌算法的使用示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

<强> 1,说明

轮盘赌博算法的精髓是可以根据个人适应度随机选择,适应度越大的个人选择的概率越高,群体规模越大,该算法可以比较真实地模拟自然状态的状况。

<强> 2,实例

 def 选择(chromosome_list, fitness_list):
  ,,,,,,
  ,,,选择(轮盘赌算法)
  ,,,:param  chromosome_list:,二维列表的种群
  ,,,:param  fitness_list:,适应度列表
  ,,,::返回,选择之后的种群列的表
  ,,,,,,
  ,,,population_fitness =, np.array (fitness_list) .sum(),, #,种群适应度
  ,,,fit_ratio =,(小姐:/,population_fitness  for 小姐:拷贝fitness_list],, #,每个个体占种群适应度的比例
  ,,,fit_ratio_add =,[0],, #,个体累计概率
  ,,,for 小姐:拷贝fit_ratio:
  ,,,,,,,fit_ratio_add.append (fit_ratio_add (len (fit_ratio_add),安康;1],+,i),,,,, #,计算每个个体的累计概率,并存放到fit_ratio_add中
  ,,,fit_ratio_add =, fit_ratio_add[1:],,, #,去掉首位的0
  ,
  ,,,rand_list =, (random.uniform (0, 1), for  _ 拷贝chromosome_list),,,,, #,生成和种群规模相等的随机值列表,用于轮盘赌选择个体
  ,,,rand_list.sort ()
  ,,,fit_index =0
  ,,,new_index =0
  ,,,new_population =, chromosome_list.copy ()
  ,,,& # 39;& # 39;& # 39;个体选择,开始# 39;& # 39;& # 39;
  ,,,while  new_index  & lt;, len (chromosome_list):
  ,,,,,,,if  rand_list [new_index], & lt;, fit_ratio_add [fit_index]:
  ,,,,,,,,,,,new_population [new_index],=, chromosome_list [fit_index]
  ,,,,,,,,,,,new_index =, new_index  + 1
  ,,,,,,,其他的:
  ,,,,,,,,,,,fit_index =, fit_index  + 1
  ,,,& # 39;& # 39;& # 39;个体选择,结束# 39;& # 39;& # 39;
  ,,,return  new_population 
Python主要用来做什么

Python主要应用于:1,网络开发;2、数据科学研究;3,网络爬虫;4、嵌入式应用开发,5日游戏开发;6桌面应用开发。

感谢各位的阅读!关于“Python中轮盘赌算法的使用示例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

python中轮盘赌算法的使用示例