This is the 1D List representation, this list can carry real numbers or integers or any kind of object, by default, we have genetic operators for integer and real lists, which can be found on the respective modules.
Initializator
Initializators.G1DListInitializatorInteger()
The Integer Initializator for G1DList
Mutator
The Swap Mutator for G1DList
Crossover
Crossovers.G1DListCrossoverSinglePoint()
The Single Point Crossover for G1DList
G1DList Class - The 1D List chromosome representation
Inheritance diagram for G1DList.G1DList:
This chromosome class extends the GenomeBase.GenomeBase and GenomeBase.G1DBase classes.
Examples
- The instantiation
>>> g = G1DList(10)- Compare
>>> genome2 = genome1.clone() >>> genome2 == genome1 True- Multiply
>>> genome = population[0] >>> genome (...) [1, 2, 3, 4] >>> genome_result = genome * 2 >>> genome_result (...) [2, 2, 6, 8]- Add
>>> genome (...) [1, 2, 3, 4] >>> genome_result = genome + 2 (...) [3, 4, 5, 6]- Iteration
>>> for i in genome: >>> print i 1 2 3 4- Size, slice, get/set, append
>>> len(genome) 4 >>> genome (...) [1, 2, 3, 4] >>> genome[0:1] [1, 2] >>> genome[1] = 666 >>> genome (...) [1, 666, 3, 4] >>> genome.append(99) >>> genome (...) [1, 666, 3, 4, 99]
Parameter: | size – the 1D list size |
---|
Appends an item to the end of the list
>>> genome.append(44)
Parameter: | value – value to be added |
---|
Return a new instace copy of the genome
Return type: | the G1DList clone instance |
---|
Copy genome to ‘g’
>>> genome_origin.copy(genome_destination)
Parameter: | g – the destination G1DList instance |
---|
This is the reproduction function slot, the crossover. You can change the default crossover method using:
genome.crossover.set(Crossovers.G1DListCrossoverUniform)
Called to evaluate genome
Parameter: | args – this parameters will be passes to the evaluator |
---|
This is the evaluation function slot, you can add a function with the set method:
genome.evaluator.set(eval_func)
Get the Fitness Score of the genome
Return type: | genome fitness score |
---|
Returns the internal list of the genome
... note:: this method was created to solve performance issues :rtype: the internal list
Returns the list supposed size
Warning
this is different from what the len(obj) returns
Gets an internal parameter
>>> genome.getParam("rangemax")
100
Note
All the individuals of the population shares this parameters and uses the same instance of this dict.
Parameters: |
|
---|
Get the Raw Score of the genome
Return type: | genome raw score |
---|
This is the initialization function of the genome, you can change the default initializator using the function slot:
genome.initializator.set(Initializators.G1DListInitializatorAllele)
In this example, the initializator Initializators.G1DListInitializatorAllele() will be used to create the initial population.
Called to initialize genome
Parameter: | args – this parameters will be passed to the initializator |
---|
Called to mutate the genome
Parameter: | args – this parameters will be passed to the mutator |
---|---|
Return type: | the number of mutations returned by mutation operator |
This is the mutator function slot, you can change the default mutator using the slot set function:
genome.mutator.set(Mutators.G1DListMutatorSwap)
Removes an item from the list
>>> genome.remove(44)
Parameter: | value – value to be added |
---|
Assigns a list to the internal list of the chromosome
Parameter: | lst – the list to assign the internal list of the chromosome |
---|
Set the internal params
>>> genome.setParams(rangemin=0, rangemax=100, gauss_mu=0, gauss_sigma=1)
Note
All the individuals of the population shares this parameters and uses the same instance of this dict.
Parameter: | args – this params will saved in every chromosome for genetic op. use |
---|