metaheuristic_designer.simple.genetic_algorithm module#

Ready-to-run Genetic Algorithm wrappers.

genetic_algorithm_binary(objfunc, mutated_bits=1, population_size=100, encoding=None, rng=None, **kwargs)[source]#

Genetic Algorithm for binary-coded vectors.

Return type:

Algorithm

Parameters:
objfuncObjectiveFunc

The objective function to optimize.

mutated_bitsint, optional

Number of bits flipped per mutation (default 1).

population_sizeint, optional

Population size (default 100).

encodingEncoding, optional

Encoding; defaults to TypeCastEncoding (int → bool).

rngRNGLike, optional

Random seed or generator.

**kwargs

Forwarded to Algorithm.

Parameters:
  • objfunc (ObjectiveFunc)

  • mutated_bits (int)

  • population_size (int)

  • encoding (Encoding | None)

  • rng (int | Generator | None)

genetic_algorithm_permutation(objfunc, swapped_positions=2, population_size=100, encoding=None, rng=None, **kwargs)[source]#

Genetic Algorithm for permutation-coded vectors.

Return type:

Algorithm

Parameters:
objfuncObjectiveFunc

The objective function to optimize.

swapped_positionsint, optional

Number of positions swapped per mutation (default 2).

population_sizeint, optional

Population size (default 100).

encodingEncoding, optional

Encoding applied to the genotype.

rngRNGLike, optional

Random seed or generator.

**kwargs

Forwarded to Algorithm.

Parameters:
  • objfunc (ObjectiveFunc)

  • swapped_positions (int)

  • population_size (int)

  • encoding (Encoding | None)

  • rng (int | Generator | None)

genetic_algorithm_discrete(objfunc, resampled_components=1, population_size=100, encoding=None, rng=None, **kwargs)[source]#

Genetic Algorithm for integer-coded vectors.

Return type:

Algorithm

Parameters:
objfuncObjectiveFunc

The objective function to optimize.

resampled_componentsint, optional

Number of components resampled per mutation (default 1).

population_sizeint, optional

Population size (default 100).

encodingEncoding, optional

Encoding applied to the genotype.

rngRNGLike, optional

Random seed or generator.

**kwargs

Forwarded to Algorithm.

Parameters:
  • objfunc (ObjectiveFunc)

  • resampled_components (int)

  • population_size (int)

  • encoding (Encoding | None)

  • rng (int | Generator | None)

genetic_algorithm_real(objfunc, mutation_strength=0.01, mutated_components=1, population_size=100, encoding=None, rng=None, **kwargs)[source]#

Genetic Algorithm for real-coded vectors.

Return type:

Algorithm

Parameters:
objfuncObjectiveFunc

The objective function to optimize.

mutation_strengthfloat, optional

Standard deviation of Gaussian mutation (default 1e-2).

mutated_componentsint, optional

Number of components mutated per individual (default 1).

population_sizeint, optional

Population size (default 100).

encodingEncoding, optional

Encoding applied to the genotype.

rngRNGLike, optional

Random seed or generator.

**kwargs

Forwarded to Algorithm.

Parameters:
  • objfunc (ObjectiveFunc)

  • mutation_strength (float)

  • mutated_components (int)

  • population_size (int)

  • encoding (Encoding | None)

  • rng (int | Generator | None)