evox.algorithms.mo.rvea
¶
Module Contents¶
Classes¶
A tensorized implementation of the Reference Vector Guided Evolutionary Algorithm (RVEA) for multi-objective optimization problems. |
API¶
- class evox.algorithms.mo.rvea.RVEA(pop_size: int, n_objs: int, lb: torch.Tensor, ub: torch.Tensor, alpha: float = 2.0, fr: float = 0.1, max_gen: int = 100, selection_op: Optional[Callable] = None, mutation_op: Optional[Callable] = None, crossover_op: Optional[Callable] = None, device: torch.device | None = None)[source]¶
Bases:
evox.core.Algorithm
A tensorized implementation of the Reference Vector Guided Evolutionary Algorithm (RVEA) for multi-objective optimization problems.
- References:
[1] R. Cheng, Y. Jin, M. Olhofer, and B. Sendhoff, “A reference vector guided evolutionary algorithm for many-objective optimization,” IEEE Transactions on Evolutionary Computation, vol. 20, no. 5, pp. 773-791, 2016. Available: https://ieeexplore.ieee.org/document/7386636
[2] Z. Liang, T. Jiang, K. Sun, and R. Cheng, “GPU-accelerated Evolutionary Multiobjective Optimization Using Tensorized RVEA,” in Proceedings of the Genetic and Evolutionary Computation Conference, ser. GECCO ’24, 2024, pp. 566–575. Available: https://doi.org/10.1145/3638529.3654223
Initialization
Initialize the RVEA algorithm with the given parameters.
- Parameters:
pop_size – The size of the population.
n_objs – The number of objective functions in the optimization problem.
lb – The lower bounds for the decision variables.
ub – The upper bounds for the decision variables.
alpha – A parameter for controlling the rate of change of penalty. Defaults to 2.
fr – The frequency of reference vector adaptation. Defaults to 0.1.
max_gen – The maximum number of generations. Defaults to 100.
selection_op – The selection operation for evolutionary strategy (optional).
mutation_op – The mutation operation (optional).
crossover_op – The crossover operation (optional).
device – The device on which computations should run (optional).