G2DList – the 2D list chromosome

This is the 2D 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. This chromosome class extends the GenomeBase.GenomeBase.

class G2DList.G2DList(height, width)

G2DList Class - The 2D List chromosome representation

Examples

The instantiation
>>> genome = G2DList.G2DList(10, 10)
The instantiation
>>> g = G1DList(10)
Compare
>>> genome2 = genome1.clone()
>>> genome2 == genome1
True
Iteration
>>> for row in genome:
>>>   print row
[1, 3, 4, 1]
[7, 5, 3, 4]
[9, 0, 1, 2]
Size, slice, get/set, append
>>> len(genome)
3
>>> genome
(...)
[1, 3, 4, 1]
[7, 5, 3, 4]
[9, 0, 1, 2]
>>> genome[1][2]
3
>>> genome[1] = [666, 666, 666, 666]
>>> genome
(...)
[1, 3, 4, 1]
[666, 666, 666, 666]
[9, 0, 1, 2]
Parameters:
  • height – the number of rows
  • width – the number of columns
clearList()
Remove all genes from Genome
clone()

Return a new instace copy of the genome

Return type:the G2DList clone instance
copy(g)

Copy genome to ‘g’

Example:
>>> genome_origin.copy(genome_destination)
Parameter:g – the destination G2DList instance
crossover

This is the reproduction function slot, the crossover. You can change the default crossover method using:

genome.crossover.set(Crossovers.G2DListCrossoverSingleHPoint)
evaluate(**args)

Called to evaluate genome

Parameter:args – this parameters will be passes to the evaluator
evaluator

This is the evaluation function slot, you can add a function with the set method:

genome.evaluator.set(eval_func)
getFitnessScore()

Get the Fitness Score of the genome

Return type:genome fitness score
getHeight()
Return the height (lines) of the List
getItem(x, y)

Return the specified gene of List

Example:
>>> genome.getItem(3, 1)
666
Parameters:
  • x – the x index, the column
  • y – the y index, the row
Return type:

the item at x,y position

getParam(key, nvl=None)

Gets an initialization parameter

Example:
>>> genome.getParam("rangemax")
100
Parameters:
  • key – the key of param
  • nvl – if the key doesn’t exist, the nvl will be returned
getRawScore()

Get the Raw Score of the genome

Return type:genome raw score
getSize()

Returns a tuple (height, widht)

Example:
>>> genome.getSize()
(3, 2)
getWidth()
Return the width (lines) of the List
initializator

This is the initialization function of the genome, you can change the default initializator using the function slot:

genome.initializator.set(Initializators.G2DListInitializatorAllele)

In this example, the initializator Initializators.G2DListInitializatorAllele() will be used to create the initial population.

initialize(**args)

Called to initialize genome

Parameter:args – this parameters will be passed to the initializator
mutate(**args)

Called to mutate the genome

Parameter:args – this parameters will be passed to the mutator
mutator

This is the mutator function slot, you can change the default mutator using the slot set function:

genome.mutator.set(Mutators.G2DListMutatorIntegerGaussian)
resetStats()
Clear score and fitness of genome
setItem(x, y, value)

Set the specified gene of List

Example:
>>> genome.setItem(3, 1, 666)
Parameters:
  • x – the x index, the column
  • y – the y index, the row
  • value – the value
setParams(**args)

Set the initializator params

Example:
>>> genome.setParams(rangemin=0, rangemax=100, gauss_mu=0, gauss_sigma=1)
Parameter:args – this params will saved in every chromosome for genetic op. use

Recent Blog Posts

Previous topic

G1DList – the 1D list chromosome

Next topic

Graphical Analysis - Plots

This Page