Se refiere a una decodificación de búsqueda de armonía.
El algoritmo encuentra la minimización de una función objetivo [matemática] f (\ bold x) = f (x_1,…, x_n) [/ matemática].
Muy clásico: s Comience con un conjunto de m vectores [math] (\ bold x ^ 1,…, x ^ m) [/ math], elija un nuevo vector [math] \ bold x ‘[/ math] y reemplace el peor vector de su conjunto, por [math] \ bold x ‘[/ math], si [math] \ bold x’ [/ math] es mejor que su peor vector. Iterar hasta la convergencia o iteración máxima.
- Después de aprender Python (junto con algoritmos y estructuras de datos), ¿sería beneficioso para mí aprender Selenium o debería seguir alguna otra búsqueda? Ya trabajo con Node.js, ¿hay algo más además de Django?
- ¿Debo aprender Algoritmos si soy ingeniero aeroespacial?
- ¿Las ventajas del arreglo lineal desaparecen si el arreglo es demasiado corto? ¿Por qué veo 4-6 cajas de cajas?
- ¿Cuál es mi concepto erróneo con respecto al algoritmo de clasificación de fusión aquí?
- ¿Qué es una matriz en Java? ¿Y cuál es un ejemplo de su uso?
Toda la originalidad radica en la forma de elegir el nuevo vector [math] \ bold x ‘[/ math]. Para cada una de sus coordenadas [matemáticas] x’_i [/ matemáticas], puede:
- elija un número totalmente aleatorio (marque todas las restricciones, si las hay, se cumplen)
- elija la coordenada de un vector [matemática] \ negrita x ^ k [/ matemática] en su conjunto de vectores m , todos los vectores tienen la misma posibilidad de ser tomados. En ese caso, también puede incrementar (o no) el coodinado en una pequeña cantidad [math] x’_1 = x ^ k_i + \ delta [/ math].
Los parámetros del algoritmo son
- hms = m el número de vectores.
- hmcr la probabilidad de elegir la opción (2) en lugar de (1) anterior.
- par la probabilidad de agregar un valor pequeño en la opción (2)
- [math] \ delta [/ math] el valor pequeño, que se fija cuando [math] x_i [/ math] es discreto y el máximo de un ajuste aleatorio si [math] x_i [/ math] es continuo.