270 likes | 400 Views
ChasquiSoft. Investigación Algorítmica. Contreras Ames, Roy Carlos 20037038 Gaspar Calle, Ronald 20040385 Urlich Ames, Rafael 20050272 Paredes Anicama, Fernando 20050438 Castro Toribio, Jorge 20052036 Ruiz Vergara, César Augusto 20057238. Integrantes. Agenda. Introducción
E N D
ChasquiSoft Investigación Algorítmica
Contreras Ames, Roy Carlos 20037038 Gaspar Calle, Ronald 20040385 Urlich Ames, Rafael 20050272 Paredes Anicama, Fernando 20050438 Castro Toribio, Jorge 20052036 Ruiz Vergara, César Augusto 20057238 Integrantes
Agenda • Introducción • Algoritmos • Heurístico: Primero el mejor. • Meta-heurístico: GRASP. • Meta-heurístico: Genético. • Conclusiones • Referencias
Introducción • Descripción del problema: El problema consiste en encontrar la distribución de red optima entre un grupo de clientes de una zona rural y su antena correspondiente para poder brindarles los servicios de comunicaciones que han solicitado. Se necesita encontrar una distribución de red optima mediante el uso de algoritmos especializados para disminuir los costos del cableado.
Introducción • Gráfico de red de un grupo de clientes con su antena correspondiente:
Algoritmo Heurístico Voraz – El Primero, el mejor
Algoritmo Heurístico - Definición • Algoritmo Heurístico • Escoger siempre el mejor elemento en cada paso, conocido como el candidato más prometedor, a fin de llegar a una solución óptima. • El avance es paso a paso, empezando con un conjunto solución vacío.
Algoritmo Heurístico - Elementos • Conjunto C de candidatos: conjunto de clientes • Función de selección: determina el cliente más cercano al último cliente seleccionado (candidato prometedor) • Función de factibilidad: Comprueba que el conjunto de candidatos seleccionados junto al nuevo candidato prometedor permitan llegar a una solución.
Algoritmo Heurístico - Elementos • Función objetivo: minimizar el costo del cableado. Se aplica a todo el conjunto solución y está dada por la siguiente fórmula: • f(x) = ∑ ( d * costo_cable ) * factor • Donde: • d = distancia entre cada cliente • costo_cable = costo del cable por metro • Factor = indica un factor de coste adicional dependiendo del tipo de terreno donde habita cada cliente.
Algoritmo Voraz – Pseudocódigo • Función voraz(C:conjunto):conjunto • { C es el conjunto de todos los clientes } • S = {Ø} { S es el conjunto en el que se construye la solución } • mientras C <> vacío hacer • x = el elemento de C que maximiza seleccionar(x) C = C - {x} sicompletable(S U {x}) entonces S = S U {x} • sisolucion(S) • entonces devolver S • si no devolverno hay solucion • fin
Algoritmo Heurístico - Aplicación • Problema del cambio de dinero • El problema de la mochila • El problema de la programación de tareas • El problema de cortes de una dimensión • El problema de la selección de proyectos de inversión
Algoritmo Heurístico • Desventajas • Miopía. • Ventajas • Fácil de diseñar e implementar. • Fácil de comprobar la optimización.
Algoritmo GRASP - Definición • Algoritmo Meta-Heurístico • Se basa en métodos probabilísticos. • Usado para problemas de optimización combinatoria • Es un algoritmo iterativo.
Algoritmo GRASP - Aplicación • Cada iteración presenta 2 fases: • Fase de Construcción. Considerando una lista restringida de elementos candidatos se selecciona aleatoriamente uno para añadirlo en la construcción de la solución. • Fase de Mejora. Realiza una búsqueda local en el vecindario de la solución construida con el fin de mejorar esta solución.
Algoritmo GRASP – Pseudocódigo • Procedimiento GRASP (numIteraciones, instancia) • Leer (instancia) • Mientras <no se cumple con número de iteraciones> hacer • Fase de Construcción • Fase de Mejora • Actualizar la mejor solución • Regresar la mejor solución • Fin
Algoritmo GRASP Ventajas Facilidad de implementación Buena solución con costo de procesamiento razonable Puede servir como paso previo en la aplicación de otros algoritmos Desventajas No exhaustivo No se escoge necesariamente la mejor solución
Algoritmo Meta-Heurístico Genético
Algoritmo Genético - Definición • Son métodos de optimización y búsqueda de soluciones basados en los postulados de la evolución biológica y su base genético-molecular.
Algoritmo Genético - Definición • Individuo o cromosoma:Entidad que representan una posible solución. • Población:Conjunto de individuos. • Función Fitness: Función evaluadora de la calidad de un individuo como solución a nuestro problema. • Cruce: Mezcla de la información de dos individuos. • Mutación: Cambio aleatorio en los genes de un individuo. • Selección: Operación donde tienen mayor probabilidad de ser elegidos los individuos con mayor valor de función fitness.
Algoritmo Genético - Aplicación • Individuo • Población • Función Fitness • Cruce • Mutación • Selección
Algoritmo Genético – Pseudocódigo • Procedimiento GENETICO () • GenerarPoblacionInicial() • Mientras <No hay mejora en muchas generaciones> • hacer • SeleccionarPadres() • Cruce() • MutarHijos() • EvaluarMutaciones() • Regresar la mejor solución • Fin
Algoritmo Genético • Desventajas • Complicado de implementar • Definición de función objetivo correcta • Convergencia prematura Ventajas • Paralelismo • Ideal para conjuntos grandes • Adaptativos • Sin conocimiento previo
Conclusiones • Luego del análisis realizado de las ventajas y desventajas de cada algoritmo, el equipo Chasquisoft ha decidido experimentar con una combinación de dos algoritmos: Grasp-Genético; esta fusión de algoritmos aprovecha la principal ventaja del algoritmo Grasp y Genético: Brindar una adecuada solución inicial y ser útil para grandes poblaciones, respectivamente .
Referencias • http://www.research.att.com/~mgcr/doc/gannbib.pdf • catarina.udlap.mx/u_dl_a/tales/documentos/lii/martinez_g_ag/capitulo3.pdf • http://sisbib.unmsm.edu.pe/BibVirtualData/publicaciones/risi/N1_2004/a03.pdf • http://www.mac.cie.uva.es/~arratia/cursos/UVA/GeneticTSP/GeneticTSP.html
Referencias (2) • http://www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t2geneticos.pdf