import random EKRAN_SZEROKOSC = 770 EKRAN_WYSOKOSC = 770 blockSize = 70 LICZBA_REGALOW = 14 LICZBA_MIEJSC_DLA_PACZKE = 1 LICZBA_SKRZYNEK_NA_LISTY = 1 def wygeneruj_osobnika(zasieg_wspolrzednych, ilosc_wspolrzednych): # ilosc_wspolrzednych = ilosc_wspolrzednych/2 osobnik = list() for j in range(ilosc_wspolrzednych): x = random.randint(0, zasieg_wspolrzednych) y = random.randint(0, zasieg_wspolrzednych) e = (x, y) while e in osobnik: x = random.randint(0, zasieg_wspolrzednych) y = random.randint(0, zasieg_wspolrzednych) e = (x, y) osobnik.append(e) return osobnik def wygeneruj_populacje_poczatkowa(liczebnosc_populacji): populacja = list() zasieg = int(EKRAN_WYSOKOSC / blockSize) ilosc_wspolrzednych = (LICZBA_REGALOW + LICZBA_MIEJSC_DLA_PACZKE + LICZBA_SKRZYNEK_NA_LISTY) for i in range(liczebnosc_populacji): osobnik = wygeneruj_osobnika(zasieg, ilosc_wspolrzednych) while osobnik in populacja: osobnik = wygeneruj_osobnika(zasieg, ilosc_wspolrzednych) populacja.append(osobnik) return populacja print(wygeneruj_populacje_poczatkowa(100))