首页 >后端开发 >php教程 > 正文

PHP写遗传算法

原创2018-04-26 16:51:0701103

这篇文章主要介绍了PHP写遗传算法 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

本文尝试用PHP语言编写遗传算法

遗传算法的具体介绍,请自行搜索,本文也没有完全按照网络上的写法做,作者水平有限,使用的中间算法也都不怎么高明,请各位带着批评看文章。

本文采用的遗传算法步骤
- ①初始种群
- ②淘汰
- ③交叉
- ④变异
- ⑤重建种群并迭代②-④步
- ⑥画图等额外操作

第一节 故事前情与算法梗概

一、故事前情

本文引入某大神关于扇贝的故事,PHP代码大致也是这么写的。
某海滩上有一群扇贝无忧虑的生活着,上帝闲来无事派bob过来用遗传算法整这群扇贝,bob来了之后,给扇贝提了要求:
①你们只能有16个扇贝,每一代我要杀死2个,哪2个贝壳上的图案最不像谷歌浏览器图标我就杀谁;

②剩余的14个中有4个扇贝两两结合生2个孩子,再凑够16个,如此循环;
这些扇贝很是苦恼啊,可是又有什么办法呢,一些扇贝离开了,之后正好留下来16个,就是这些扇贝,创造了后来的chrome扇贝。

二、算法梗概

遗传算法模拟达尔文孟德斯鸠这类神人的遗传学规律,对种群进行筛选,繁殖,变异,如此经过多代,即可培育出那些符合规则的目标。
遗传算法的
第一步是要建立初始种群,初始种群可以是随机建立的,比如故事中最开始的16个扇贝。
第二步是建立淘汰机制,也就是筛选程序,为此我们为扇贝增加一个适应度属性,也就是扇贝背上的图案,与我们的chrome图标有多像,这里的适应度计算标准为,像素点4通道差值(绝对值)之和,4通道包含透明通道。

本文尝试用PHP语言编写遗传算法

遗传算法的具体介绍,请自行搜索,本文也没有完全按照网络上的写法做,作者水平有限,使用的中间算法也都不怎么高明,请各位带着批评看文章。

本文采用的遗传算法步骤
- ①初始种群
- ②淘汰
- ③交叉
- ④变异
- ⑤重建种群并迭代②-④步
- ⑥画图等额外操作

第一节 故事前情与算法梗概

一、故事前情

本文引入某大神关于扇贝的故事,PHP代码大致也是这么写的。
某海滩上有一群扇贝无忧虑的生活着,上帝闲来无事派bob过来用遗传算法整这群扇贝,bob来了之后,给扇贝提了要求:
①你们只能有16个扇贝,每一代我要杀死2个,哪2个贝壳上的图案最不像谷歌浏览器图标我就杀谁;

②剩余的14个中有4个扇贝两两结合生2个孩子,再凑够16个,如此循环;
这些扇贝很是苦恼啊,可是又有什么办法呢,一些扇贝离开了,之后正好留下来16个,就是这些扇贝,创造了后来的chrome扇贝。

二、算法梗概

遗传算法模拟达尔文孟德斯鸠这类神人的遗传学规律,对种群进行筛选,繁殖,变异,如此经过多代,即可培育出那些符合规则的目标。
遗传算法的
第一步是要建立初始种群,初始种群可以是随机建立的,比如故事中最开始的16个扇贝。
第二步是建立淘汰机制,也就是筛选程序,为此我们为扇贝增加一个适应度属性,也就是扇贝背上的图案,与我们的chrome图标有多像,这里的适应度计算标准为,像素点4通道差值(绝对值)之和,4通道包含透明通道。

相关推荐:

PHP实现KMP算法

以上就是PHP写遗传算法 的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:php 算法 遗传
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息
    推荐视频教程
  • javascript初级视频教程javascript初级视频教程
  • jquery 基础视频教程jquery 基础视频教程
  • 视频教程分类