import random import matplotlib.pyplot as plt def geschw(m,w): a=random.choice(range(0,10)) #a bestimmt, ob der Nachkomme von m und w mutiert(Wahrscheinlichkeit von 1/10) if a==0: b=random.choice(range(-9,10)) #b bestimmt, um wie viel er mutiert x=(m+w)/2+0.01*b*((m+w)/2) #neuer Wert setzt sich im Falle der Mutation aus m,w und b*((m+w)/2), letzteres um zu verhindern, dass der Wert unter 0 fällt. else: x=(m+w)/2 return x #x wird als Wert der Eigenschaft für den Nachkommen zurückgegeben. def werte(el1,el2): global ma #der größte Wert innerhalb einer Generation global mi #der kleinste Wert innerhalb einer Generation global du #der addierte Wert aller Wesen einer Generation if el1ma: #prüfe, ob es auch größer als das bisherige größte Element dieser Generation ist, ma=el2 #ist dies der Fall, setze el2 als neues ma ein if el1ma: ma=el1 if el2