python 遗传算法精简版

简介: 精简版遗传算法,算法中仅采用变异算子而没有使用交叉算子,但是进化依然很有效     from string import ascii_lowercase from random import choice, random '''精简版遗传算法,算法中仅采用变异算子而没有使用交叉...

精简版遗传算法,算法中仅采用变异算子而没有使用交叉算子,但是进化依然很有效

 

 

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 += 1
    if 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)

 

目录
相关文章
|
机器学习/深度学习 数据采集 算法
遗传算法——基于Big Mart Sales数据集的TPOT库实现(python)
遗传算法——基于Big Mart Sales数据集的TPOT库实现(python)
96 0
|
5月前
|
机器学习/深度学习 数据采集 算法
Python基于低方差特征选择(VarianceThreshold)、遗传算法(TPOTRegressor)实现信用评分卡模型
Python基于低方差特征选择(VarianceThreshold)、遗传算法(TPOTRegressor)实现信用评分卡模型
|
5月前
|
机器学习/深度学习 数据采集 算法
Python实现GA(遗传算法)对SVM分类模型参数的优化
Python实现GA(遗传算法)对SVM分类模型参数的优化
|
6月前
|
机器学习/深度学习 算法 Python
使用Python实现深度学习模型:演化策略与遗传算法
使用Python实现深度学习模型:演化策略与遗传算法
53 0
|
6月前
|
算法 C语言 Python
简单遗传算法优化简单一元函数(python)
简单遗传算法优化简单一元函数(python)
52 0
|
7月前
|
机器学习/深度学习 人工智能 算法
遗传算法原理详细讲解(算法+Python源码)
遗传算法原理详细讲解(算法+Python源码)
|
7月前
|
机器学习/深度学习 自然语言处理 算法
Python遗传算法GA对长短期记忆LSTM深度学习模型超参数调优分析司机数据|附数据代码
Python遗传算法GA对长短期记忆LSTM深度学习模型超参数调优分析司机数据|附数据代码
|
7月前
|
数据可视化 算法 定位技术
Python实现地图四色原理的遗传算法(GA)着色实现
Python实现地图四色原理的遗传算法(GA)着色实现
|
7月前
|
算法 Python
金融量化交易:使用Python实现遗传算法
金融量化交易:使用Python实现遗传算法
179 1
|
7月前
|
机器学习/深度学习 算法 决策智能
Python高级算法——遗传算法(Genetic Algorithm)
Python高级算法——遗传算法(Genetic Algorithm)
475 0