Este documento trata sobre la optimización con algoritmos heurísticos en paralelo. Explica conceptos como programación paralela, optimización, algoritmos genéticos y optimización por enjambre de partículas. También incluye demostraciones de cómo funcionan estos algoritmos para resolver problemas de optimización continua y combinatoria de forma paralela y distribuida.
4. Arquitecturas paralelas
●
Un cluster es un conjunto de computadoras que
intercambian mensajes a través de una red,
para emular una máquina paralela
N o d o M a e s tr o
100 m bps
Factores a considerar:
Costo
Velocidad de Interconexión de los procesadores
`
N o d o E s c la v o 1
Tproc = Tcomp+Tcolas
`
N o d o E s c la v o N - 1
`
N o d o E s c la v o N
7. ¿Qué es Linux?
●
Linux es un Kernel
●
Con licencia GPL v2
●
Monolítico
●
Más de 13 millones de
líneas de código
●
Versión actual 3.7
●
Altamente portable
DEC Alpha, ARM, AVR32, Blackfin, ETRAX CRIS, FR-V, H8, IA64, M32R, m68k,
MicroBlaze, MIPS, MN10300, PA-RISC, PowerPC, System/390, SuperH, SPARC,
x86, x86 64 y Xtensa
●
Escrito en lenguaje C, junto a unas pequeñas
secciones de código escritas en lenguaje
ensamblador.
8. ¿Qué es una distribución?
●
●
●
Es un conjunto de utilerías que permiten instalar
fácilmente un kernel con una serie de paquetes.
También se conocen
como distros
Algunas se basan en
FreeBSD y muchas
en Linux
15. Optimización en espacios
contínuos
●
minimización:
⃗
min(f ( X ))
n
⃗
f ( X ): ℜ → ℜ
⃗
⃗
⃗
⃗
X o ∈ℜ∣f ( X o )≤f ( X )∀ X ∈ℜ
●
maximización:
⃗
max (f ( X ))
⃗ ): ℜn → ℜ
f (X
⃗o ∈ℜ∣f ( X o )≥f ( X )∀ X ∈ℜ
⃗
⃗
⃗
X
●
equivalencia:
⃗
⃗
min(f ( X ))=max (−f ( X ))
16. Ejemplos de problemas
continuos difíciles
D
f ( x )=∑ ( x i 2 −10 cos (2 Π x i )+ 10 )
i =1
Func. de Rastrigin
f (x )=−20 exp (−0.2
√
1
D
D
∑
i =1
x i 2 )−exp (
1 D
cos (2 Π x i ))+ 20 + e
D∑
i =1
Func. de Ackley
17. Optimización combinatoria
●
●
●
El espacio de búsqueda es discreto.
Se trata de buscar una combinación de elementos que
maximicen o minimicen una función
Ejemplo clásico el problema del agente viajero (TSP)
[1, 2, 5, 4, 6, 3]
18. Complejidad
●
●
●
●
●
●
●
●
●
●
●
●
Problemas P, NP, NP completo.
Complejidad:
Constante (la mejor y objetivo a buscar) O(1)
Logarítmica (muy buena) O(log n)
Lineal O(n)
Lineal*logarítmica O(n log n)
Cuadrática O(n2)
Polinomial (mala) O(na) con a>2
Exponencial (muy mala) O(an) con a>2
Factorial (la peor) O(n!)
TSP
Cantidad de permutaciones de tamaño n = n!
Por ejemplo con 13 ciudades:
13! = 6,227'020,800
20. AG
Algoritmos Genéticos
John H. Holland “Adaptación en Sistemas
Naturales y Artificiales” (1975) Universidad
de Michigan
Inspirados en:
Evolución natural de poblaciones.
Darwin (supervivencia del más apto).
Mendel, (transferencia de información genética).
25. Velocidad y Movimiento
⃗
⃗ ⃗
⃗ ⃗
V⃗ = V t w +c 1 r 1 ( Y − X )+c 2 r 2 ( Y g − X )
t+1
Componente inercial
Componente cognitivo
Componente social
⃗ ⃗
X⃗+1= X t + V t
t