/
vadimka
/
SimpleGeneticAlgorithm
Обзор
Документация
Войти
/
vadimka
/
SimpleGeneticAlgorithm
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
parentselection.c
24 строки
857 B
Vadim Kaluga
add panmixia
17 фев 2024, 11:09
17 фев 2024, 11:09
aae2579
Код
Авторство
О чём код?
#include <stdlib.h> #include <time.h> #include "chromosome.h" #include "logger.h" #include "parentselection.h" /* панмиксия (пары выбираются случайно) */ struct parents* panmixia(struct chromosome *population, int size) { /* количество пар равно количеству особей */ struct parents *families = (struct parents*)malloc(sizeof(struct parents) * size); srand(time(NULL)); for (int i = 0; i < size; i++) { families[i].one = &population[i]; int r = rand() % 100; /* выбор случайно пары */ families[i].two = &population[r]; if (r == i) /* проверка на пару с самим собой */ families[i].parthenogenesis = 1; else families[i].parthenogenesis = 0; } return families; }