GOLEM adapters

Adapters of GEFEST modules to use optimization algorithms from GOLEM.

Sampler adapter

class gefest.core.opt.adapters.factories.StructureFactory(sampler: Sampler, adapter: BaseOptimizationAdapter)[source]

Bases: Callable[[GraphRequirements, int], Graph]

GOLEM RandomGraphFactory version of GEFEST sampler.

__call__(*args, **kwargs) GraphDelegate[source]

Generates ranom GOLEM graph.

Mutation and crossover adapter

class gefest.core.opt.adapters.operator.OperationWrap(executor, operations, operation_chance, operations_probs, domain, postproc_func, postprocess_rules, attempts)[source]

Bases: object

GOLEM wrap for GEFEST mutations and crossovers.

__call__(*args, **kwargs)[source]

Executes mutation or crossover.

to_json() dict[str, Any][source]

Serializes object and ignores unrelevant fields.

Structure adapter

class gefest.core.opt.adapters.structure.StructureAdapter(domain: Domain)[source]

Bases: BaseOptimizationAdapter

Adapter for GOLEM.

_adapt(adaptee: Structure) GraphDelegate[source]

Convert Structure into OptGraph.

_restore(opt_graph: GraphDelegate) Structure[source]

Convert OptGraph into Structure.

Configuration translators

gefest.core.opt.adapters.configuration_mapping.map_into_graph_requirements(opt_params: OptimizationParams) GraphRequirements[source]

Translates OptimizationParams into GraphRequirements.

gefest.core.opt.adapters.configuration_mapping.map_into_graph_generation_params(opt_params: OptimizationParams) GraphGenerationParams[source]

Translates OptimizationParams into GraphGenerationParams.

gefest.core.opt.adapters.configuration_mapping.map_into_gpa(opt_params: OptimizationParams) GPAlgorithmParameters[source]

Translates OptimizationParams into GPAlgorithmParameters.