# {py:mod}`evox.algorithms.so.de_variants.sade` ```{py:module} evox.algorithms.so.de_variants.sade ``` ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`SaDE ` - ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.SaDE :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`rand_1_bin ` - ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.rand_1_bin :summary: ``` * - {py:obj}`rand_2_bin ` - ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.rand_2_bin :summary: ``` * - {py:obj}`rand2best_2_bin ` - ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.rand2best_2_bin :summary: ``` * - {py:obj}`current2rand_1 ` - ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.current2rand_1 :summary: ``` ```` ### API ````{py:data} rand_1_bin :canonical: evox.algorithms.so.de_variants.sade.rand_1_bin :value: > [0, 0, 1, 0] ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.rand_1_bin ``` ```` ````{py:data} rand_2_bin :canonical: evox.algorithms.so.de_variants.sade.rand_2_bin :value: > [0, 0, 2, 0] ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.rand_2_bin ``` ```` ````{py:data} rand2best_2_bin :canonical: evox.algorithms.so.de_variants.sade.rand2best_2_bin :value: > [0, 1, 2, 0] ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.rand2best_2_bin ``` ```` ````{py:data} current2rand_1 :canonical: evox.algorithms.so.de_variants.sade.current2rand_1 :value: > [0, 0, 1, 2] ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.current2rand_1 ``` ```` `````{py:class} SaDE(pop_size: int, lb: torch.Tensor, ub: torch.Tensor, diff_padding_num: int = 9, LP: int = 50, device: torch.device | None = None) :canonical: evox.algorithms.so.de_variants.sade.SaDE Bases: {py:obj}`evox.core.Algorithm` ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.SaDE ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.SaDE.__init__ ``` ````{py:method} _get_strategy_ids(strategy_p: torch.Tensor, device: torch.device) :canonical: evox.algorithms.so.de_variants.sade.SaDE._get_strategy_ids ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.SaDE._get_strategy_ids ``` ```` ````{py:method} _vmap_get_strategy_ids(strategy_p: torch.Tensor, device: torch.device) :canonical: evox.algorithms.so.de_variants.sade.SaDE._vmap_get_strategy_ids ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.SaDE._vmap_get_strategy_ids ``` ```` ````{py:method} step() :canonical: evox.algorithms.so.de_variants.sade.SaDE.step ```{autodoc2-docstring} evox.algorithms.so.de_variants.sade.SaDE.step ``` ```` `````