# {py:mod}`evox.algorithms.mo.rvea` ```{py:module} evox.algorithms.mo.rvea ``` ```{autodoc2-docstring} evox.algorithms.mo.rvea :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`RVEA ` - ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA :summary: ``` ```` ### API `````{py:class} 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: typing.Optional[typing.Callable] = None, mutation_op: typing.Optional[typing.Callable] = None, crossover_op: typing.Optional[typing.Callable] = None, device: torch.device | None = None) :canonical: evox.algorithms.mo.rvea.RVEA Bases: {py:obj}`evox.core.Algorithm` ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA.__init__ ``` ````{py:method} init_step() :canonical: evox.algorithms.mo.rvea.RVEA.init_step ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA.init_step ``` ```` ````{py:method} _rv_adaptation(pop_obj: torch.Tensor) :canonical: evox.algorithms.mo.rvea.RVEA._rv_adaptation ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA._rv_adaptation ``` ```` ````{py:method} _no_rv_adaptation(pop_obj: torch.Tensor) :canonical: evox.algorithms.mo.rvea.RVEA._no_rv_adaptation ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA._no_rv_adaptation ``` ```` ````{py:method} _mating_pool() :canonical: evox.algorithms.mo.rvea.RVEA._mating_pool ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA._mating_pool ``` ```` ````{py:method} _update_pop_and_rv(survivor: torch.Tensor, survivor_fit: torch.Tensor) :canonical: evox.algorithms.mo.rvea.RVEA._update_pop_and_rv ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA._update_pop_and_rv ``` ```` ````{py:method} step() :canonical: evox.algorithms.mo.rvea.RVEA.step ```{autodoc2-docstring} evox.algorithms.mo.rvea.RVEA.step ``` ```` `````