Escolar Documentos
Profissional Documentos
Cultura Documentos
La idea que vamos a seguir en PSO comienza con un inicio similar, situando
partículas al azar en el espacio de búsqueda, pero dándoles la posibilidad de
que se muevan a través de él de acuerdo a unas reglas que tienen en cuenta
el conocimiento personal de cada partícula y el conocimiento global del
enjambre. Veremos que proporcionándoles una capacidad simple de
movimiento por este paisaje y de comunicación entre ellas pueden llegar a
descubrir valores particularmente altos para f(x,y) gastando pocos recursos
computacionales (cálculos, memoria y tiempo).
¿Cómo funciona?
Cada partícula (individuo) tiene una posición, p⃗ (que en 2 dimensiones vendrá
determinado por un vector de la forma (x,y)), en el espacio de búsqueda y una
velocidad, v⃗ (que en 2 dimensiones vendrá determinado por un vector de la
forma (vx,vy)), con la que se mueve a través del espacio. Además, como
partículas de un mundo real físico, tienen una cantidad de inercia, que los
mantiene en la misma dirección en la que se movían, así como una aceleración
(cambio de velocidad), que depende principalmente de dos características:
1. Cada partícula es atraída hacia la mejor localización que ella,
personalmente, ha encontrado en su historia (mejor personal).
2. Cada partícula es atraída hacia la mejor localización que ha sido
encontrada por el conjunto de partículas en el espacio de búsqueda
(mejor global).
La fuerza con que las partículas son empujadas en cada una de estas
direcciones depende de dos parámetros que pueden ajustarse (atracción-al-
mejor-personal y atracción-al-mejor-global), de forma que a medida que las
partículas se alejan de estas localizaciones mejores, la fuerza de atracción es
mayor. También se suele incluir un factor aleatorio que influye en cómo las
partículas son empujadas hacia estas localizaciones.
El paisaje se obtiene asignando aleatoriamente valores a cada uno de los
puntos de la malla, para posteriormente aplicar un proceso de difusión que
suaviza los valores obtenidos, lo que proporciona un espacio con numerosos
mínimos locales (valles) y máximos locales (colinas), por lo que su optimización
por medios más clásicos (como el ascenso de la colina) es dificultosa. Esta
función ha sido creada así solo con fines ilustrativos, ya que habitualmente en
aplicaciones reales del PSO la posición de las partículas pueden
corresponderse con parámetros diversos del problema (por ejemplo, de
predicción de un mercado de valores), y la función no tendrá las restricciones
ni características que aquí se imponen (en el mismo ejemplo, podría evaluarse
por medio de los datos históricos).
El algoritmo que sigue PSO se esboza a grandes rasgos en el siguiente código:
Referencia:
http://www.cs.us.es/~fsancho/?e=70