El documento presenta una estrategia para resolver el problema de asignación cuadrática utilizando una metaheurística de búsqueda tabu con memoria a corto plazo, procesando los resultados con scripts en Bash y AWK. La estrategia incluye desarrollar una aplicación con ParadisEO, ejecutarla secuencialmente para diferentes iteraciones y procesar los resultados con AWK para organizarlos de manera más legible.
1. Procesamiento de Resultados en AWK
Caso Pr´ctico: B´squeda Tab´ en la soluci´n del
a u u o
Problema de Asignaci´n Cuadr´tica
o a
I.S.C. Dagoberto R. Quevedo Orozco
dago@yalma.fime.uanl.mx
Facultad de Ingenier´ de Mec´nica y El´ctrica
ıa a e
Posgrado en Ingenier´ de Sistemas
ıa
Universidad Aut´noma de Nuevo Le´n
o o
13 de febrero de 2012
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 1/8
2. Problema de Asignaci´n Cuadr´tica (QAP)
o a
Objetivo
Asignar un conjunto de facilidades a un conjunto de localidades. Se busca
que el costo, en funci´n de la distancia y flujo, sea el m´
o ınimo.
Oficina 1 A B Oficina 3
Mejora del 28%
A A
1 2 3 4 A B C D
Oficina 2 1 0 1 6 3 A 0 8 2 5 Oficina 4
B B
2 1 0 1 2 B 8 0 6 9
Oficina 3 3 6 1 0 0 C 2 6 0 7
Oficina 1
C C
4 3 2 0 0 D 5 9 7 0
Oficina 4 Oficina 2
D Flujos Distancias D
Figura: Soluci´n al Problema de Asignaci´n Cuadr´tica, mejora del 28 %.
o o a
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 2/8
3. Notaci´n de Grafos
o
Entre las facilidades i y j se tiene el flujo aij (i, j = 1, ..., n). Entre locali-
dades i y j se tiene la distancia bij (i, j = 1, ..., n).
b1 a1 44 a4
5 2 11
10
b2 3 b4 21 9
6 4 30
b3 a2 12 a3
Figura: Asignaci´n de facilidades an a localidades bn , cuando n = 4.
o
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 3/8
4. Modelo Combinatorio
Funci´n objetivo
o
n n
m´ f (ϕ) =
ın aij bϕiϕj
ϕ∈Π(n) i=1 j=1
Donde A = (aij ) en la matriz de flujos y B = (bij ) la matriz de distan-
cias, A y B son matrices n × n. Π(n) es el conjunto de todas las posibles
permutaciones de 1, ..., n y ϕi representa la localidad de la facilidad i en la
permutaci´n ϕ ∈ Π(n).
o
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 4/8
5. Complejidad Computacional
Complejidad
El problema de asignaci´n cuadr´tica es N P-duro. Resolver de forma exacta
o a
implicar´ un algoritmo con un orden de operaciones de O(n!).
ıa
Generar el conjunto de permutaciones Π(n), para las localidades {a, b, c}.
ϕ1 = {a1 , b2 , c3 } ⇒ f (ϕ1 ) = 133
ϕ2 = {a1 , c2 , b3 } ⇒ f (ϕ2 ) = 183
ϕ3 = {b1 , a2 , 33 } ⇒ f (ϕ3 ) = 102∗
Π(n) =
ϕ4 = {b1 , c2 , a3 } ⇒ f (ϕ4 ) = 413
ϕ5 = {c1 , a2 , b3 } ⇒ f (ϕ5 ) = 912
ϕ6 = {c1 , b2 , a3 } ⇒ f (ϕ6 ) = 119
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 5/8
6. Estrategia de Soluci´n
o
a) Se propone una metaheur´ ıstica B´squeda Tab´ con memoria a corto
u u
plazo, utilizando las librer´ de ParadisEO para el desarrollo de la
ıas
aplicaci´n.
o
b) Un script en Bash para realizar la ejecuci´n secuencial de la aplicaci´n
o o
para diferentes valores en el n´mero de iteraciones; se calcula el tama˜o
u n
de la lista tab´ en un rango eficiente entre [0,9n − 1,1n].
u
b) Los resultados son procesados por un script en AWK el cual organiza
de manera m´s legible los datos generados, agrupando por categor´
a ıa
de instancia de prueba.
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 6/8
7. Estrategia de Soluci´n
o
a) Se propone una metaheur´ ıstica B´squeda Tab´ con memoria a corto
u u
plazo, utilizando las librer´ de ParadisEO para el desarrollo de la
ıas
aplicaci´n.
o
b) Un script en Bash para realizar la ejecuci´n secuencial de la aplicaci´n
o o
para diferentes valores en el n´mero de iteraciones; se calcula el tama˜o
u n
de la lista tab´ en un rango eficiente entre [0,9n − 1,1n].
u
b) Los resultados son procesados por un script en AWK el cual organiza
de manera m´s legible los datos generados, agrupando por categor´
a ıa
de instancia de prueba.
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 6/8
8. Estrategia de Soluci´n
o
a) Se propone una metaheur´ ıstica B´squeda Tab´ con memoria a corto
u u
plazo, utilizando las librer´ de ParadisEO para el desarrollo de la
ıas
aplicaci´n.
o
b) Un script en Bash para realizar la ejecuci´n secuencial de la aplicaci´n
o o
para diferentes valores en el n´mero de iteraciones; se calcula el tama˜o
u n
de la lista tab´ en un rango eficiente entre [0,9n − 1,1n].
u
b) Los resultados son procesados por un script en AWK el cual organiza
de manera m´s legible los datos generados, agrupando por categor´
a ıa
de instancia de prueba.
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 6/8
10. Bibliograf´
ıa
A. Robbins. GAWK: Effective AWK Programming, 4o Edici´n, O’Reilly
o
& Associates, Inc., Sebastopol, CA, EUA, 2011.
E. Burkard, E. Cela, M. Pardalos, y S. Pitsoulis. The quadratic as-
¸
signment problem. En D.Z. Du y P. M. Pardalos, editores, Handbook
of Combinatorial Optimization, volumen 3, p´ginas 241–337. Kluwer,
a
Boston, EUA, 1998.
E. Burkard, S. Karisch, y F. Rendl. QAPLIB - A quadratic assignment
problem library. Journal of Global Optimization, 10:391–403, 1997.
E. Talbi, J. Boisson, J. Humeau, T. Legrand, A. Liefooghe, L. Jour-
dan, N. Melab, A. Tantar, M. Fatene, T. Luong, y A. Khanafer. INRIA
ParadisEO. http://paradiseo.gforge.inria.fr.
Dagoberto R. Quevedo Orozco (UANL) Procesamiento con AWK 13 de febrero de 2012 8/8