Table Of ContentINDUSTRIA INGENIARITZA TEKNIKOKO ATALA
SECCIÓN INGENIERÍA TÉCNICA INDUSTRIAL
GRADO EN INGENIERÍA INFORMÁTICA DE GESTIÓN Y SISTEMAS DE INFORMACIÓN
TRABAJO FIN DE GRADO
2015 / 2016
EXTENSIÓN DE UN PAQUETE DE ALGORITMOS
METAHEURÍSTICOS EN R PARA LA DOCENCIA
MEMORIA
DATOS DE LA ALUMNA O DEL ALUMNO DATOS CODIRECCIÓN
NOMBRE ANDER NOMBRE JOSU NOMBRE BORJA
APELLIDOS CARREÑO LÓPEZ APELLIDOSCEBERIO URIBE APELLIDOSCALVO MOLINOS
DEPARTAMENTO LSI DEPARTAMENTO CCIA
FDO.: FDO.: FDO.:
FECHA: 17-06-2016 FECHA:17-06-2016 FECHA1:7-06-2016
Ander Carreño López: Extensión de un Paquete de Algoritmos Metaheu-
rísticos en R para la Docencia, 16/06/2016.
Trabajo Fin de Grado presentado dentro del Grado en Ingeniería In-
formáticadeGestiónySistemasdeInformaciónenlaEscuelaUniver-
sitaria de Ingenieros de Bilbao (UPV-EHU).
Esta memoria está sujeta a la licencia Creative Commons de reconomi-
ciento y caracter no comercial .
A mi familia y amigos.
RESUMEN
Enlosúltimosaños sehanrealizadonumerososavances enelcam-
po de la optimización combinatoria. Los algoritmos evolutivos han
demostrado ser una herramienta muy valiosa para resolver proble-
mas de optimización costosos. En concreto, los Algoritmos de Esti-
mación de Distribuciones han atraído la atención de los investigado-
res y se han hecho numerosos avances al respecto. Sin embargo, no
existesoftwarequeacerqueestosavancesalosalumnos.EsteTrabajo
de Fin de Grado trata de extender la librería metaheuR para que los
estudiantes puedan comparar, combinar y aprender estos algoritmos
resolviendo los problemas de optimización clásicos junto con el libro
Bilaketa Heuristikoak aun en desarrollo. Bajo el lenguaje de programa-
3
ción R, este proyecto recoge Algoritmos de Estimación de Distribu-
ciones, el Estimation of Bayesian Network Algorithm que aprende una
red Bayesiana como modelo probabilístico; el Edge Histogram Based
Sampling Algorithm que aprende probabilidades marginales de orden
dos y el Plackett-Luce Estimation of Distribution Algorithm que aprende
un vector de pesos de la población. Además, se han realizado experi-
mentos que verifican el correcto funcionamiento de los modelos im-
plementados así como ejecuciones sobre problemas de optimización
tales como el Travelling Salesman Problem o el Maximum Independence
Set. Con estos resultados, también se han realizado comparativas y
análisis de los resultados que dan una visión de la eficiencia de cada
uno de los algoritmos.
AGRADECIMIENTOS
En primer lugar agradecer a los doctores Josu Ceberio y Borja Cal-
vo por su excelente colaboración y dedicación. Sus sugerencias y co-
rrecciones han hecho posible este trabajo. Además, siempre han teni-
do una gran disponibilidad digna de agradecer.
Agradecer también a Nerea Martín por su constante apoyo espe-
cialmente en los momentos de mayor carga de trabajo.
Agradecer a mi hermano Asier por las recomendaciones y por el
apoyodurantetodoeltrabajo.Asímismo,agradeceramipadreJavier
y mis abuelas Ma Luisa y Dolores por la ilusión y emoción que me
han transmitido.
Por último agradecer a la Escuela Universitaria de Ingenieros de
Bilbao por la posibilidad de realizar este proyecto.
v
ÍNDICE GENERAL
1 introducción 1
11 1
. Estructura del documento
12 1
. Problema abordado
13 2
. Motivación
14 2
. Propósito
15 3
. Razones de la elección del TFG
16 4
. El lenguaje de programación R
2 algoritmos de estimación de distribuciones 7
21 9
. Estimation of Bayesian Network Algorithm
211 10
. . Aprendizaje
212 10
. . Muestreo
22 11
. Edge Histogram Based Sampling Algorithm
221 11
. . Aprendizaje
222 12
. . Muestreo
223 12
. . EHBSA Without Template
224 12
. . EHBSA With Template
23 13
. Plackett-LuceEstimationofDistributionAlgorithm
231 14
. . Aprendizaje
232 14
. . Muestreo
3 planificación 17
31 17
. Objetivos
32 17
. Arquitectura
33 18
. Alcance
34 21
. Especificación y Duración de Tareas
35 24
. Riesgos
351 24
. . Faltadeconocimientodealgunatecnología
352 25
. . Desmotivación del ingeniero
353 26
. . Enfermedad
354 27
. . Pérdida de información
355 28
. . Fallo en la conexión a Internet
356 29
. . Errores humanos
36 30
. Evaluación económica
361 30
. . Retorno de la Inversión (ROI)
37 31
. Herramientas
4 captura de requisitos 33
41 33
. Casos de uso
5 análisis y diseño 39
51 39
. Diagrama de clases
vi
índice general vii
52 42
. Diagramas de secuencia
6 implementación 45
61 45
. Estimation of Bayesian Network Algorithm
611 48
. . Cálculo de probabilidad
62 49
. Edge Histogram Based Sampling Algorithm
63 52
. Plackett-Luce EDA
631 53
. . Cálculo de probabilidad
7 experimentación 55
71 55
. Verificación del correcto funcionamiento
711 55
. . EstimationofBayesianNetworkAlgorithm
712 59
. . EdgeHistogramBasedSamplingAlgorithm
713 61
. . Plackett-Luce EDA
72 62
. Comparativa de EDAs
721 62
. . Problemasdeoptimizacióncombinatoria
722 64
. . Ejecuciones de los EDAs
8 conclusiones y trabajo futuro 71
81 71
. Planificación seguida
82 73
. Conclusiones
83 74
. Trabajo futuro
a diagramas de secuencia 75
a1 75
. Clase BayesianNetwork
a2 75
. Clase EHBSA
a3 76
. Clase PlackettLuce
b funciones implementadas 77
b1 77
. Clases Implementadas
b11 77
. . BayesianNetwork
b12 80
. . EHBSA
b13 82
. . PlackettLuce
b2 85
. Experimentos realizados
b21 85
. . Experimentos EBNA
b22 90
. . Experimentos EHBSA
b23 94
. . Experimentos Plackett-Luce
b24 96
. . Ejecuciones de los EDAs
b3 99
. Kullback-Leibler
bibliografía 101
ÍNDICE DE FIGURAS
1 5
Figura Ejemplo de funciones genéricas.
2
Figura Esquemas genéricos de las etapas de un GA y
8
un EDA.
3 9
Figura Ejemplo de red Bayesiana.
4 13
Figura EjemplodeplantilladelmodeloEHBSA/WT.
5 18
Figura Arquitectura del proyecto.
6 18
Figura Diagrama EDT.
7 23
Figura DiagramadeGanttdelaplanificacióninicial.
8 31
Figura Curva de Retorno de la Inversión.
9 35
Figura Casos de uso.
10 40
Figura Diagrama de clases completo.
11 41
Figura Diagrama de clases realizado.
12 43
Figura DiagramadesecuenciaBayesianNetwork.
13 75
Figura Población con el % siendo el mismo indivi-
56
duo.
Figura 14 CálculodeladivergenciadeKullback-Leiblercon
una población de 5 variables. 58
15 63
Figura Ejemplo grafo MIS.
16
Figura Comparativa de errores relativos entre el UM-
65
DA y el EBNA.
17
Figura Resultado de las ejecuciones del UMDA sobre
66
instancias del MIS.
18
Figura Resultado de las ejecuciones del EBNA sobre
66
instancias del MIS.
19
Figura ComparativadeerroresrelativosentreelEHB-
67
SA y el PLEDA.
20
Figura Resultado de las ejecuciones del EHBSA sobre
68
instancias TSP.
21
Figura Resultado de las ejecuciones del PLEDA sobre
68
instancias TSP.
Figura 22 Diagrama de Gantt final. 72
Figura 23 DiagramadesecuenciadelaclaseBayesianNet-
work. 75
Figura 24 DiagramadesecuenciadelaclaseEHBSA. 75
Figura 25 Diagrama de secuencia de la clase PlackettLu-
ce. 76
ix
Description:tas restricciones para el Algoritmo roulette-wheel como se explican en .. del trabajo presentado, ya que si la explicación del proyecto no re- presenta