OppBasedDE
OppBasedDE (Opposition-based differential evolution)
- class DETAlgs.opposition_based.OppBasedDE(params: OppBasedData, db_conn=None, db_auto_write=False)[source]
Bases:
BaseAlgLinks: https://ieeexplore.ieee.org/document/4358759
References: S. Rahnamayan, H. R. Tizhoosh and M. M. A. Salama, “Opposition-Based Differential Evolution,” in IEEE Transactions on Evolutionary Computation, vol. 12, no. 1, pp. 64-79, Feb. 2008, doi: 10.1109/TEVC.2007.894200.
- property nfe: int
Number of function evaluations performed so far.
- run()
- write_results_to_database(results_data)
- class detpy.DETAlgs.data.alg_data.OppBasedData(population_size: int = 100, max_nfe: int = 100000, dimension: int = 10, additional_stop_criteria: detpy.models.stop_condition.stop_condition.StopCondition = <detpy.models.stop_condition.never_stop_condition.NeverStopCondition object at 0x7f136577ee40>, lb: list = <factory>, ub: list = <factory>, optimization_type: detpy.models.enums.optimization.OptimizationType = <OptimizationType.MINIMIZATION: 'minimization'>, boundary_constraints_fun: detpy.models.enums.boundary_constrain.BoundaryFixing = <BoundaryFixing.RANDOM: 'random'>, function: detpy.models.fitness_function.FitnessFunctionBase = None, log_population: bool = False, parallel_processing: Optional[list] = None, show_plots: bool = True, mutation_factor: float = 0.1, crossover_rate: float = 0.1, crossing_type: detpy.models.enums.crossingtype.CrossingType = <CrossingType.BINOMIAL: 'binomial'>, y: int = 1, base_vector_schema: detpy.models.enums.basevectorschema.BaseVectorSchema = <BaseVectorSchema.CURRENT: 'current'>, max_nfc: float = 0.1, jumping_rate: float = 0.1)[source]
Bases:
BaseData- additional_stop_criteria: StopCondition = <detpy.models.stop_condition.never_stop_condition.NeverStopCondition object>
- base_vector_schema: BaseVectorSchema = 'current'
- boundary_constraints_fun: BoundaryFixing = 'random'
- crossing_type: CrossingType = 'binomial'
- crossover_rate: float = 0.1
- dimension: int = 10
- function: FitnessFunctionBase = None
- jumping_rate: float = 0.1
- lb: list
- log_population: bool = False
- max_nfc: float = 0.1
- max_nfe: int = 100000
- mutation_factor: float = 0.1
- optimization_type: OptimizationType = 'minimization'
- parallel_processing: list | None = None
- population_size: int = 100
- show_plots: bool = True
- ub: list
- y: int = 1