Zaktualizuj 'Traktorek/Kinga Jagodzińska_Algorytm genetyczny.py'

This commit is contained in:
Kinga Jagodzińska 2020-06-15 11:10:08 +00:00
parent 91715f1210
commit 687ee80170

View File

@ -24,7 +24,7 @@ class Gen(object):
for x in range(self.max_gen): for x in range(self.max_gen):
temp = [] temp = []
for y in range(self.length): for y in range(self.length):
temp.append(random.choice(["żyto", "jęczmień", "owies", "marchew", "rzodkiew", "pietruszka"])) temp.append(random.choice(["rzodkiewa", "papryka", "sałata", "marchew", "pomidor", "pietruszka"]))
self.dna.append(temp) self.dna.append(temp)
def algorytm(self): def algorytm(self):
@ -56,7 +56,7 @@ class Gen(object):
# mutacja # mutacja
if random.randint(0, 100) <= 40: if random.randint(0, 100) <= 40:
for x in range(3): for x in range(3):
temp[random.randint(0, self.length - 1)] = random.choice(["żyto", "jęczmień", "owies", "marchew", "rzodkiew", "pietruszka"]) temp[random.randint(0, self.length - 1)] = random.choice(["rzodkiewa", "papryka", "sałata", "marchew", "pomidor", "pietruszka"])
self.dna.append(temp) self.dna.append(temp)
self.pokolenie = self.pokolenie + 1 self.pokolenie = self.pokolenie + 1
@ -69,86 +69,86 @@ class Gen(object):
som = tab[self.index_gen.index(y)] som = tab[self.index_gen.index(y)]
else: else:
som = self.game.fields[y] som = self.game.fields[y]
if tab[x] == "żyto": if tab[x] == "rzodkiewa":
if som == "żyto": if som == "rzodkiewa":
suma = suma * 0.5 suma = suma * 0.5
elif som == "jęczmień": elif som == "papryka":
suma = suma * 1 suma = suma * 1
elif som == "owies": elif som == "sałata":
suma = suma * 0.7 suma = suma * 0.7
elif som == "marchew": elif som == "marchew":
suma = suma * 0 suma = suma * 0
elif som == "rzodkiew": elif som == "pomidor":
suma = suma * 1 suma = suma * 1
elif som == "pietruszka": elif som == "pietruszka":
suma = suma * 0.6 suma = suma * 0.6
elif tab[x] == "jęczmień": elif tab[x] == "papryka":
if som == "żyto": if som == "rzodkiewa":
suma = suma * 1 suma = suma * 1
elif som == "jęczmień": elif som == "papryka":
suma = suma * 0.8 suma = suma * 0.8
elif som == "owies": elif som == "sałata":
suma = suma * 0.2 suma = suma * 0.2
elif som == "marchew": elif som == "marchew":
suma = suma * 1 suma = suma * 1
elif som == "rzodkiew": elif som == "pomidor":
suma = suma * 0.2 suma = suma * 0.2
elif som == "pietruszka": elif som == "pietruszka":
suma = suma * 0.9 suma = suma * 0.9
elif tab[x] == "owies": elif tab[x] == "sałata":
if som == "żyto": if som == "rzodkiewa":
suma = suma * 0.7 suma = suma * 0.7
elif som == "jęczmień": elif som == "papryka":
suma = suma * 0.2 suma = suma * 0.2
if som == "owies": if som == "sałata":
suma = suma * 1 suma = suma * 1
if som == "marchew": if som == "marchew":
suma = suma * 0.3 suma = suma * 0.3
if som == "rzodkiew": if som == "pomidor":
suma = suma * 0 suma = suma * 0
if som == "pietruszka": if som == "pietruszka":
suma = suma * 1 suma = suma * 1
if tab[x] == "marchew": if tab[x] == "marchew":
if som == "żyto": if som == "rzodkiewa":
suma = suma * 0 suma = suma * 0
if som == "jęczmień": if som == "papryka":
suma = suma * 1 suma = suma * 1
if som == "owies": if som == "sałata":
suma = suma * 0.3 suma = suma * 0.3
if som == "marchew": if som == "marchew":
suma = suma * 0.9 suma = suma * 0.9
if som == "rzodkiew": if som == "pomidor":
suma = suma * 1 suma = suma * 1
if som == "pietruszka": if som == "pietruszka":
suma = suma * 0.8 suma = suma * 0.8
if tab[x] == "rzodkiew": if tab[x] == "pomidor":
if som == "żyto": if som == "rzodkiewa":
suma = suma * 1 suma = suma * 1
if som == "jęczmień": if som == "papryka":
suma = suma * 0.2 suma = suma * 0.2
if som == "owies": if som == "sałata":
suma = suma * 0 suma = suma * 0
if som == "marchew": if som == "marchew":
suma = suma * 1 suma = suma * 1
if som == "rzodkiew": if som == "pomidor":
suma = suma * 0.9 suma = suma * 0.9
if som == "pietruszka": if som == "pietruszka":
suma = suma * 0.7 suma = suma * 0.7
if tab[x] == "pietruszka": if tab[x] == "pietruszka":
if som == "żyto": if som == "rzodkiewa":
suma = suma * 0.6 suma = suma * 0.6
if som == "jęczmień": if som == "papryka":
suma = suma * 0.9 suma = suma * 0.9
if som == "owies": if som == "sałata":
suma = suma * 1 suma = suma * 1
if som == "marchew": if som == "marchew":
suma = suma * 0.8 suma = suma * 0.8
if som == "rzodkiew": if som == "pomidor":
suma = suma * 0.7 suma = suma * 0.7
if som == "pietruszka": if som == "pietruszka":
suma = suma * 0.4 suma = suma * 0.4