python 遗传算法精简版
精简版遗传算法,算法中仅采用变异算子而没有使用交叉算子,但是进化依然很有效
from string import ascii_lowercase from random import choice, random'''精简版遗传算法,算法中仅采用变异算子而没有使用交叉算子,但是进化依然很有效'''target = list("welcome to http://www.cnhup.com") charset = ascii_lowercase + ' .:/' parent = [choice(charset) for _ in range(len(target))] minmutaterate = .09 C = range(100)perfectfitness = len(target) def fitness(trial):return sum(t==h for t,h in zip(trial, target))def mutaterate(parent):return 1.0-(1.0*(perfectfitness - fitness(parent)) / perfectfitness * (1.0 - minmutaterate))def mutate(parent, rate):return [(ch if random() <= rate else choice(charset)) for ch in parent]def log(iterations,rate,parent):print("#%-4i, rate: %4.3f, fitness: %4.1f%%, '%s'" %(iterations, rate, fitness(parent)*100./perfectfitness, ''.join(parent)))iterations = 0 while parent != target:rate = mutaterate(parent)iterations += 1if iterations % 10 == 0: log(iterations,rate,parent)copies = [ mutate(parent, rate) for _ in C ] + [parent]parent = max(copies, key=fitness)print() log(iterations, rate, parent)
python 遗传算法精简版相关推荐
- Python遗传算法工具箱的使用(一)求解带约束的单目标优化
加了个小目录~方便定位查看~ 前言 正文 一. 基础术语: 二. 遗传算法基本算子: 三.完整实现遗传算法: 四.后记: 前言 网上有很多博客讲解遗传算法,但是大都只是"点到即止" ...
- Python 遗传算法实现字符串
Python 遗传算法实现字符串 流程 1. 初始化 2. 适应度函数 3. 选择 4. 交叉 5. 变异 适应度函数计算方法 计算个体间的差:分别计算每个元素与目标元素的差取平方和 种群:计算总体均 ...
- 用 BERT 精简版 DistilBERT+TF.js,提升问答系统 2 倍性能
特邀博文 / 软件工程师 Pierric Cistac:研究员 Victor Sanh:技术主管 Anthony Moi,来自 Hugging Face Hugging Face (https://h ...
- Markdown语法学习|精简版
markdown语法学习|精简版 文章开头 点击这里回到下方介绍 页面跳转 的阅读位置 点击这里回到下方介绍 toc 的阅读位置 此笔记学习摘抄自Markdown语法大全(超级版),并根据笔者的使用不 ...
- Hanwang汉王笔精简版 20120207官方最新版
2019独角兽企业重金招聘Python工程师标准>>> Hanwang汉王笔精简版是一款汉王笔精简版驱动程序软件,适用于08年之后生产的USB系列汉王笔,支持Windows XP/V ...
- C4D2023取消永久许可?Maya推出精简版?你不能错过的7个CG软件资讯...
忙碌了一个月,是不是没有时间看各类CG软件的最新资讯呀,云渲染小编特意整理了一下各大 CG 制作软件和渲染器的更新情况,方便大家了解行业最新动态!不知道是不是因为9月是第三季度结尾,各大软件研发组都开 ...
- Python 程序设计(第二版)董付国_清华大学出版社_习题答案与分析【针对8.4及其之前的】
更多精彩内容:(没有设置公众号获得,麻烦动动小手~谢谢) CSDN下载:Python编程无师自通电子书,[美]科里·奥尔索夫(Cory Althoff)-文档类-CSDN下载 百度云:链接:https ...
- 如何用Python实现多任务版的udp聊天器
这篇文章主要为大家详细介绍了Python实现多任务版的udp聊天器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 一.案例示例 二.案例说明 1.编写一个有2个线程的程 ...
- webview页面和壳通信的库(精简版)
//PG精简版 (function() {var PG ={iosBridge:null,callbackId:0,callbacks: [],commandQueue: [],commandQueu ...
最新文章
- 1.2 Kali与Debian的关系
- Matlab中左除和右除
- springcloud(十一):服务网关Zuul高级篇
- linux安装mysql 5.6.33
- 技术检验检测管理系统之样品检验模块概况(四)
- java float存储方式_Java中小数的存储方式
- 章节十一、1-Junit介绍
- 1.关于Python,你可能不知道的
- 网络爬虫详细设计方案
- 基于java的企业员工绩效考评系统
- 物联网和边缘部署的5大嵌入式工控机设计要求
- 【gfs】google file system 之重点剖析
- POJ 1392 Ouroboros Snake
- DDD(领域驱动设计)系列主题:DDD战略设计和战术设计分析流程及关键输出物
- PhxRPC源码简析
- python中得到26个字母
- 英语基础-动词的分类
- 关于Java内存可见性的探究实验遇到的意外和happens-before
- 如何制作注册登录网址
- Apache shiro 官方API (中文版)(承蒙大佬们看重 小弟整理了下 无需积分 编辑的不好 希望帮到你们)
热门文章
- android studio8.0,Android Studio错误:(8,0)未找到ID为’android’的插件
- orgmode导出html,含有python代码块的ORG-MODE导出为HTML时出错
- python捷联惯导的姿态解算_自动驾驶中高精地图的大规模生产:视觉惯导技术在高德的应用...
- 热更新机制的实现_记 Arthas 实现一次 CPU 排查与代码热更新
- java 私有成员方法_Java Reflection 教程(7):类私有成员变量和方法
- ovirt 双机_ovirt kvm嵌套虚拟化
- Ubuntu PIL 安装
- AppList.json文件为空,主界面清缓存后加载后还正常显示
- Java Web学习笔记11:JSTL与EL
- 17.立体匹配——匹配两个图 Matlab实战,立体效果_3