#coding = utf-8
#author: MrGeoLee
import random
import matplotlib.pyplot as plt
from tqdm import tqdm
import numpy as np
from math import *
kind = 30
DNA = []
NDNA = [0]*kind
Crossover_rate = 0.6
Mutation_rate = 0.05
N = 500
def fitness(x):
return x**2
def update():
for i in range(kind):
NDNA[i] = fitness(DNA[i])-fitness(min(DNA))*0.95
sums = sum(NDNA)
ssum = 0
for i in range(kind):
ssum += NDNA[i]
NDNA[i] = ssum/sums
def init():
for i in range(kind