evox.algorithms.so.es_variants.des

Module Contents

Classes

DES

The implementation of the DES algorithm.

API

class evox.algorithms.so.es_variants.des.DES(pop_size: int, center_init: torch.Tensor, temperature: float = 12.5, sigma_init: float = 0.1, device: torch.device | None = None)[source]

Bases: evox.core.Algorithm

The implementation of the DES algorithm.

Reference: Discovering Evolution Strategies via Meta-Black-Box Optimization (https://arxiv.org/abs/2211.11260)

This code has been inspired by or utilizes the algorithmic implementation from evosax. More information about evosax can be found at the following URL: GitHub Link: https://github.com/RobertTLange/evosax

Initialization

Initialize the DES algorithm with the given parameters.

Parameters:
  • pop_size – The size of the population.

  • center_init – The initial center of the population. Must be a 1D tensor.

  • temperature – The temperature parameter for the softmax. Defaults to 12.5.

  • sigma_init – The initial standard deviation of the noise. Defaults to 0.1.

  • device – The device to use for the tensors. Defaults to None.

step()[source]

Step the DES algorithm by sampling the population, evaluating the fitness, and updating the center.

record_step()[source]