Técnicas Heurísticas para Problemas de Diseño en ...
Transcript of Técnicas Heurísticas para Problemas de Diseño en ...
TÉCNICAS HEURÍSTICAS Y PARALELAS PARA PROBLEMAS DE DISEÑO EN
TELECOMUNICACIONES
Investigación
REUNIÓN DEL GRUPO DE INVESTIGACIÓN COMPUTACIÓN CIENTÍFICA Y PROGRAMACIÓN PARALELA 15 DICIEMBRE 2010, FACULTAD DE INFORMÁTICA - UNIVERSIDAD DE MURCIA
JOSÉ CEFERINO ORTEGA CARRETERO Ponente:
Director: DOMINGO GIMÉNEZ CÁNOVAS
Contenidos
1. Introducción
2. Análisis de las Herramientas de Optimización
3. Aplicación a la Síntesis de Filtros
4. Conclusiones y Trabajos Futuros
Introducción (I)
Problema de Síntesis de Filtros con Resonadores Acoplados
Teoría de optimización
Sujeto a
Introducción (II)
Técnicas de Optimización Heurísticas
Técnicas Exhaustivas:
Backtracking
Branch & Bound
Técnicas No Exhaustivas
Algoritmos Genéticos
Búsqueda Tabú
Temple Simulado
Scatter Search
GRASP
Contenidos
1. Introducción
2. Análisis de las Herramientas de Optimización
3. Aplicación a la Síntesis de Filtros
4. Conclusiones y Trabajos Futuros
Herramientas de Optimización Toolboxes de optimización de MATLAB
Optimization Toolbox
Genetic Algorithm and Direct Search Toolbox
Búsqueda Directa
Algoritmos Genéticos
Temple Simulado
Otras Técnicas de Optimización
Scatter Search
Backtracking
Contenidos
1. Introducción
2. Análisis de las Herramientas de Optimización
3. Aplicación a la Síntesis de Filtros
4. Conclusiones y Trabajos Futuros
Síntesis de Filtros (I)
Análisis del Problema de Síntesis de Filtros con Resonadores Acoplados
Filtros basados en resonadores de microondas acoplados
Características de los filtros
Función de transferencia
Topología (Cometa, Transversal y 2-Trisection ord. 3)
Número de parámetros de diseño (8 ó 9)
Rango de valores (entre -5 y 5)
Síntesis de Filtros (II)
2 Trisection ord. 3, ceros -5 y -3 Cometa, ceros en -3 y 3
-10 -8 -6 -4 -2 0 2 4 6 8 10-100
-90
-80
-70
-60
-50
-40
-30
-20
-10
0
In s11
In s21
-10 -8 -6 -4 -2 0 2 4 6 8 10-70
-60
-50
-40
-30
-20
-10
0
In s11
In s21
Síntesis de Filtros (III)
Cometa, fitness 10-13 Cometa, fitness 10-5
-10 -8 -6 -4 -2 0 2 4 6 8 10-70
-60
-50
-40
-30
-20
-10
0
In s11
In s21
Target s11
Target s21
-10 -8 -6 -4 -2 0 2 4 6 8 10-80
-70
-60
-50
-40
-30
-20
-10
0
In s11
In s21
Target s11
Target s21
-10 -8 -6 -4 -2 0 2 4 6 8 10-70
-60
-50
-40
-30
-20
-10
0
In s11
In s21
Target s11
Target s21
Cometa, fitness 10-1
Resultados Experimentales (I)
fmincon
Pertenece al Optimization Toolbox de MATLAB
Búsqueda Local
Parámetros en estudio:
LargeScale
Algorithm
Resultados Experimentales (II) fmincon
0
0,02
0,04
0,06
0,08
0,1
0,12
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto de LargeScale & Algorithm en el fitness
off - active-set
off - interior-point
on - active-set
on - interior-point
0
0,5
1
1,5
2
2,5
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto de LargeScale & Algorithm en el tiempo
off - active-set
off - interior-point
on - active-set
on - interior-point
Resultados Experimentales (III)
patternsearch (Búsqueda Directa) Direct Search and Genetic Algorithm Toolbox de
MATLAB Búsqueda Local Parámetros en estudio:
InitialMeshSize MeshContraction MeshExpansion ScaleMesh PollMethod CompletePoll PollingOrder SearchMethod CompleteSearch
Resultados Experimentales (IV) patternsearch
0
0,05
0,1
0,15
0,2
0,25
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto de los parámetros SearchMethod & CompleteSearch en el fitness
[] - off
GPSPositiveBasisNp1 - off
GPSPositiveBasisNp1 - on
MADSPositiveBasis2N - off
MADSPositiveBasis2N - on
MADSPositiveBasisNp1 - off
MADSPositiveBasisNp1 - on
searchga - off
searchga - on
searchlhs - off
searchlhs - on
searchneldermead - off
searchneldermead - on
0
0,05
0,1
0,15
0,2
0,25
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto del parámetro CompletePoll en el fitness
off
on
0
0,1
0,2
0,3
0,4
0,5
0,6
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto del parámetro PollMethod en el fitness
gpspositivebasis2n
GPSPositiveBasisNp1
MADSPositiveBasis2N
MADSPositiveBasisNp1
Resultados Experimentales (V)
ga (Algoritmo Genético)
Direct Search and Genetic Algorithm Toolbox de MATLAB
Búsqueda Global
Parámetros en estudio: PopulationSize y Generations
EliteCount y CrossoverFraction
FitnessScalingFcn y SelectionFcn
CrossoverFcn y MutationFcn
CreationFcn y HybridFcn
Resultados Experimentales (VI) ga (funciones estándar)
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
0,16
0,18
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro CrossoverFcn en el fitness
crossoverarithmetic
crossoverheuristic
crossoverintermediate
crossoverscattered
crossoversinglepoint
crossovertwopoint
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
0,16
0,18
0,2 0,4 0,6 0,8
fitness
Efecto del parámetro CrossoverFraction en el fitness
2Trisection3 - cr-3y3
2Trisection3 - cr-5y3
Cometa - cr-3y3
Cometa - cr-5y3
Transversal - cr-3y3
Transversal - cr-5y3
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
0,16
0,18
0,2
2 4 6 8
fitness
Efecto del parámetro EliteCount en el fitness
2Trisection3 - cr-3y3
2Trisection3 - cr-5y3
Cometa - cr-3y3
Cometa - cr-5y3
Transversal - cr-3y3
Transversal - cr-5y3
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
0,16
0,18
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro SelectionFcn en el fitness
selectionremainder
selectionroulette
selectionstochunif
selectiontournament
Resultados Experimentales (VII) ga (funciones personalizadas)
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro CreationFcn en el fitness
gacreationlinearfeasible
generapinicial
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
0,16
0,18
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro CrossoverFcn en el fitness
crossoverarithmetic
crossoverheuristic
crossoverintermediate
crossoverscattered
crossoversinglepoint
crossovertwopoint
sscombineadapt
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro MutationFcn en el fitness
mimutacion
mutationadaptfeasible
0
0,02
0,04
0,06
0,08
0,1
0,12
0,14
0,16
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro HybridFcn en el fitness
[]
fmincon
patternsearch
Resultados Experimentales (VIII) ga (funciones personalizadas – tiempos)
0
5
10
15
20
25
30
35
40
45
50
100 400 700 1000
tie
mp
o (s
)
Efecto del parámetro CreationFcn en el tiempo
gacreationlinearfeasible - 2Trisection3 - cr-3y3
gacreationlinearfeasible - 2Trisection3 - cr-5y3
gacreationlinearfeasible - Cometa - cr-3y3
gacreationlinearfeasible - Cometa - cr-5y3
gacreationlinearfeasible - Transversal - cr-3y3
gacreationlinearfeasible - Transversal - cr-5y3
generapinicial - 2Trisection3 - cr-3y3
generapinicial - 2Trisection3 - cr-5y3
generapinicial - Cometa - cr-3y3
generapinicial - Cometa - cr-5y3
generapinicial - Transversal - cr-3y3
generapinicial - Transversal - cr-5y3
0
5
10
15
20
25
30
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
tie
mp
o (s
)
Efecto del parámetro CrossoverFcn en el tiempo
crossoverarithmetic
crossoverheuristic
crossoverintermediate
crossoverscattered
crossoversinglepoint
crossovertwopoint
sscombineadapt
0
5
10
15
20
25
30
35
40
45
50
100 400 700 1000
tie
mp
o (s
)
Efecto del parámetro MutationFcn en el tiempo
mimutacion - 2Trisection3 - cr-3y3
mimutacion - 2Trisection3 - cr-5y3
mimutacion - Cometa - cr-3y3
mimutacion - Cometa - cr-5y3
mimutacion - Transversal - cr-3y3
mimutacion - Transversal - cr-5y3
mutationadaptfeasible - 2Trisection3 - cr-3y3
mutationadaptfeasible - 2Trisection3 - cr-5y3
mutationadaptfeasible - Cometa - cr-3y3
mutationadaptfeasible - Cometa - cr-5y3
mutationadaptfeasible - Transversal - cr-3y3
mutationadaptfeasible - Transversal - cr-5y3
0
5
10
15
20
25
30
35
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
tie
mp
o (s
)
Efecto del parámetro HybridFcn en el tiempo
[]
fmincon
patternsearch
Resultados Experimentales (IX)
simulannealbnd (Temple Simulado) Direct Search and Genetic Algorithm Toolbox de
MATLAB
Búsqueda Local
Parámetros en estudio:
AnnealingFcn
InitialTemperature
ReannealInterval
TemperatureFcn
HybridFcn y HybridInterval
Resultados Experimentales (X) simulannealbnd
0
0,02
0,04
0,06
0,08
0,1
0,12
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro AnnealingFcn en el fitness
annealingboltz
annealingfast
0
0,1
0,2
0,3
0,4
0,5
0,6
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro TemperatureFcn en el fitness
temperatureboltz
temperatureexp
temperaturefast
0
0,5
1
1,5
2
2,5
3
3,5
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
fitness
Efecto del parámetro HybridFcn & HybridInterval en el fitness
[] - never
fmincon - 1
fmincon - 10
fmincon - end
patternsearch - 1
patternsearch - 10
patternsearch - end
Resultados Experimentales (XI)
ScatterSearch (Búsqueda Dispersa) Implementación propia
Búsqueda Global
Parámetros en estudio:
QSetSize y DSetSize
Generations
CreationFnc
OptimFnc y OptimFactor
CombineFnc
HybridFcn
Resultados Experimentales (XII) ScatterSearch
0
0,05
0,1
0,15
0,2
0,25
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto del parámetro CreationFcn sobre el fitness
gacreationlinearfeasible
generapinicial
0
0,1
0,2
0,3
0,4
0,5
0,6
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto del parámetro CombineFnc sobre el fitness
crossoverarithmetic
crossoverheuristic
crossoverintermediate
crossoverscattered
crossoversinglepoint
crossovertwopoint
sscombine
0
0,05
0,1
0,15
0,2
0,25
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto del parámetro OptimFcn sobre el fitness
fmincons - 0,1
fmincons - 0,2
(en blanco) - 0
0
0,05
0,1
0,15
0,2
0,25
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Efecto del parámetro HybridFcn sobre el fitness
[]
fmincons
Resultados Experimentales (XIII) Backtracking
No es una técnica de optimización meta-heurística sino exhaustiva.
No se adapta demasiado bien al problema por lo inmenso del espacio de soluciones.
Implementación propia.
Búsqueda Global.
Parámetros:
• Amplitud
0
0,2
0,4
0,6
0,8
1
1,2
1,4
1,6
1,8
3 5 7
fitness
Efecto del parámetro Amplitud en el fitness
2Trisection3 - cr-3y3
2Trisection3 - cr-5y3
Cometa - cr-3y3
Cometa - cr-5y3
Transversal - cr-3y3
Transversal - cr-5y3
0
5000
10000
15000
20000
25000
30000
3 5 7
tie
mp
o (s
)
Efecto del parámetro Amplitud en el tiempo
2Trisection3 - cr-3y3
2Trisection3 - cr-5y3
Cometa - cr-3y3
Cometa - cr-5y3
Transversal - cr-3y3
Transversal - cr-5y3
Resultados Experimentales (XIV)
0
0,01
0,02
0,03
0,04
0,05
0,06
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Promedio del valor de fitness
fmincon
ga
patternsearch
ScatterSearch
simulannealbnd
0
2
4
6
8
10
12
10 20 30 40 50 10 20 30 40 50 10 20 30 40 50 10 20 30 40 50 10 20 30 40 50 10 20 30 40 50
cr-3y3 cr-5y3 cr-3y3 cr-5y3 cr-3y3 cr-5y3
2Trisection3 Cometa Transversal
Nº de soluciones de calidad (<1e-5) en función del tiempo límite máximo
fmincon
ga
ScatterSearch
simulannealbnd
Contenidos
1. Introducción
2. Análisis de las Herramientas de Optimización
3. Aplicación a la Síntesis de Filtros
4. Conclusiones y Trabajos Futuros
Conclusiones
Inviable el empleo de una técnica exhaustiva
Algoritmo Genético personalizado, el mejor
Scatter Search en promedio va bien
fmincon es el mejor en la búsqueda local
Trabajos en curso y futuros
Estudio del problema en la fase de diseño físico en lugar de basado en matriz de acoplos Construcción de función de bondad a partir del
resultado de una simulación (posible alto coste computacional) ¿paralelizable?
Aplicación de técnicas heurísticas para ajustar los parámetros geométricos como se ha hecho en el caso basado en matriz de acoplos, pero posiblemente implementándolas en otro entorno distinto a MATLAB y otras técnicas heurísticas mejor adaptadas al problema ¿paralelizable?
Desarrollo de interfaz gráfico
Bibliografía [1] F. Almeida, M. J. Blesa Aguilera, C. Blum, J. M. Moreno-Vega, M. Pérez Pérez, A. Roli, and M. Sampels, editors. Hybrid Metaheuristics, Third International Workshop, HM 2006, Gran Canaria, Spain, October 13-15, 2006, Proceedings, volume 4030 of Lecture Notes in Computer Science. Springer, 2006. [2] S. Amari. Synthesis of cross-coupled resonator filters using an analytical gradient-based optimization technique. Microwave Theory and Techniques, IEEE Transactions on, 48(9):1559–1564, September 2000. [3] W. Bozejko and M. Wodecki. Parallel scatter search algorithm for the flow shop sequencing problem. In Wyrzykowski et al. [23], pages 180–188. [4] R. J. Cameron. General coupling matrix synthesis methods for Chebyshev filtering functions. Microwave Theory and Techniques, IEEE Transactions on, 47:433–442, 1999. [5] D. Giménez Cánovas, J. Cervera López, G. García Mateos, and N. Marín Pérez. Algoritmos y Estructuras de Datos, volume 2. Diego Marin Librero-Editor, 2003. [6] A. Colorni, M. Dorigo, F. Maffioli, V. Maniezzo, G. Righini, and M. Trubian. Heuristics from nature for hard combinatorial optimization problems. International Transactions in Operational Research, 3(1):1–21, 1996. [7] M. Dorigo and G. Di Caro. The ant colony optimization meta-heuristic. In David Corne, Marco Dorigo, and Fred Glover, editors, New
Ideas in Optimization, pages 11–32. McGraw-Hill, London, 1999. [8] C. Feremans, M. Labbé, and G. Laporte. Generalized network design problems. European Journal of Operational Research, 148(1):1–13, July 2003. [9] F. Glover. Tabu search. Part I. ORSA Journal on Computing, (1):190–206, 1989. [10] F. Glover, M. Laguna, and R. Martí. Fundamentals of scatter search and path relinking. Control and Cybernetics, 29(3):653–684, 2000. [11] Fred W. Glover and Gary A. Kochenberger. Handbook of Metaheuristics (International Series in Operations Research & Management Science). Springer, January 2003. [12] D. E. Goldberg. Genetic algorithms. In Search, Optimization, and Machine Learning. Addison-Wesley, 1989. [13] S. Kirkpatrick, C. D. Gelatt, and M. P. Vecchi. Optimization by simulated annealing. Science, 220(4598):671–680, 1983. [14] S. Lukasik, Z. Kokosinski, and G. Swieton. Parallel simulated annealing algorithm for graph coloring problem. In Wyrzykowski et al. [23], pages 229–238. [15] The MathWorks, http://www.mathworks.com. Genetic Algorithm and Direct Search Toolbox User’s Guide. Version 2.3. [16] The MathWorks, http://www.mathworks.com. Optimization Toolbox User’s Guide. Version 4.0.
[17] Jorge Nocedal and Stephen J. Wright. Numerical Optimization. Springer, New York, second edition, 2006. [18] G. R. Raidl. A unified view on hybrid metaheuristics. In Almeida et al. [1], pages 1–12. [19] T. S. Rappaport, A. Annamalai, R. M. Buehrer, and W. H. Tranter. Wireless communications: Part events and a future perspective. IEEE Communications Magazine, 40(5):148–161, May 2002. [20] M. G. C. Resende and C. C. Ribeiro. Greedy randomized adaptive search procedures. Technical report, AT&T Labs Research, August 2002. version 2. [21] C. C. Ribeiro, S. L. Martins, and I. Rosseti. Metaheuristics for optimization problems in computer communications. Computer Communications, 30:656–669, 2007. [22] M. Uhm, S. Nam, and J. Kim. Synthesis of resonator filters with arbitrary topology using hybrid method. Microwave Theory and Techniques, IEEE Transactions on, 55(10):2157–2167, October 2007. [23] R. Wyrzykowski, J. Dongarra, K. Karczewski, and J. Wasniewski, editors. Parallel Processing and Applied Mathematics, 7th International Conference, PPAM 2007, Gdansk, Poland, September 9-12, 2007, Revised Selected Papers, volume 4967 of Lecture Notes in Computer Science. Springer, 2008.