📄 ga_intrinsics.c
字号:
int ga_crossover_chromosome_singlepoints_slang(int *pop_id, int *father, int *mother, int *son, int *daughter) { population *pop; /* Active population structure. */ pop = ga_get_population_from_id(*pop_id); ga_crossover_chromosome_singlepoints(pop, ga_get_entity_from_id(pop, *father), ga_get_entity_from_id(pop, *mother), ga_get_entity_from_id(pop, *son), ga_get_entity_from_id(pop, *daughter) ); return TRUE; }/********************************************************************** ga_crossover_chromosome_mixing_slang() synopsis: `Mates' two genotypes by crossover (chromosome mixing). Keeps all chromosomes intact, and therefore will not need to recreate any structural data. parameters: return: last updated: 14/02/01 **********************************************************************/static int ga_crossover_chromosome_mixing_slang(int *pop_id, int *father, int *mother, int *son, int *daughter) { population *pop; /* Active population structure. */ pop = ga_get_population_from_id(*pop_id); ga_crossover_chromosome_mixing(pop, ga_get_entity_from_id(pop, *father), ga_get_entity_from_id(pop, *mother), ga_get_entity_from_id(pop, *son), ga_get_entity_from_id(pop, *daughter) ); return TRUE; }#endif/********************************************************************** ga_entity_score_slang() synopsis: Score entity. parameters: return: last updated: 07/02/01 **********************************************************************/static int ga_entity_score_slang(int *pop_id, int *joe) { population *pop; /* Active population structure. */ pop = ga_get_population_from_id(*pop_id); if (!pop->evaluate) die("Scoring function not defined.");/* return pop->evaluate(pop, ga_get_entity_from_id(pop, *joe));*/ pop->evaluate(pop, ga_get_entity_from_id(pop, *joe));/* plog(LOG_DEBUG, "Return from pop->evaluate().\n");*/ return TRUE; }/********************************************************************** ga_evolution_slang() synopsis: Wrapper around the main genetic algorithm routine. It performs a GA-based optimisation on the specified population. parameters: return: last updated: 11 Jun 2002 **********************************************************************/static int ga_evolution_slang( int *pop, int *max_generations ) { ga_evolution( ga_get_population_from_id(*pop), *max_generations ); return TRUE; }/********************************************************************** ga_evolution_forked_slang() synopsis: Wrapper around the main genetic algorithm routine. It performs a GA-based optimisation on the specified population. parameters: return: last updated: 11 Jun 2002 **********************************************************************/static int ga_evolution_forked_slang( int *pop, int *max_generations ) { ga_evolution_forked( ga_get_population_from_id(*pop), *max_generations ); return TRUE; }/********************************************************************** ga_evolution_threaded_slang() synopsis: Wrapper around the main genetic algorithm routine. It performs a GA-based optimisation on the specified population. parameters: return: last updated: 19 Aug 2003 **********************************************************************/static int ga_evolution_threaded_slang( int *pop, int *max_generations ) { ga_evolution_threaded( ga_get_population_from_id(*pop), *max_generations ); return TRUE; }#if 0/********************************************************************** ga_evolution_mpi_slang() synopsis: Wrapper around the main genetic algorithm routine. It performs a GA-based optimisation on the specified population. parameters: return: last updated: 19 Aug 2003 **********************************************************************/static int ga_evolution_mpi_slang( int *pop, int *max_generations ) { ga_evolution_mpi( ga_get_population_from_id(*pop), *max_generations ); return TRUE; }#endif/********************************************************************** ga_population_set_parameters_slang() synopsis: Sets the GA parameters for a population. parameters: return: last updated: 19 Aug 2003 **********************************************************************/static int ga_population_set_parameters_slang( int *pop, int *scheme, int *elitism, double *crossover, double *mutation, double *migration) { ga_population_set_parameters( ga_get_population_from_id(*pop), (ga_scheme_type) *scheme, (ga_elitism_type) *elitism, *crossover, *mutation, *migration ); return TRUE; }/********************************************************************** ga_population_get_size_slang() synopsis: Access population's size field. parameters: return: last updated: 22/01/01 **********************************************************************/static int ga_population_get_size_slang(int *pop) { return ((population*) ga_get_population_from_id(*pop))->size; }/********************************************************************** ga_population_get_maxsize_slang() synopsis: Access population's max_size field. parameters: return: last updated: 22/01/01 **********************************************************************/static int ga_population_get_maxsize_slang(int *pop) { return ((population*) ga_get_population_from_id(*pop))->max_size; }/********************************************************************** ga_population_get_stablesize_slang() synopsis: Access population's stable_size field. parameters: return: last updated: 22/01/01 **********************************************************************/static int ga_population_get_stablesize_slang(int *pop) { return ((population*) ga_get_population_from_id(*pop))->stable_size; }/********************************************************************** ga_population_set_stablesize_slang() synopsis: Alter population's stable_size field. This should be used with care. parameters: return: last updated: 27/03/01 **********************************************************************/static int ga_population_set_stablesize_slang(int *pop, int *size) { ((population*) ga_get_population_from_id(*pop))->stable_size = *size; return TRUE; }/********************************************************************** ga_population_get_crossoverratio_slang() synopsis: Access population's crossover_ratio field. parameters: return: last updated: 23/04/01 **********************************************************************/static double ga_population_get_crossoverratio_slang(int *pop) { return ((population*) ga_get_population_from_id(*pop))->crossover_ratio; }/********************************************************************** ga_population_set_crossoverratio_slang() synopsis: Alter population's crossover_ratio field. parameters: return: last updated: 23/04/01 **********************************************************************/static int ga_population_set_crossoverratio_slang(int *pop, double *value) { ((population*) ga_get_population_from_id(*pop))->crossover_ratio = *value; return TRUE; }/********************************************************************** ga_population_get_mutationratio_slang() synopsis: Access population's mutation_ratio field. parameters: return: last updated: 23/04/01 **********************************************************************/static double ga_population_get_mutationratio_slang(int *pop) { return ((population*) ga_get_population_from_id(*pop))->mutation_ratio; }/********************************************************************** ga_population_set_mutationratio_slang() synopsis: Alter population's mutation_ratio field. parameters: return: last updated: 23/04/01 **********************************************************************/static int ga_population_set_mutationratio_slang(int *pop, double *value) { ((population*) ga_get_population_from_id(*pop))->mutation_ratio = *value; return TRUE; }/********************************************************************** ga_population_get_migrationratio_slang() synopsis: Access population's migration_ratio field. parameters: return: last updated: 23/04/01 **********************************************************************/static int ga_population_get_migrationratio_slang(int *pop) { return ((population*) ga_get_population_from_id(*pop))->migration_ratio; }/********************************************************************** ga_population_set_migrationratio_slang() synopsis: Alter population's migration_ratio field. parameters: return: last updated: 23/04/01 **********************************************************************/static int ga_population_set_migrationratio_slang(int *pop, int *value) { ((population*) ga_get_population_from_id(*pop))->migration_ratio = *value; return TRUE; }/********************************************************************** ga_population_set_scheme_slang() synopsis: Alter population's evolutionary class field. parameters: return: last updated: 20 Sep 2002 **********************************************************************/static int ga_population_set_scheme_slang(int *pop, int *value) { ((population*) ga_get_population_from_id(*pop))->scheme = *value; return TRUE; }/********************************************************************** ga_population_set_elitism_slang() synopsis: Alter population's elitism mode field. parameters: return: last updated: 20 Sep 2002 **********************************************************************/static int ga_population_set_elitism_slang(int *pop, int *value) { ((population*) ga_get_population_from_id(*pop))->elitism = *value; return TRUE; }/********************************************************************** ga_population_get_chromosomenum_slang() synopsis: Access population's num_chromosomes field. parameters: return: last updated: 22/01/01 **********************************************************************/static int ga_population_get_chromosomenum_slang(int *pop) { return ((population*) ga_get_population_from_id(*pop))->num_chromosomes; }/********************************************************************** ga_population_get_chromosomelen_slang() synopsis: Access population's len_chromosomes field. parameters: return: last updated: 22/01/01 **********************************************************************/static int ga_population_get_chromosomelen_slang(int *pop)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -