Está en la página 1de 74

Javier Gamboa Cruzado

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS


(Universidad del Perú, DECANA DE AMERICA)

FACULTAD DE CIENCIAS MATEMÁTICAS


E.A.P. DE INVESTIGACION OPERATIVA

“Aplicación de los Algoritmos Genéticos


al Problema del Agente Viajero para la
fiscalización de los Comités Partidarios en
el JNE”
TESIS PARA OPTAR EL GRADO ACADÉMICO DE

LICENCIADO EN INVESTIGACION OPERATIVA

Presentado por:

Henry Janampa Malqui

Lima – Perú

2012

-i-
Javier Gamboa Cruzado

DEDICATORIA

A mis padres por ser los autores de mi vida

-ii-
Javier Gamboa Cruzado

INTRODUCCIÓN

En los momentos actuales, las organizaciones, independientemente de su


tamaño y del sector de actividad, han de hacer frente a un mundo
globalizado en los que han de conciliar la satisfacción de sus clientes con la
eficiencia económica de sus actividades.

El Jurado Nacional de Elecciones o JNE, es una institución que está


inmersa en un proceso de mejora continua de sus procesos, lo que permite
brindar un servicio de calidad a los clientes externos que solicitan la
inscripción de su Organización Política, y es por ello que hace uso de
técnicas de la Investigación de Operaciones o IO.

El campo de la aplicación de las técnicas de la IO es muy amplio, y su


importancia de su aplicación radica en la necesidad cada vez más exigente
de la asignación óptima de los recursos.

El propósito de la presente investigación, es establecer las rutas de


desplazamiento de los fiscalizadores asignados al JNE a los distintos puntos
del país en el menor tiempo posible, lo que se verá reflejado en la eficiencia
del recurso humano y la eficacia para la organización.

-iii-
Javier Gamboa Cruzado

TABLA DE CONTENIDOS

DEDICATORIA ii
INTRODUCCION iii

INTRODUCCIÓN iv
CAPÍTULO I
PLANTEAMIENTO DEL PROBLEMA
1.1 ANTECEDENTES Y FORMULACION DEL PROBLEMA
1.1.1 ANTECEDENTES 01
1.1.2 FORMULACION DEL PROBLEMA 03
1.2 OBJETIVOS DEL ESTUDIO 03
1.2.1 OBJETIVO GENERAL 03
1.2.2 OBJETIVO ESPECIFICO 04
1.3 JUSTIFICACION E IMPORTANCIA DEL ESTUDIO 04
1.4 HIPOTESIS Y VARIABLES 05
1.5 ALCANCES Y LIMITACIONES 07

CAPÍTULO II
MARCO TEORICO Y CONCEPTUAL
2.1 INVESTIGACIONES RELACIONADAS CON EL ESTUDIO 08
2.2 BASES TEORICO-CIENTÍFICAS 11
2.2.1 CONCEPTOS EN OPTIMIZACIÓN 11
2.2.2 COMPLEJIDAD COMPUTACIONAL 13
2.2.3 SOLUCIONES APROXIMADAS 16
2.2.4 METODOS METAHEURISTICOS 19
2.2.5 ALGORITMOS GENETICOS 27
2.2.5.1 CONCEPTOS BASICOS 27

-iv-
Javier Gamboa Cruzado

2.2.5.2 GA APLICADO A TSP 32


2.3 DEFINICIONES DE TERMINOS BASICOS 38
2.4 PRESENTACION Y DESARROLLO DE LOS MODELOS 42

CAPÍTULO III
ANALISIS SITUACIONAL Y RESULTADOS RELEVANTES
3.1 ANALISIS DE LA SITUACION ACTUAL 45
3.2 DESCRIPCION DEL PROBLEMA 49
3.3 FORMULACIÓN DEL MODELO 51
3.4 SOLUCIÓN DEL MODELO 55
3.5 ANALISIS E INTERPRETACION DE RESULTADOS 63

CAPÍTULO IV
CONCLUSIONES Y RECOMENDACIONES
4.1 CONCLUSIONES 65
4.2 RECOMENDACIONES 65

REFERENCIA BIBLIOGRÁFICAS 67
ANEXOS 70
Anexo I : Distancias 70
Anexo II: Reporte del software LINGO 71
Anexo III: Programa GA en MATLAB 74

-v-
CAPÍTULO I

PLANTEAMIENTO DEL PROBLEMA

1.1 ANTECEDENTES Y FORMULACION DEL PROBLEMA

1.1.1 Antecedentes

La explosión combinatoria, es uno de los problemas computacionales a

resolver en optimización combinatoria. Esta aparece en situaciones donde

las elecciones están compuestas secuencialmente, es decir, dado un

conjunto de elementos se pueden obtener diferentes arreglos ordenados de

estos, permitiendo una vasta cantidad de posibilidades. Situaciones de este

tipo ocurren en problemas de manejo de inventarios, diseño de circuitos

integrados, inversión financiera, etc.

Una característica recurrente en los problemas de optimización

combinatoria es el hecho de que son muy "fáciles" de entender y de

enunciar, pero generalmente son "difíciles" de resolver. Podría pensarse que

la solución de un problema de optimización combinatoria se restringe

únicamente a buscar de manera exhaustiva el valor máximo o mínimo en un

conjunto finito de posibilidades y que usando una computadora muy veloz, el

problema carecería de interés matemático, sin pensar por un momento, en el

tamaño de este conjunto.

-1-
Los intentos por tratar con el problema de la explosión combinatoria

han encontrado muchos obstáculos. Por ejemplo, no es suficiente contar con

un "conocimiento experto" para manejarlos de manera efectiva, de igual

manera no es suficiente confiar en el poder computacional de alta velocidad

de las actuales computadoras. Algunos problemas clásicos donde la

explosión combinatoria prevalece, muestran que un intento por generar

todas las alternativas relevantes por computadora no es una tarea factible.

Esto ocurre con el problema del agente viajero o TSP (por sus siglas

en inglés, Traveling Salesman Problem), en el cual se tiene que salir de un

lugar y regresar al mismo, después de haber visitado (con costo mínimo de

viaje) todas los demás lugares, si se tienen n ciudades en total que recorrer

entonces existen (n-1)! soluciones factibles, lo que resulta impráctico.

El TSP es uno de los problemas más famosos y complejos de la

ciencia de la computación y ha sido abordado por varias ramas de la

ingeniería y por distintas razones, su principal aplicación es la de rutear

desde distintas perspectivas, ya sea un proceso que lleva una secuencia

específica o una distribución de carácter logístico en la que intervienen

elementos del transporte, buscando la mejor ruta posible con criterios de

economía en distancia, tiempo o en costo.

Proveer soluciones contribuye a mejorar tareas y procesos en

distintos ámbitos, científicos e industriales, proponiendo alternativas para el

mejor uso de los recursos. Disciplinas que abordan este tema son la

-2-
investigación de operaciones y las ciencias informáticas como algoritmia y

teoría de grafos.

1.1.2 Formulación del problema

La correcta valoración del cliente y la permanente búsqueda de la

satisfacción de sus necesidades y expectativas, permite asumir el cambio

cultural necesario para afrontar con éxito los actuales y futuros desafíos.

El sistema de fiscalización de los Comités de las Organizaciones

Políticas, está constituido por el personal fiscalizador del Jurado Nacional de

Elecciones o JNE, y se encarga de la atención a los Comités partidarios en

el marco del Procedimiento de Inscripción.

El conocimiento de los tiempos de desplazamiento, es importante

puesto que una correcta secuenciación de la visita o tours, conduce a una

planeación realista sujeta a la restricción del tiempo, mejorando así la

eficacia en el servicio.

¿Por qué la aplicación de los Algoritmo genéticos al Problema del

Agente Viajero para la fiscalización de los Comités Partidarios en el JNE,

permitirá minimizar el tiempo total del desplazamiento de las visitas?.

1.2 OBJETIVOS

1.2.1 Objetivo general

-3-
La presente investigación pretende dar solución al problema de elegir la ruta

óptima que minimice el tiempo de desplazamiento del personal de

fiscalización de los Comités Partidarios de las Organizaciones Públicas.

1.2.2 Objetivos específicos

Los objetivos específicos que se plantean son:

 Investigar desde los Algoritmos Genéticos, las propuestas de

modelos que dan respuesta al Problema del Agente Viajero.

 Establecer las rutas óptimas de desplazamiento a seguir por el

personal fiscalizador del JNE.

 Determinar en qué medida el adecuado empleo de los Algoritmos

Genéticos o GA permite contar con una solución computacional

para dar rápidas respuestas a las operaciones financieras.

1.3 JUSTIFICACIÓN E IMPORTANCIA DEL ESTUDIO

Usando los criterios de Ackoff, se plantea la tabla 1.1, de donde se resume Commented [wbr1]: Consulta a tu asesor si debes o no incluir
en la referencia, a Ackoff

la justificación del presente trabajo.

Implementar la metaheurística de los Algoritmos Genéticos, para

generar una solución confiable, consiguiendo una planificación muy cercana

al óptimo, que ayude a controlar al máximo las eventualidades y como

consecuencia de ello, una operación eficiente y económica en la gestión del

personal de fiscalizadores del JNE.

-4-
Esta propuesta considera la orientación de las nuevas herramientas

de LA METAHEURÍSTICA, donde se enfatizan las técnicas de los Algoritmos

Genéticos.

Criterios Respuestas
Generar una solución confiable, para una
Conveniencia
planificación muy cercana al óptimo

Controlar al máximo las eventualidades y como


Relevancia consecuencia de ello, una operación eficiente,
social económica en la gestión del personal de
fiscalizadores del JNE

Implicaciones
Investigar el Problema del Agente Viajero
prácticas

Sugerir recomendaciones o hipótesis para


Valor teórico
futuros estudios

Considerar la orientación de las nuevas


Utilidad
herramientas de optimización a los negocios,
metodológica
donde se enfatizan los Algoritmos Genéticos

TABLA 1.1: Criterios según Ackoff

La presente investigación es importante, porque contribuirá a la

adecuada planificación al personal fiscalizador, en la atención de las

Organizaciones Políticas que se encuentran en distintos puntos en el interior

del país.

1.4 HIPÓTESIS Y VARIABLES

La formulación de la hipótesis para la presente investigación se resumen en:

-5-
Hipótesis principal

H0: La aplicación de los Algoritmos Genéticos, aplicado al problema en el

JNE, no logra una mejor respuesta en la meta de elegir la ruta óptima que

minimice el tiempo de desplazamiento del personal de fiscalización de los

Comités Partidarios de las Organizaciones Públicas.

Hipótesis alterna

H1: La aplicación de los Algoritmos Genéticos, aplicado al problema en el

JNE, no logra una mejor respuesta en la meta de elegir la ruta óptima que

minimice el tiempo de desplazamiento del personal de fiscalización de los

Comités Partidarios de las Organizaciones Públicas.

La variable motivo de la investigación, son las distintas ciudades que

conforman los puntos de fiscalización a los Comités Partidarios de las

Organizaciones Públicas.

Esta variable de investigación forma parte de la hipótesis, que es lo que

se pretende describir, como es ruta a seguir.

Haciendo uso de programas de computadoras, se exploran los datos,

se utiliza la estadística descriptiva y se evalúa la fiabilidad y validez lograda

por el instrumento de medición.

También se analizan pruebas estadísticas a las hipótesis planteadas,

-6-
se hacen análisis adicionales y se preparan los resultados para su

presentación.

1.5 ALCANCES Y LIMITACIONES

Los alcances en una investigación cuantitativa, son el resultado de la

revisión de la literatura y de la perspectiva del estudio. También dependen

de los objetivos del investigador para combinar los elementos del estudio.

Para la presente investigación se consideran los siguientes alcances:

 Exploratorio, porque investiga un problema poco estudiado, se indaga

desde una perspectiva innovadora, y prepara el terreno para nuevos

estudios.

 Descriptivo, porque mide conceptos y definen variables.

 Correlacional, porque ofrece predicciones, explica la relación entre

variables.

 Explicativo, porque determina las causas de los fenómenos, genera un

sentido de entendimiento, y es muy estructurado.

-7-
CAPÍTULO II
MARCO TEÓRICO

El Problema del Agente Viajero o TSP, es un ejemplo que muestra y analiza

la problemática que subyace tras algunos tipos de problemas matemáticos

que a priori parecen tener una solución relativamente fácil y en la práctica

presentan un gran problema. Es uno de los problemas más famosos en el

campo de la optimización combinatoria computacional.

Se conoce la forma de resolverlo pero sólo en teoría, en la práctica la

solución no es aplicable debido al tiempo que computacionalmente se

precisa para obtener su resultado.

2.1 INVESTIGACIONES RELACIONADAS CON EL ESTUDIO

En un coloquio en Viena el 5 de febrero de 1930, el matemático austriaco

Karl Menger plantea por primera vez el TSP en lenguaje matemático.

Menger planteaba que el problema de determinar rutas de distancia

mínima entre dos localidades era una herramienta para encontrar ciclos

Hamiltonianos de distancia mínima

El matemático George B . Dantzig, el padre de la Programación

Lineal o PL, se interesó en el TSP y junto con Delbert Fulkerson y

Selmer Johnson en la Rand Corporation, relajaron el problema

combinatorio (cero-uno) a uno de variables continuas con la restricción

de estar entre 0 y 1. El problema se convierte en uno de PL y haciendo

uso del método simplex (desarrollado por el George B. Dantzig).

-8-
Encontraron que el TSP podía a ser resuelto en forma computacional.

Sin embargo, al crecer el número de puntos o localidades, el problema

se volví a inviable computacionalmente hablando. El problema resuelto por

Dantzig y Fulkerson estaba constituido por 49 ciudades

En 1973 S. Lin y B. Kernighan plantean “An Effective Heuristic

Algorithm for the Traveling-Salesman Problem”, en Operations Research

21. En este trabajo se discute un procedimiento heurístico muy eficaz para

generar soluciones óptimas y cerca del óptimo-simétrico del vendedor

ambulante problema. El procedimiento se basa en un enfoque general a la

heurística que tiene una amplia aplicación en problemas de optimización

combinatoria. El procedimiento genera soluciones óptimas para todos los

problemas analizados, problemas «clásicos» que aparecen en la literatura,

así como los problemas generados al azar de prueba, hasta 110 ciudades.

En las siguientes décadas, el problema fue investigado por

matemáticos, físicos, químicos y científicos de la computación.

Grandes progresos fueron hechos en los años de 1970 y 1980, con

Grötschel, Padberg, Rinaldi y otros que resolvieron problemas exactos

hasta con 2392 ciudades, usando las técnicas de planos de corte y Branch

& Bound.

En 1994, Robert Bixby, Willian Cook and Dave Applegate del

Departamento de Computación y Matemáticas Aplicadas de Rice

-9-
University en Houston, para probar la eficacia de Cplex, y poder

comercializar el producto, crearon un programa específico para el TSP

denominado Concorde. Los resultados impresionantes que lograron con

su código fueron tales que llamaron la atención de la comunidad en

optimización y desde hace 15 años el Concorde se ha usado para resolver

una enorme cantidad de aplicaciones. En pocas palabras el agente

viajero usa el Concorde. Bixby había desarrollado en años anteriores, un

paquete computacional llamado Cplex para problemas de optimización

combinatoria. Los programas son rutinas en C ++ de algoritmos de

Programación Lineal usando puntos interiores, técnicas de podamiento,

planos de corte y heurísticas.

En 2000, Keld Helsgaun presenta “An effective implementation of the

linkernighan traveling salesman heuristic” (European Journal of Operations

Research 12), probando la implementación para 7,397 ciudades (el más

largo problema no trivial) y su extensión a 85,800 ciudades con óptimos

desconocidos.

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.180.1798.

En 2005, Cook y otros computaron un tours óptimo con 33,810

ciudades.

En 2006, Keld Helsgaun presenta “An Effective Implementation of K-

opt Moves for the Lin-Kernighan TSP”, probando la efectividad en un rango

de 10,000 a 1, 000,000 de ciudades.

-10-
http://citeseerx.ist.psu.edu/viewdoc/summary;jsessionid=4C6DB5985C70812

3EC8FE2CC81026D28?doi=10.1.1.180.1807.

2.2 BASES TEORICAS ESPECIALIZADAS SOBRE EL TEMA

2.2.1 Conceptos en optimización


En la centuria pasada, una jerarquía de tales problemas ha emergido, junto

con una correspondiente colección de técnicas para su solución. Estos

problemas, son conocidos como el problema de la programación

matemática: donde se encuentra el valor de x , tal que:

min f ( x1 , x 2 ,..., x n )
sujeto a
g i ( x1 , x 2 ,..., x n )  bi , i  1,..., m
h j ( x)  0, j  1,..., p

Donde f, g y h, son funciones generales del parámetro x  R . Las


n

técnicas para resolver tales problemas son siempre iterativas, por

naturaleza, y su convergencia es estudiada usando matemáticas del mundo

real.

Si la restricción no existe, o es una restricción de igualdad, con menor

o igual número de variables que la función objetivo entonces, el cálculo

diferencial, da la respuesta, ya que solo se trata de buscar los valores

extremos de la función.

Si la restricción contiene mayor cantidad de variables que la función

-11-
objetivo, o la restricción contiene restricciones de desigualdad, existen

métodos en los que en algunos casos se encuentran los valores máximos o

mínimos.

Si tanto restricciones, como función objetivo son lineales se encuentra

en el estudio de la Programación Lineal o PL, la existencia de máximo

(mínimo), está asegurada, y el problema se reduce a la aplicación de unos

simples algoritmos de álgebra lineal elemental, los llamado método simplex

y dual. En el caso de la Programación No Lineal, existen, las

llamadas condiciones de Khun-Tucker, las cuales en algunos casos, pueden

ser utilizables, para probar encontrar puntos críticos, máximos o mínimos.

Sin embargo, esta es un área, aún muy poco desarrollada de la matemática,

frecuentemente, las condiciones de Khun-Tucker fallan, o no son suficientes,

para la existencia de extremos.

Geométricamente, los programas no lineales, se diferencian de un

programa lineal. En la figura 2.1, se ilustra un programa no lineal. Se quiere

minimizar una función f (x) , en el intervalo con 0  x  8 . El punto x  5 es el

óptimo. El punto x  0 , es una buena solución factible, y es una solución

óptima en la vecindad de x  0 .

Aquí se distinguen, dos tipos de soluciones: un óptimo local que está


en un lado, y un punto global que se encuentra en el otro lado, el punto de
x  5 . Un óptimo local, es un óptimo con respecto a la solución factible en
una región cerrada en dicho punto. Se formaliza estas dos clases de
óptimos, mediante la siguiente definición.

-12-
f(x)

Mínimo
local

Mínimo
global

0 5 8 x

Figura 2.1: Óptimos locales y globales

Definición. Sea x  ( x1 , x2 ,..., xn ) , una solución factible a un problema de

minimización, con una función objetivo f (x) ; se llama x a:

1. Un mínimo global, si f ( x)  f ( y ) , para cada punto factible

y  ( y1 , y 2 ,..., y n ) ;

2. Un mínimo local, si f ( x)  f ( y ) , para cada punto factible

y  ( y1 , y 2 ,..., y n ) , suficiente cerrado a x . Esto es, si existe un

número   0 (posiblemente muy pequeño), tal que cada variable


y j , cumple con x j    y j  x j   , y es factible, entonces

f ( x)  f ( y ) .

El concepto de mínimo local, es muy importante. Muchos

procedimientos en programación no lineal de propósito general, sólo

determinan el mínimo local.

2.2.2 Complejidad computacional

-13-
La complejidad computacional estudia el esfuerzo o costo de la resolución de

un problema. El esfuerzo necesario para resolver un problema de forma

eficiente puede variar enormemente.

Cuando se resuelve un problema, se busca la mejor solución entre un

conjunto de posibles soluciones. Al conjunto de todas las posibles soluciones

a un problema concreto se llama espacio de búsqueda.

La búsqueda de una solución, se reduce a buscar el valor extremo

(mínimo o máximo) en el espacio de búsqueda. Este espacio de búsqueda a

veces puede ser bien definido, pero en la mayoría de las ocasiones sólo se

tiene el conocimiento de algunos puntos en el espacio de búsqueda.

Al planteamiento de un problema concreto, se encuentra una serie de

algoritmos que se pueden aplicar. Se suele decir que el orden de

complejidad de un problema es la del mejor algoritmo que se conozca para

resolverlo. Así se clasifican los problemas y los estudios sobre algoritmos

que se aplican a la realidad.

En el tiempo han aparecido diversos estudios, que han llevado a la

constatación de que existen problemas muy difíciles, problemas que

desafían la utilización de las computadoras para resolverlos.

La cuestión es que existen, por una parte, problemas resolubles de

manera determinista mediante algoritmos polinomiales y en un tiempo

polinomial, como puede ser, por ejemplo la resolución de ecuaciones, la

-14-
realización de sumas, productos, etc., pudiendo acotar el tiempo de

resolución, más o menos largo, de una manera aceptable. Estos son los

problemas P.

Los algoritmos de complejidad polinomial, se dice que son tratables,

en el sentido de que suelen ser abordables en la práctica. Los problemas

para los que se conocen algoritmos con esta complejidad, se dice que

forman la clase P. Aquellos problemas para los que la mejor solución que se

conoce es de complejidad superior a la polinomial, se dice que son

problemas intratables. Sería interesante encontrar alguna solución polinomial

(o mejor) que permitiera abordarlos.

Sin embargo, también existen problemas NP que pueden resolverse

de forma no determinista, probando una solución conjeturada. Esta

comprobación es de una gran rapidez en comparación con el tiempo

polinomial necesario en general para la resolución determinista de los

problemas P.

Algunos de estos problemas intratables, pueden caracterizarse por el

curioso hecho de que puede aplicarse un algoritmo polinomial, para

comprobar si una posible solución es válida o no. Esta característica lleva a

un método de resolución no determinista consistente en aplicar heurísticos

para obtener soluciones hipotéticas que se van desestimando (o aceptando)

a ritmo polinomial. Los problemas de esta clase se denominan NP (la N de

no-deterministas y la P de polinomial).

-15-
Se conoce una amplia variedad de problemas de tipo NP, de los

cuales destacan algunos de ellos de extrema complejidad. Gráficamente se

puede decir que algunos problemas se hayan en la "frontera externa" de la

clase NP. Son problemas NP, y son los peores problemas posibles de clase

NP. Estos problemas se caracterizan por ser todos "iguales" en el sentido de

que si se descubriera una solución P para alguno de ellos, esta solución

sería fácilmente aplicable a todos ellos.

Se puede afirmar que los problemas fáciles están en P (y en NP),

pero los difíciles de verdad, sólo están en NP y se llaman NP-completos.

Es más, si se descubriera una solución para los problemas NP-

completos, esta sería aplicable a todos los problemas NP y, por tanto, la

clase NP desaparecería del mundo científico al carecerse de problemas de

ese tipo.

Una alternativa para resolver los problemas NP-completos son las

denominadas metaheurística (como los algoritmos genéticos). Ejemplos de

problemas NP-completos son el problema del agente viajero (TSP), el

problema del coloreamiento de un grafo, etc.

2.2.3 Soluciones aproximadas

En la actualidad, todos los algoritmos conocidos para problemas NP-

completos utilizan tiempo exponencial, con respecto al tamaño de la entrada.

-16-
Se desconoce si hay algoritmos más rápidos, por lo cual, para resolver un

problema NP-completo de tamaño arbitrario, se utiliza uno de los siguientes

enfoques:

 Aproximación: Un algoritmo que rápidamente encuentra una

solución no necesariamente óptima, pero dentro de un cierto rango

de error. En algunos casos, encontrar una buena aproximación es

suficiente para resolver el problema, pero no todos los problemas

NP-completos tienen algoritmos de aproximación.

 Probabilística: Un algoritmo probabilístico utiliza aleatoriedad para

obtener en promedio una buena solución al problema planteado con

una pequeña probabilidad de fallar, para una distribución de los

datos de entrada dada.

 Restricciones: Restringiendo la estructura de las entradas se

pueden encontrar algoritmos más rápidos.

 Casos particulares: Puede ocurrir que se reconozcan casos

particulares del problema para los cuales existen soluciones rápidas.

 Heurísticas: Un algoritmo que trabaja razonablemente bien en

muchos casos. En general son rápidos, pero no existe medida de la

calidad de la respuesta.

Las aproximaciones Metaheurísticas suelen ser empleadas. Un

ejemplo de algoritmo heurístico de complejidad O(n log n) es el algoritmo

voraz, utilizado para la coloración de vértices, en algunos compiladores.

-17-
Desde su origen, la programación matemática, se encuentra abocada

en problemas para los que no existe método analítico alguno que permita

obtener, con seguridad y en un tiempo conveniente, el óptimo teórico. Éste

es, por ejemplo, el caso de los problemas combinatorios en que el sentido

común da por imposible la enumeración. Es más que normal que el tamaño

y la naturaleza de ciertos problemas combinatorios nos prohibían abordarlos

por la vía del sentido común. Nuestro buen sentido, educado por la ciencia,

sabe distinguir particularmente los problemas NP completos, para los cuales

no existe un algoritmo que en tiempo polinomial sea capaz de encontrar la

solución.

Desde la investigación de operaciones se ha establecido, por esas

razones, métodos denominados heurísticos, que no proporcionan el óptimo

formal, pero susceptibles de llegar a soluciones buenas, tanto más fiables en

cuanto que permiten determinar al mismo tiempo una cota (superior o

inferior) del óptimo teórico con el que se comparan. Con el auge de las PC,

hacia principios de los ochenta, estos métodos han ido ganando terreno,

puesto que se iba haciendo, cada vez más, factible y fácil intentar diferentes

heurísticas y juzgar su eficacia relativa.

Durante los últimos años han aparecido una serie de técnicas,

denominadas metaheurìsticas, cuya finalidad es la de encontrar buenas

soluciones a problemas de optimización (lineal o no lineal y con o sin

restricciones). Entre ellas se pueden enumerar los algoritmos genéticos, el

recocido simulado, la búsqueda tabú, etc. Su aplicación a los problemas de

-18-
secuenciación de todo tipo es una finalidad típica y clásica. Es más,

prácticamente todas ellas están basadas en intentar resolver, de la mejor

forma posible, problemas típicos de Organización de la Producción. Así, los

problemas típicos de secuenciación de trabajos en máquinas, de asignación

de rutas, planificación de la producción, etc. han sido, son y, casi con toda

seguridad, serán el banco de pruebas de las más modernas técnicas de

búsqueda de soluciones a problemas en los que, de entrada, se sacrifica la

posibilidad de encontrar la solución óptima.

2.2.4 Métodos Metaheurísticos

El término, metaheurística o meta heurística, fue acuñado por F. Glover en

1986. Con ello, pretendía “definir un procedimiento maestro de alto nivel, que

guía y modifica otras heurísticas, para explorar soluciones más allá de la

simple optimalidad local”.

A partir de la definición de F. Glover, se encuentran en las literaturas,

otras definiciones alternativas de metaheurística o heurística moderna.

Una metaheurística, es un método de solución general, que

proporciona tanto una estructura general, como criterios estratégicos para

desarrollar un método específico que se ajuste a un tipo particular del

problema.

-19-
Una clasificación jerárquica para intentar una taxonomía a las

metaheurìsticas, consiste en armar un árbol desde el punto de vista

conceptual. Existen heurísticas trayectoriales y poblacionales.

Entre las metaheurìsticas trayectoriales destacan, las basadas en

búsqueda local (como TS y SA), búsqueda iterativa (como ILS y FANS) y

búsqueda multi-arranque (como GRASP). Por otro lado, entre las

metaheurìsticas poblacionales, destacan, las basadas en combinación de

soluciones (como GA y SS) y las basadas en movimientos (como ACO, de

optimización de colonias de hormigas y SI, inteligencia de enjambres). En la

tabla 2.1, se presentan los acrónimos (en inglés) de las metaheurìsticas,

más reconocidas.

Los Algoritmos Genéticos o GA (del inglés Genetic Algorithms) fueron

introducidos por Holland para imitar algunos de los mecanismos que se

observan en la evolución de las especies. Los mecanismos no son

conocidos en profundidad pero sí algunas de sus características: la

evolución ocurre en los cromosomas; un ser vivo da vida a otro, mediante la

decodificación de los cromosomas de sus progenitores, el cruce de los

mismos, y la codificación de los nuevos cromosomas formando los

descendientes; las mejores características de los progenitores se trasladan a

los descendientes, mejorando progresivamente las generaciones.

Nombre Método
ACO Optimización por colonias de hormigas
AMP Programas de memoria adaptativa

-20-
CA Algoritmos culturales
EA Algoritmos evolutivos
FANS Búsqueda por entorno adaptativo borroso
GA Algoritmos genéticos
GLS Búsqueda local guiada
Procedimientos de búsqueda miope,
GRASP
aleatorizada y adaptativa
ILS Búsqueda local iterativa
MA Algoritmos meméticos
PR Re-encadenamientos de caminos
SA Recocido simulado
SI Inteligencia de enjambre
SS Búsqueda dispersa
TS Búsqueda Tabú
VNS Búsqueda de entorno variable

Tabla 2.1: Clasificación de las Metaheurísticas

Los algoritmos de recocido simulado o SA (de Simulated Annealing)

fueron introducidos por Kirkpatrick en 1983, para la optimización de

problemas combinatorios con mínimos locales. Utilizan técnicas de

optimización no determinista: no buscan la mejor solución en el entorno de la

solución actual sino que generan aleatoriamente una solución cercana y la

aceptan como la mejor si tiene menor costo, o en caso contrario con una

cierta probabilidad p; esta probabilidad de aceptación irá disminuyendo con

el número de iteraciones y está relacionada con el empeoramiento del coste.

Estos algoritmos derivan de la analogía termodinámica con el proceso

metalúrgico del recocido: cuando se enfría un metal fundido suficientemente

-21-
despacio, tiende a solidificar en una estructura de mínima energía (equilibrio

térmico); a medida que disminuye la temperatura, las moléculas tienen

menos probabilidad de moverse de su nivel energético; la probabilidad de

movimiento se ajusta a la función de Boltzmann.

Entre los distintos métodos y técnicas heurísticas de resolución de

problemas combinatorios surge, en un intento de dotar de "inteligencia" a los

algoritmos de búsqueda local, el algoritmo de búsqueda tabú, de Glover y

Laguna en 1997.

La búsqueda tabú o TS de Tabù Search, a diferencia de otros

algoritmos basados en técnicas aleatorias de búsqueda de soluciones

cercanas, se caracteriza porque utiliza una estrategia basada en el uso de

estructuras de memoria para escapar de los óptimos locales, en los que se

puede caer al "moverse" de una solución a otra por el espacio de soluciones.

Al igual que en la búsqueda local, la búsqueda tabú selecciona de modo

agresivo el mejor de los movimientos posibles en cada paso. Al contrario que

sucede en la búsqueda local, se permiten movimientos a soluciones del

entorno aunque se produzca un empeoramiento de la función objetivo, de

manera que sea posible escapar de los óptimos locales y continuar

estratégicamente la búsqueda de mejores soluciones.

Numerosos algoritmos basados en el principio de Darwin, han

empezado a desarrollarse sobre las últimas tres décadas. Ellos están

usando el término de “métodos de computación evolucionaria”.

-22-
El término de algoritmos evolucionarios o evolutivos, es usado en

forma indistinta para describir diferentes técnicas de computación evolutiva.

Para las tareas de optimización de funciones de variables reales, la

evolución estratégica ha emergido como un gran contendor a diversos

métodos de solución tradicionales.

La computación evolutiva plantea los problemas complejos de

búsqueda y optimización bajo un enfoque evolutivo, basado en la teoría

evolucionista. La computación evolutiva La computación evolutiva es una

rama de la inteligencia artificial que involucra problemas de optimización

combinatoria. Se inspira en los mecanismos de la evolución biológica.

Durante los años 60 y 70, varias corrientes de investigación

independientes comenzaron a formar lo que ahora se conoce como

computación evolutiva:

 Programación Evolucionaria o EP (Evolutionary Programming).

 Estrategias Evolutivas o ES (Evolution Strategies).

 Algoritmos Genéticos o GA (Genetic Algorithms).

La Programación Evolutiva nació en la década de 1960 y su creador

fue Lawrence J. Fogel. Este desarrollo comenzó como un esfuerzo

-23-
encaminado a crear inteligencia artificial basada en la evolución

de máquinas de estado finitas.

Las Estrategias Evolutivas fueron propuestas por Ingo Rechenberg y

Hans Paul Schwefel en la década de 1970. Su principal objetivo era el de

optimizar de parámetros.

Los Algoritmos Genéticos fueron propuestos por John H. Holland en

1975 y su motivación inicial fue la de proponer un modelo general de

proceso adaptable.

Cada una de estas técnicas fue desarrollada de forma independiente,

siendo la denominación de computación evolutiva porque están basadas en

un esquema general común; todos ellos poseen:

 Un conjunto de soluciones debidamente codificadas (los individuos)

formando una población (ver la figura 2.2)

 Un procedimiento de transformación a la nueva población, desde la

población anterior.

 Una función evaluadora del mérito de las soluciones que forman parte

de la población.

 Un mecanismo de selección de individuos en función de su

adaptación al medio.

-24-
1
3 5
7

2
4 6

Figura 2.2: Solución y el individuo

Las técnicas difieren en la selección de reproductores y en la

selección de supervivientes (ver la figura 2.3).

P(0) = Inicialización de la población


Bondad P(0) = Evaluación P(0)
G=0

Repetir hasta que

P Aux (G) = Selección de reproductores


P Aux (G) = Transformación
Bondad P Aux (G) = Evaluación P Aux (G)
P(G) = Selección de supervivientes
Bondad P(G) = Evaluación P(G)

Figura 2.3: Algoritmo evolutivo

-25-
El evolucionismo como un proceso de optimización, está ligado al

genotipo de un individuo (ver figura 2.4), porque éste designa la constitución

genética de un individuo; es decir es la información contenida en los alelos

de los genes del individuo. Fenotipo corresponde a las características físicas

del individuo.

a b c d g g

Figura 2.4: Codificación y cromosoma

Los rasgos fenotípicos no son necesariamente consecuencia de la

carga genética del individuo, sino que el desarrollo y conducta de éste frente

al mundo exterior está condicionada por el propio medio: la epigénesis, y por

el aprendizaje del individuo y del grupo a lo largo de su existencia. La

epigénesis predice que los órganos del embrión son formados de la nada,

por medio de inducción por parte del ambiente.

El caso paradigmático de la epigénesis se da en el crecimiento, que a

partir de un cigoto se desarrolla una compleja estructura celular y orgánica.

En la teoría de sistemas se incluyen los mecanismos que permiten a un

-26-
determinado individuo modificar ciertos aspectos de su estructura interna o

externa como resultado de la interacción con su entorno inmediato.

La epigénesis representa por tanto el proceso de "sintonización" final

mediante el cual cada individuo se adapta de forma eficiente a su entorno a

partir de las capacidades contenidas en su código genético. Los genes son

parte de una red compleja de interacciones que se retroalimenta y, por ende,

no actúan como identidades independientes.

http://es.wikipedia.org/wiki/Epigénesis.

La adaptabilidad del individuo, está condicionada a la forma como se

expresa su carga genética, es decir su fenotipo; no existiendo una relación

directa entre el código genético y el comportamiento desarrollado.

2.2.5 Algoritmos Genéticos

El término Algoritmo Genético o GA, fue primeramente usado por John

Holland, desde su libro Adaptation in Natural and Artificial Systems en 1975.

La influencia de Holland en el desarrollo de este tópico es muy

importante; junto con Ingo Rechemberg y Hans-paul Schwefel (EA) y Fogel

(EP), comparten las ideas de mutación y selección, formando el núcleo de la

teoría de la evolución neo Darwiniana (Handbook de Metaheurística).

2.2.5.1 Conceptos básicos

-27-
La resolución de un problema, como la búsqueda de una solución óptima en

un gran espacio de soluciones. De la misma manera la naturaleza se

enfrenta al mismo dilema en la búsqueda de la mejor adaptación de los

individuos al medio. Los integrantes de una población compiten entre ellos

en la búsqueda de la supervivencia. Aquellos miembros de la población

capaces de adaptarse mejor al medio que les rodean, tendrán mayor

oportunidad de sobrevivir. Por otro los integrantes de la población con

menos capacidades, tendrán una oportunidad menor de sobrevivir.

El fenotipo del individuo que ha logrado el éxito o fracaso,

corresponde a la información contenida en su carga genética. Esta

información se encuentra codificada en los genes (fragmento del ADN) en

una determinada localización de un cromosoma específico. Los cromosomas

se encuentran en el interior del núcleo.

En el proceso de reproducción, los ancestros transmiten a su

descendencia parte de su carga genética. En este cruce los individuos

descendientes poseerán características del fenotipo de sus ancestros.

Debido a que los individuos mejor dotados poseerán mayor descendencia,

las sucesivas generaciones disfrutarán de la combinación de las buenas

características de generaciones pasadas, lo que se traducirá en una mejor

adaptación al medio.

-28-
Las mutaciones ocasionadas en el material genético, son otra fuente

de variabilidad genética; produciendo cambios en la población, diferentes a

las heredadas de las generaciones anteriores.

En conclusión los individuos mejor adaptados se reproducen,

sobreviven y se reproducen en mayor medida dando lugar a lo que se ha

denominado “la selección natural”.

a b c d g g

Figura 2.5: Gen

Según la Genética, los cromosomas contienen aproximadamente

80.000 genes, y son los responsables de la herencia (ver la figura 2.5).

Para aplicar GA a un problema, el primer paso consiste en codificar el

cromosoma artificial. Estos pueden ser cadenas de unos y ceros, lista de

parámetros, etc. Luego existe un procedimiento para discriminar las

soluciones buenas de las malas. Es la función de evaluación o función de

fitness, que es usada por GA para guiar la evolución de las nuevas

-29-
generaciones. En este momento se está con las condiciones de evolucionar

soluciones para el problema.

Los operadores genéticos, son utilizados para procesar iterativamente

la población, creando una secuencia de poblaciones (ver la figura 2.6).

GA es método para resolver problemas de optimización que está

basado en la selección natural, el proceso que dirige la evolución biológica.

El GA repetidamente modifica soluciones de poblaciones individuales. En

cada paso, el GA selecciona aleatoriamente individuos desde la actual

población produciendo los hijos de la nueva generación. Sobre sucesivas

generaciones, la población se dirige a la solución óptima.

Población
(cromosomas) Cadenas
Desdendientes
decodificadas
Nueva
generación
Progenitores

Operadores Evaluación
genéticos (aptitud)

Reproducción
Manipulación

Selección
Parejas (parejas)

Figura 2.6: Ciclo de un GA

-30-
GA hace uso de tres reglas principales en cada para crear la nueva

generación desde la actual población:

 Reglas de selección, que selecciona los parientes que contribuyen a

la población en la siguiente generación.

 Reglas de cruce, combina dos parientes para formar el hijo de la

siguiente generación.

 Reglas de mutación, aplica aleatoriamente cambios a los individuos

parientes para formar hijos.

La técnica GA difiere de la optimización tradicional por: genera una

población de puntos (no un punto); y selecciona la siguiente población

utilizando cambios aleatorios (en vez de conseguir un nuevo punto, desde

procedimientos determinísticos).

Asumir un espacio discreto 𝑋 y una función

𝑓: 𝑋 → ℝ

El problema general es encontrar

min 𝑓
𝒙∈𝑋

Aquí 𝒙 es un vector de variables decisionales, y 𝑓 es la función

objetivo. Se asume que el problema es de minimización. Tales problemas

son conocidos como discretos o Problema de optimización Combinatoria o


Formatted: Spanish (Peru)
COP (Combinatorial Optimization Problem). Formatted: Spanish (Peru)
Formatted: Spanish (Peru)

-31-
Una de las facilidades distintivas de GA, es permitir la separación de

la representación del problema desde las actuales variables del cual fue

originalmente desarrollado. En otras palabras, se distingue el genotipo la

representación codificada de las variables desde el fenotipo. Esto es, el

vector 𝒙 es representado por un string o una cadena s de longitud l desde un

alfabeto A usando el mapeo:

𝒄: 𝓐𝒍 → 𝑋

En la práctica, se necesita usar un espacio de búsqueda

𝓢 ⊂ 𝓐𝒍

La imagen de 𝓐𝒍 bajo 𝒄 puede representar una solución inválida al

problema original. El string de longitud l depende de las dimensiones de

ambos X y 𝓐 .

El mapeo genotipo-fenotipo, en encontrar la optimización:

min 𝑔(𝒔)
𝒔∈𝓢

Donde la función es

𝑔(𝒔) = 𝒇(𝒄(𝒔))

Con 𝒄 inyectiva, desde el punto que tiene una inversa.

Tanto los libros de Holland como Goldberg, plantean la

representación de las variables como un string binario, es decir 𝓐 = {𝟎, 𝟏}.

2.2.5.2 GA aplicado al TSP

-32-
El primer estudio sobre aproximación al TSP a partir de GA la efectuó Brady

(1985). Más tarde fue seguido por Grefenstette y colaboradores (1985),

Goldberg y Lingle (1985), Oliver y col. (1987) y otros.

Aquí se exponen algunas representaciones, así como diferentes

operadores de cruce y mutación, que han sido utilizados para resolver el

TSP por medio de GA. En particular se trata sobre la representación basada

en la trayectoria que es la más utilizada, y luego se explicará la

representación binaria que presenta algunos problemas a la hora de realizar

el cruzamiento y mutación clásicos y, por ese motivo, tuvo que idearse un

método distinto para resolver el TSP utilizando este tipo de representación.

La representación basada en la trayectoria es la representación más

natural de un tours o. Una gira se representa como una lista de n ciudades.

Si la ciudad k es el j-ésimo elemento de la lista, la ciudad k es la j-ésima

ciudad a visitar. Así por ejemplo, la gira 11 −> 2 −> 3 −> 8 −> 9 −> 4 −> 7 −>

6 −> 1 −> 5 −>10 se representa como en la figura 2.7.

11 2 3 8 9 4 7 6 1 5 10

Figura 2.7: Ciclo de un GA

-33-
Los operadores clásicos no funcionan con esta representación,

por tal razón se han definido otros operadores de cruce y mutación, tales

como: PMX, CX, OX1, OX2, POS, ER y AP para cruces, y DM, EM, ISM,

SIM, IVM, SM para mutación.

En la operación PMX, introducida por Goldberg y Lingle, una parte de

la lista representando a uno de los padres, se hace corresponder con una

parte, de igual tamaño, de la lista del otro padre, intercambiando la

información restante. Por ejemplo en la figura 2.8, se consideran las listas

de dos padres, y se selecciona aleatoriamente el intercambio de 3

elementos, empezando desde la cuarta posición. Se observa las relaciones

84, 95 y 46 y viceversa.

11 2 3 8 9 4 7 6 1 5 10

1 2 3 4 5 6 7 8 9 10 11

11 2 3 4 5 6 7 6 1 5 10

1 2 3 8 9 4 7 8 9 10 11

Figura 2.8: Operador PMX

En el primer padre está repetido el valor de 6 en la octava posición y

se cambia por 8, desde la relación 648; y el 5 (posición 10) por 9.

-34-
11 2 3 4 5 6 7 8 1 9 10

1 2 3 8 9 4 7 6 5 10 11

Figura 2.9: Resultado del operador PMX

Con respecto al segundo padre el valor repetido de 8 se cambia por 6;

y el valor de 9 (posición 10) se cambia por 5. La aplicación completa del

operador PMX es la que se presenta en la figura 2.9 para dos

descendientes.

El operador CX de Oliver (1987), crea un descendiente a partir de los

padres, de tal manera que cada posición se ocupa por el

correspondiente elemento de uno de los padres. Por ejemplo, se considera

los padres de la figura 2.10.

Se escoge el primer elemento del descendiente bien del primer

elemento del primer padre o del primer elemento del segundo padre. Por

tanto, el primer elemento del descendiente debe ser un 1 o un 8. Se ha

escogido el 1.

-35-
Luego se considera el último elemento del descendiente. Ya que

dicho elemento debe ser escogido de uno de los padres, puede tratarse de

un 6 u 8. Se escoge el 8, con lo cual el descendiente está constituido por el

1 en el primer elemento y 8 en el último.

De forma análoga se encuentra que el segundo y cuarto

elemento del descendiente deben de ser seleccionados del segundo

padre.

Una vez concluido esa etapa, se considera el tercer elemento

del descendiente. Dicho elemento puede ser escogido de cualquiera de

los padres. Supongamos que lo seleccionamos del segundo padre.

Esto implica que los elementos quinto, sexto y séptimo del

descendiente deben de escogerse del segundo padre.

-36-
8 2 3 1 5 4 7 6

1 2 3 4 5 6 7 8

1 8

1 2 4 8

1 2 3 4 5 6 7 8

Figura 2.10: Operador CX

El operador de mutación DM de Michalewizc (1992), comienza

seleccionando una sub-lista al azar. Dicha sub-lista se extrae de la lista, y se

inserta en una posición aleatoria. Por ejemplo, considerando el tours de la

figura 2.11, se observa que se selecciona la sub-lista compuesta de 8->9-

>4->7->6. Después de quitar la sub-lista se tiene: 11->2->3->1->5->10. Si se

selecciona la ciudad 10, para insertar la sub-lista se tiene la lista del nuevo

descendiente.

-37-
11 2 3 8 9 4 7 6 1 5 10

11 2 3 8 9 4 7 6 1 5 10

11 2 3 1 5 10

1 2 3 1 5 10 8 9 4 7 6

Figura 2.11: Operador de mutación DM

2.3 DEFINICION DE TERMINOS BASICOS

ADMINISTRACIÓN: Conjunto ordenado y sistematizado de principios,

técnicas y prácticas que tiene como finalidad apoyar la consecución de los

objetivos de una organización a través de la provisión de los medios

necesarios para obtener los resultados con la mayor eficiencia, eficacia y

congruencia; así como la óptima coordinación y aprovechamiento del

personal y los recursos técnicos, materiales y financieros.

ANÁLISIS: Descomposición del todo en sus partes para extraer

conocimiento.

ALTERNATIVA: Ver solución.

ALELO: Valor que puede adoptar un gen.

CLIENTE: Es quien accede a un producto o servicio por medio de una

transacción financiera (dinero) u otro medio de pago. Quien compra, es el

comprador, y quien consume el consumidor.

-38-
CONOCIMIENTO: Facultad o efecto de conocer. Poseen conocimiento

aquellos seres capaces de traer a su conciencia (vid. CONCIENCIA) el

mundo que les rodea o su propia realidad. Por el conocimiento, el sujeto

entra con las cosas conocidas en la relación sujeto-objeto. Existen grados

distintos de conocimiento (de "luces"), desde el conocimiento animal hasta la

visión beatifica.

CONTROLAR: Acto de medir y registrar los resultados alcanzados por un

agente del sistema organizacional en un tiempo y espacio determinados.

EFECTIVIDAD: Cumplimiento al ciento por ciento de los objetivos

planteados.

EFICACIA: Capacidad de lograr los objetivos y metas programadas con los

recursos disponibles en un tiempo predeterminado.

Capacidad para cumplir en el lugar, tiempo, calidad y cantidad las metas y

objetivos establecidos.

EFICIENCIA: Uso racional de los medios con que se cuenta para alcanzar

un objetivo predeterminado; es el requisito para evitar o cancelar dispendios

y errores.

Capacidad de alcanzar los objetivos y metas programadas con el mínimo de

recursos disponibles y tiempo, logrando su optimización.

ENFOQUE AL CLIENTE: Método de Gestión, basado en identificar y

desplegar internamente los requisitos cuyo desarrollo satisface las

necesidades y expectativas de los clientes, y en priorizar coherentemente los

procesos de la organización que repercuten en su satisfacción.

-39-
ESPACIO DE SOLUCIONES: Conjunto de todas las posibles soluciones a

un problema determinado que es posible alcanzar con el sistema de

resolución empleado. Equivale a espacio de individuos.

EXPERIMENTACIÓN: Observación provocada.

FENOTIPO: Características físicas de un individuo determinadas por su

genotipo y las condiciones del medio externo.

FUNCION: Mandato formal permanente e impersonal de una organización o

de un puesto de trabajo.

GEN: Analogía natural de cada uno de los elementos que conforman la

cadena o cromosoma que se necesita para representar un individuo.

GENERACION: Proceso de creación de nuevos individuos. También se

emplea como sinónimo de población.

GENOTIPO: Se empleará para denotar el contenido genético de un

individuo, es decir, el cromosoma que lo codifica.

HIPÓTESIS: Antecedente de una proposición condicional o hipotética.

Enunciado que sólo se puede probar por sus consecuencias.

INDIVIDUO: Equivalente analógicamente a solución o alternativa.

MEDIO EXTERNO: Entorno en el que se desarrollan y compiten los

individuos. En el presente trabajo será análogo al dominio de ubicación de

las actividades.

META: Es la cuantificación del objetivo que se pretende alcanzar en un

tiempo señalado, con los recursos necesarios.

MÉTODO: Proceso o camino sistemático establecido para realizar una tarea

o trabajo con el fin de alcanzar un objetivo predeterminado.

-40-
MÉTODO CIENTÍFICO: Sigue la definición tradicional del método científico.

Se enuncia una hipótesis, esta se intenta comprobar mediante la realización

de una prueba, controlando las variables

METODOLOGÍA: Parte de la lógica que estudia los métodos (y sus formas

lógicas especiales) para la investigación.

MODELAMIENTO: Tipo de aprendizaje en el que una persona aprende

observando el comportamiento deseado en otras personas.

MODELO: Descripción simplificada y práctica del funcionamiento de algo.

OBJETIVO: Expresión cualitativa de un propósito en un periodo

determinado; el objetivo debe responder a la pregunta "qué" y "para qué".

POBLACION: Conjunto de individuos existentes en un momento (iteración)

dado. En adelante denotado por P.

PROCESO: Un conjunto de acciones integradas y dirigidas hacia un fin. Una

acción continua u operación o serie de cambios o tareas que ocurren de

manera definida. La acción y el efecto de continuar de avanzar, en especial

del tiempo.

PROCESO DE MEJORA: Proceso sistemático de adecuación de la

organización a las nuevas y cambiantes necesidades y expectativas de

clientes y otras partes interesadas, realizada mediante la identificación de

oportunidades de mejora, y la priorización y ejecución de proyectos de

mejora.

SATISFACCIÓN DEL CLIENTE: Percepción del cliente sobre el grado en

que se han cumplido sus requisitos.

SISTEMA: Conjunto de procesos o elementos interconectados e

interdependientes que forman un todo complejo.

-41-
SOLUCION: Configuración compatible con las restricciones del problema y

que le da la solución.

SOLUCIÓN ÓPTIMA: Solución s ∈ S, tal que la función objeto f(s) sea

óptima. Analógicamente, el individuo mejor adaptado a su entorno.

SOLUCIÓN SUB ÓPTIMA: Solución de calidad cercana a la de la solución

óptima, o bien de calidad aceptable para las condiciones del problema

planteado.

2.4 PRESENTACION Y DESARROLLO DE LOS MODELOS

El objetivo del presente trabajo, es conocer la ruta de la fiscalización de los

Comités Partidarios en el JNE, mediante la propuesta para el Problema del

Agente Viajero, de acuerdo con el marco teórico, además de presentar de

las metodologías explicadas en dicho capítulo; y por otro lado presentar la

propuesta de modelación matemática haciendo uso de un meta generador

como es el software LINGO.

Se utiliza como datos de prueba, los lugares de la fiscalización

realizada al Movimiento Regional: Movimiento Independiente Unión y

Cambio, que se encuentra ubicada en la Región de Puno y sus Comités

Partidarios que están dentro de la región.

Se confecciona un programa en MATLAB que realiza todas las

acciones de los Algoritmos Genéticos referidas al Problema del Agente

Viajero, probándose una variedad de formulaciones de rutas en las

poblaciones.

-42-
Generar la población
inicial

Evaluar la población
con la función

Seleccionar los individuos


que formarán las parejas

No
Crear nuevos individuos
Solución al
mediante cruce y mutación
problema?

Si

Sustituir individuos en la
Terminar
población

Figura 2.12: Diagrama de flujo para GA

En la figura 2.12, se presenta el diagrama de dibujo para encontrar la

solución al TSP, haciendo uso de GA. Este esquema está basado en el SGA

(Simple Genetic Algorithm) presentado en D. Goldberg (1989).

La población está compuesta de MAXPOP individuos; donde cada

individuo se compone de un cromosoma con N valores enteros. Cada valor

es un fenotipo que corresponde a una de las ciudades.

-43-
Para generar la población inicial, el primer individuo es un tour

ordenado en forma ascendente; mientras los otros individuos son una

permutación aleatoria entre N valores:

% Inicialice la poblacion
poblacion = zeros(MAXPOP,N);
poblacion(1,:) = (1:N);
for k = 2:MAXPOP
poblacion(k,:) = randperm(N);
end

Para evaluar la población se hace uso de la función:

% Evalua la distancia total

for j = 1:MAXPOP
d = 0;
for k = 2:N
d = d + DISTANCIA(poblacion(j,k-1),poblacion(j,k));
end
totalDist(j) = d+DISTANCIA(poblacion(j,N),poblacion(j,1));
end

El proceso de determinar nuevas generaciones se presenta en el

siguiente bucle:

for iteracion = 1:MAXGEN


% Evalua la distancia total

% Encuentra la mejor ruta en la población

% Operadores GA

%Mutación

poblacion = newPoblacion; %sustituir individuos


end

-44-
CAPÍTULO III
ANALISIS SITUACIONAL Y RESULTADOS RELEVANTES

En esta sección se presenta los resultados la aplicación de los Algoritmos

Genéticos al identificar la ruta de la fiscalización de los Comités Partidarios

en el JNE, mediante la propuesta del Problema del Agente Viajero.

Las técnicas de GA, son la fuente de provisión de solución al

problema del estudio del Problema del Agente Viajero a la fiscalización en el

JNE.

La aplicación al TSP, típico, en muchas organizaciones, recae en este

caso, en la identificación de la ruta óptima de los fiscalizadores en el JNE del

Perú. En este trabajo, se presenta la técnica GA, perteneciente a la clase

de Metaheurística.

3.1 ANÁLISIS DE LA SITUACIÓN ACTUAL

Desde el nacimiento de la época republicana, no existió propiamente un

verdadero órgano rector de las elecciones populares. Las normas de

entonces señalaban la existencia de juntas o colegios electorales, inclusive

se instituyó alguna vez un poder electoral, como órganos ejecutores de los

procesos de elecciones. Pero, en la práctica, éstos fueron manejados

principalmente por el Ejecutivo o el Legislativo.

No obstante, en esta etapa se dieron diversas normas electorales.

Entre ellas, el Reglamento de Elecciones para el Congreso (1822), la Ley de

-45-
Elecciones Municipales (1824), los Reglamentos de Elecciones

de 1839 y 1849, la Ley de Elecciones de 1857 y 1861 y la Ley Orgánica de

Elecciones (1892).

El siglo XX no trajo grandes cambios para los órganos electorales ni

para el sistema de elecciones. El país afrontó varios procesos electorales

con la misma tónica de antes, sin contar con un órgano electoral imparcial,

independiente y autónomo, y con un electorado limitado únicamente al varón

contribuyente al fisco.

Luego, se dictaron nuevas disposiciones como la Ley de Elecciones

(1896), la cual, por primera vez, creó la Junta Electoral Nacional, organismo

colegiado de 9 miembros, y las Juntas Electorales Departamentales, así

como el Registro Electoral.

Otras leyes de esta etapa son la Ley N° 861 de Elecciones Políticas

(1908), la Ley N° 1072 de Elecciones Municipales (1909), la Ley N° 1533 de

Elecciones Políticas (1912) y la Ley Electoral (1912).Esta última norma

determinó la directa participación de la Corte Suprema en la conducción de

las elecciones, como las de 1913 y 1915.

En 1930, el comandante Luis Miguel Sánchez Cerro instauró una

Junta de Gobierno Militar, en Lima. Pero los acontecimientos políticos de

coyuntura hicieron que renunciara al cargo y posibilitara la instalación de una

Junta Nacional de Gobierno presidida por David Samanez Ocampo y

-46-
Sobrino, quien mediante Decreto Ley 7160, convocó a Elecciones Generales

y creó el Jurado Nacional de Elecciones como máximo órgano rector de los

procesos electorales, otorgándole una vida institucional autónoma,

independiente y de naturaleza colegiada.

La Constitución de 1993 fragmentó el Jurado en tres entes

autónomos, separando de él al RENIEC y a la ONPE.

Hasta el año 2005, el JNE organizó, dirigió y fiscalizó treinta y uno

(31) procesos electorales de carácter nacional, aparte de elecciones

complementarias, consultas populares y revocatorias. Diecisiete (17) de ellos

fueron elecciones políticas, que permitieron elegir doce (12) presidentes

constitucionales y otros tantos congresos nacionales. Diez (10) fueron

comicios municipales, dos elecciones para congreso constituyente, un

referéndum y un proceso de elecciones para gobiernos regionales

http://es.wikipedia.org/wiki/Jurado_Nacional_de_Elecciones.

El JNE ha cumplido, este 26 de mayo, 74 años de existencia. Es un

organismo constitucional autónomo que está integrado por representantes

elegidos en distintas instancias.

Este organismo dicta resoluciones de carácter general para

reglamentar y normar las disposiciones electorales. Goza de iniciativa

legislativa en materia electoral.

-47-
Fiscaliza la legalidad del ejercicio del sufragio, de los procesos

electorales, del referéndum y de otras consultas populares, garantizando así

el respeto a la voluntad ciudadana, lo que en su momento le permite

certificar los resultados electorales y otorgar las credenciales

correspondientes al Presidente de la República, congresistas y autoridades

regionales y locales.

Conforme a la Resolución N° 130-2008-JNE del Pleno del JNE,

suscrita el 28 de mayo del 2008 y que aprueba el Reglamento de

Organización y Funciones institucional, la Dirección Nacional de

Fiscalización y Procesos Electorales (DNFPE) es el órgano de línea que

depende de la Dirección Central de Gestión Institucional y está encargado

de planificar, organizar, dirigir, coordinar, controlar y ejecutar las actividades

relacionadas con los procesos electorales, referéndum y otras consultas

populares, en el ámbito de las competencias que la ley le asigna al JNE.

Asimismo, tiene a su cargo la fiscalización de los procesos electorales

conforme al ordenamiento normativo vigente, así como la investigación

aplicada a los temas político-electorales y el diseño, formulación y ejecución

de proyectos especiales en materia de gobernabilidad, democracia,

participación ciudadana y política.

La DNFPE formula, propone y ejecuta los planes de fiscalización

orientados al padrón electoral, a los procesos electorales, al cumplimiento de

los requisitos legales para la inscripción de organizaciones políticas, a la

elección de representantes de la sociedad civil ante los Consejos de

Coordinación Regional y Local, a la elección de autoridades de centros

-48-
poblados y a las encuestas de opinión relativas a las preferencias

electorales. Igualmente, formula, propone y ejecuta programas de asistencia

técnica en materia electoral, dirigida a entidades y organismos oficiales y

desarrolla programas de capacitación y asesoría al personal del JNE y de los

Jurados Electorales Especiales en materia de planeamiento, organización,

logística y fiscalización de los procesos electorales.

3.2 DESCRIPCION DEL PROBLEMA

En los procesos electorales, los fiscalizadores del JNE, visitan a los partidos

y movimientos políticos para efectuar su labor dentro del proceso de

fiscalización.

Este proceso significa realizar la tarea de ir a cada una de las

ciudades de las provincias del departamento y constatar los cumplimientos

de la ley mediante la presentación de evidencias.

Para la presente investigación, se ha tomado como muestra la

fiscalización realizada al movimiento regional: Movimiento Independiente

Unión y Cambio.

El Movimiento Independiente Unión y cambio está ubicado en la

región de Puno (en la figura 3.1 se presenta el mapa del Departamento de

Puno.); y por lo tanto sus Comités Partidarios se encuentran dentro de la

Región.

-49-
Figura 3.1: Departamento de Puno
Fuente: commons.wikipedia.org

La Región Puno se compone de 12 provincias (ver la figura 3.2) y el

fiscalizador tiene que visitar a 11 Comités Partidarios para cumplir su labor

de fiscalización.

Como el recurso fiscalizador es escazo, y el tiempo para realizar otras

fiscalizaciones es prioritario dentro del plazo por parte del JNE. Es necesario

que el fiscalizador, optimice su viaje en redondo, que saliendo de la Ciudad

de Puno, visite 10 ciudades y retorne a su punto de salida. Este es el

Problema del agente Viajero o TSP.

-50-
Figura 3.2: Mapa político de la Región Puno
Fuente: mapaperu.org

Las distancias entre las diferentes ciudades se presenta en el Anexo


I.

3.3 FORMULACIÓN DEL MODELO

Un visitador médico o agente viajero, tiene que visitar n ciudades y retornar

a su lugar de origen, minimizando la distancia total de su ruta.

-51-
Existe un punto de partida (el nodo 0), no existe demandas en las

ciudades visitadas y no hay restricciones temporales.

El problema puede formularse como:

min 𝑧 = ∑ 𝑐𝑖𝑗 𝑥𝑖𝑗


(𝑖,𝑗)∈𝐴

𝑠. 𝑎:

∑ 𝑥𝑖𝑗 = 1, ∀𝑖 ∈ 𝑉
(𝑖,𝑗)∈𝐴

∑ 𝑥𝑖𝑗 = 1, ∀𝑗 ∈ 𝑉
(𝑖,𝑗)∈𝐴

𝑥𝑖𝑗 ∈ {0,1}

El primer juego de restricciones expresa que exactamente sale un

arco de cada nodo (ciudad o vértice); y el segundo conjunto de restricciones

expresa que exactamente llega un arco a cada nodo.

Este problema tal como se presenta, no captura todas las

restricciones de un TSP (Traveling Salesman Problem).

-52-
Así presentado es un Problema de Asignación; es decir un TSP es un

Problema de Asignación, pero no todo Problema de Asignación es un TSP.

En Dantzig y asociados proponen una formulación donde las variables

binarias 𝑥𝑖𝑗 indican el arco (𝑖, 𝑗) ∈ 𝐴 utilizado en la solución. El conjunto 𝑉 es

el conjunto de todos los nodos, donde se encuentran i y j.

Al ser un problema de asignación cualquier conjunto disjunto cíclico

es la solución. Un grupo de sub-tours es un conjunto disjunto o cíclico. Ver la

figura 3.3.

1 4

2 3 5 6

Figura 3.3: Solución formada por dos sub-tours

Es necesario agregar un conjunto de restricciones de contexto. Los

autores proponen una partición no trivial (𝑆, 𝑆 ′ ) y en cada partición se

demanda que:

∑ 𝑥𝑖𝑗 ≥ 1
𝑖∈𝑆
𝑗∈𝑆′

-53-
Estas restricciones son denominadas de eliminación de sub-tours e

indican que todo subconjunto de nodos S debe ser abandonado al menos

una vez. Ver la figura 3.4.

1 4

2 3 6

S S’

Figura 3.4: Eliminación de sub-tours

La solución planteada no es práctica, puesto que necesitarían 2𝑛+1 −

2 particiones no triviales.

Miller, Tucker y Zemlin proponen restricciones de eliminación de sub-

tours agregando variables reales 𝑢𝑖 , 𝑖 = 1, ⋯ , 𝑛 :

𝑢𝑖 − 𝑢𝑖 + 𝑛𝑥𝑖𝑗 ≤ 𝑛 − 1, ∀(𝑖, 𝑗) ∈ 𝐴, 𝑖 ≠ 0, 𝑗 ≠ 0

Para la siguiente matriz de costos 𝑪 , se consigue un óptimo de 𝑧 =

14. La ruta del TSP se muestra en la figura 3.5.

-54-
∞ 10 5 6 3
10 ∞ 2 3 4
𝑪= 5 2 ∞ 6 5
6 3 6 ∞ 1
(3 4 5 1 ∞)

1 4

2 3

Figura 3.5: Tour óptimo

3.4 SOLUCIÓN DEL MODELO

La solución usando Programación Lineal, visto líneas arriba, se presenta

usando el meta generador LINGO:

PROBLEMA DEL AGENTE VIAJERO;


! TSP;
SETS:
NODO/1..11/:U;
ARCO(NODO,NODO):C,X;
ENDSETS

DATA:

C=100 8.3 8.8 8.0 1.5 2.0 10.0 1.8 6.0 1.0 6.8
8.3 100 0.5 14.3 7.8 8.3 16.3 6.5 12.3 7.3 1.5
8.8 0.5 100 14.8 8.3 8.8 16.8 7.0 12.8 7.8 2.0
8.0 14.3 14.8 100 7.5 8.0 2.0 7.8 2.0 7.0 12.8
1.5 7.8 8.3 7.5 100 1.5 9.5 1.3 5.5 0.5 6.3
2.0 8.3 8.8 8.0 1.5 100 10.0 1.8 6.0 1.0 6.8
10.0 16.3 16.8 2.0 9.5 10.0 100 9.8 4.0 9.0 14.8
1.8 6.5 7.0 7.8 1.3 1.8 9.8 100 5.8 0.8 5.0
6.0 12.3 12.8 2.0 5.5 6.0 4.0 5.8 100 5.0 10.8
1.0 7.3 7.8 7.0 0.5 1.0 9.0 0.8 5.0 100 5.8
6.8 1.5 2.0 12.8 6.3 6.8 14.8 5.0 10.8 5.8 100;

ENDDATA

! FUNCION OBJETIVO;
MIN=@SUM(ARCO:C*X);
N=@SIZE(NODO)-1;

-55-
! RESTRICCION DE SALIDA DE CADA ARCO;
@FOR(NODO(I):
@SUM(ARCO(I,J):X(I,J))=1;

);
! RESTRICCION DE LLEGADA A CADA ARCO;
@FOR(NODO(J):
@SUM(ARCO(I,J):X(I,J))=1;

);
! RESTRICCION DE ELIMININACION DE SUB-TOURS;
@FOR(ARCO(I,J)|(I#GT#1)#AND#(J#GT#1):
U(I)-U(J)+N*X(I,J)<=N-1;

);
! RESTRICCION DE VARIABLES BINARIAS;
@FOR(ARCO:
@BIN(X);

);

Global optimal solution found.


Objective value: 38.60000
Extended solver steps: 25
Total solver iterations: 3141

Variable Value Reduced Cost


N 10.00000 0.000000
U( 1) 0.000000 0.000000
U( 2) 7.000000 0.000000
U( 3) 6.000000 0.000000
U( 4) 3.000000 0.000000
U( 5) 8.000000 0.000000
U( 6) 0.000000 0.000000
U( 7) 2.000000 0.000000
U( 8) 4.000000 0.000000
U( 9) 1.000000 0.000000
U( 10) 9.000000 0.000000
U( 11) 5.000000 0.000000

Detalles adicionales a la solución se presenta en el anexo II.

Los GA proporcionan un acercamiento al aprendizaje basado

aproximadamente en la evolución simulada. Los individuos son descritos la

mayoría de las veces mediante cadenas de bits cuya interpretación depende

de la aplicación.

-56-
La búsqueda de un individuo adecuado, se inician con una población

(o colección) de individuos iniciales. Los miembros de una población actual

dada, alcanzan la siguiente generación mediante operaciones tales como la

mutación y el cruzamiento aleatorios (que están emparentados con los

procesos de la evolución biológica).

En cada iteración, los individuos de la población actual son evaluados

en relación a una medida de adaptación o función fitness, seleccionando en

forma aleatoria los individuos más idóneos que pasen a formar parte de la

siguiente generación.

El proceso de construcción para la aplicación GA de los fiscalizadores

en el proceso del JNE, se describe en las siguientes líneas.

Codificación del dominio

Las características de los seres vivos, incluso aquéllas que los hacen

idóneos para habitar en su medio, están determinadas por las proteínas que

producen, las cuales se codifican en el material genético contenido en cada

una de las células del individuo.

Se codifica el dominio del problema en todos los posibles individuos

aplicándolo al conjunto de todas las posibles secuencias de nucleótidos

(que son los elementos que forman las proteínas). El tamaño de la

población se considera en el valor de 100.

-57-
Individuo Ciudades Evaluación
1
2
3

POPSIZE-1
POPSIZE

Figura 3.6: Esquema de una población

En un GA lo primero que se requiere es determinar en qué espacio se

encuentran las posibles soluciones al problema que se pretende resolver. En

nuestro problema de optimización de una función cuyo dominio es un

subconjunto de números reales, entonces este es el subconjunto planteado.

Es necesario codificar de alguna manera el dominio del problema para

obtener estructuras manejables que puedan ser manipuladas por GA. Cada

una de estas estructuras constituye el equivalente al genotipo de un

individuo en términos biológicos. El elemento del dominio del problema al

que se mapea este genotipo es el análogo al fenotipo. El genotipo del

individuo se compone de 11 ciudades. Ver figura 3.6.

Evaluación de la población

Como en la naturaleza hay individuos más hábiles que otros para sobrevivir

lo mismo en GA; es necesario establecer algún criterio que permita decidir

-58-
cuáles de las soluciones propuestas en una población son mejores respecto

del resto de las propuestas y cuáles no lo son.

Para determinar cuáles de estos individuos corresponden a

buenas propuestas de solución y cuáles no, es necesario calificarlos de

alguna manera. Cada individuo de cada generación de un algoritmo

genético recibe una calificación o una medida de su grado de adaptación

(fitness). Éste es un número real no negativo que será más grande cuanto

mejor sea la solución propuesta por dicho individuo. En el caso del problema

a resolver que consiste en la función de minimización de distancias, la

calificación asignada a un individuo determinado debe indicar qué tan bajo

es el valor de la función en el elemento de su dominio codificado por el

individuo. Si, en cambio, el problema es determinar la ruta más corta entre

dos puntos, la calificación deberá ser tanto más alta cuanto más corto sea el

camino codificado en el individuo que esté siendo calificado.

Al cada individuo de la población se le asigna una sólo calificación,

conocida como función de adaptación, cuya evaluación puede no ser sencilla

y es, de hecho, lo que en la mayoría de los casos consume más tiempo en la

ejecución de un GA. Es importante tener en cuenta que se evalúa una vez

en cada individuo por cada generación. En la aplicación del AG, se ejecuta

una población de tamaño 100 durante 1000 generaciones, la función es

evaluada 100,000 veces.

Selección

-59-
Una vez calificados todos los individuos de una generación, el algoritmo

debe seleccionar a los individuos más calificados para que tengan mayor

oportunidad de reproducción. De esta forma se incrementa la

probabilidad de tener individuos idóneos en el futuro. La selección

explota el conocimiento que se ha obtenido hasta el momento,

procurando elegir lo mejor que se haya encontrado, elevando así el nivel de

adaptación de toda la población.

Desde la conveniencia de contar con una estrategia de selección

estricta para que se mejore rápidamente la población y converja el algoritmo,

es decir, que la población se acumule alrededor de un genotipo

óptimo, esto podría ocurrir que la población se acumulara rápidamente

alrededor de algún individuo que sea bueno, comparativamente con el resto

de los individuos considerados a lo largo de ejecución del algoritmo, puede

ocurrir que este individuo puede no ser el mejor posible. Es la llamada

convergencia prematura y no se puede asegurar pero sí procurar que lo

anterior no ocurra. Se hace necesario adicionar a la explotación la

exploración. El AG debe, no sólo debe seleccionar de entre lo mejor de la

búsqueda, sino procurar encontrar mejores individuos. A esto se dedican los

operadores de cruzamiento y mutación.

Cruzamiento

El cruce de los códigos genéticos de individuos exitosos favorece la

aparición de nuevos individuos que heredan de sus ancestros características

deseables. En el contexto de los GA, reproducción significa que, dados dos

-60-
individuos seleccionados en función de su grado de adaptación, éstos pasen

a formar parte de la siguiente generación o, al menos, mezclen sus

códigos genéticos para generar descendientes que posean un código

híbrido. Existen muchos mecanismos de cruzamiento y todos tienen por

objeto que el código de un individuo 1 y el de uno 2, previamente

seleccionados de la población, se fragmenten y recombinen para formar

nuevos individuos con la esperanza de que éstos hereden de sus

ancestros las características deseables.

Mutación

Ocasionalmente algunos elementos del código de ciertos individuos de

un algoritmo genético son alterados a propósito. Éstos se seleccionan

aleatoriamente en lo que constituye la analogía de la mutación. El

objetivo es generar nuevos individuos que exploren regiones del dominio

del problema que probablemente no se han visitado aún. Esta exploración

no presupone conocimiento alguno. Aleatoriamente se buscan nuevas

soluciones posibles que quizá superen las encontradas hasta el

momento. Esta aplica la GA a gran variedad de problemas, no presuponer

conocimiento previo acerca del problema a resolver ni de su dominio, no sólo

en la mutación sino en el proceso total. De hecho, el problema a resolver

sólo determina la función de evaluación y la manera de codificar las

soluciones posibles. Ver figura 3.7.

-61-
Generaciones

Operadores

Actual Nueva

Figura 3.7: Nuevas generaciones

Desde GA, haciendo uso del programa que se presenta en el anexo

III, se obtiene la solución de 38.6, que se presenta en la figura 3.8. Una

solución óptima alternativa, se presenta en la tabla 3.1 con los detalles de la

ruta a seguir.

-62-
Figura 3.8: Solución al TSP

Punto Ciudad Distancia


11 Yunguyo
2 Juli 1.5
3 El Collao 0.5
8 Puno 7
9 San Antonio 5.8
4 Huancané 2
7 Moho 2
6 Melgar 10
1 Azángaro 2
5 Lampa 1.5
10 San Román 0.5
11 Yunguyo 5.8
Total 38.6

Tabla 3.1: Ruta óptima alternativa al TSP

3.5 ANALISIS E INTERPRETACION DE RESULTADOS

Se evidencia en la utilización de GA, por la rapidez con que obtiene la

solución. Esta es utilizada para la optimización de TSP cuando existe una

gran cantidad de puntos o ciudades. Ver tabla 3.2.

-63-
Para la aplicación del problema de los fiscalizadores de la región

Puno, los datos de distancias son las horas que se demora el viaje entre

cada ciudad. Como el total es 38.6 horas, desde el tiempo de 6 días o 144

horas que existe de restricción de plazo para cumplir la labor de

fiscalización; se observa que 38.6/144x100%, el 27% del tiempo de plazo

transcurre sólo en desplazamiento del personal de fiscalización. De allí la

importancia que el tiempo en movilizarse sea una variable de alta

consideración.

Iteración 1 2 3 4 5 6

Evaluación 50.2 50.2 44.2 38.6 38.6 38.6

Tabla 3.2: Valor de la distancia total por iteración

-64-
CAPÍTULO IV
CONCLUSIONES Y RECOMENDACIONES

4.1 CONCLUSIONES

1. La hipótesis 1, quedó validada por la obtención de la solución óptima

usando Algoritmos Genéticos.

2. La herramienta de gestión, permite obtener resultados prácticos para

labor de los fiscalizadores en el JNE.

3. Los GA, permiten encontrar soluciones a los problemas de

optimización de una forma muy simple, en contraposición al

tratamiento de la Programación Matemática.

4.2 RECOMENDACIONES

1. Utilizar la herramienta computacional para obtener respuestas ante

situaciones de la búsqueda de la mejor ruta de los fiscalizadores.

2. La fidelidad de las distancias es muy importante para efectuar una

toma de decisiones racional.

3. Hacer uso de software como Google Map, para encontrar las

distancia entre diversos puntos, cuando se utilice la herramienta de

gestión para otras situaciones de fiscalización, en la región a estudiar.

4. La metodología planteada en la presente investigación, es

generalizable a cualquier situación donde se necesite tomar

decisiones en torno a problemas de tours óptimos.

-65-
5. Los GA son una fuente confiable de solución a otros problemas de

gestión dentro de cualquier organización.

-66-
4.3 REFERENCIAS BIBLIOGRÁFICAS Commented [wbr2]: Checar si esta forma es la más correcta de
hacer las reerencias, nosotros seguimos un modelo APa solo con
apellidos y la inicial de un nombre.
De acuerdo con APA, tampoco enumeramos las referencias
Departamento de Puno: Obtenido el 5 de Diciembre de 2012 en: bibliograficas

http://commons.wikimedia.org/wiki/File:Peru_-

_Puno_Department_(locator_map).svg

George B. Dantzig, D. Fulkerson y S. Johnson. (1954). Solution of a large

scale Traveling Salesman Problem, Operations Research 2, 393-410.

Epigénesis. Obtenido el 3 de diciembre de 2012 en:

http://es.wikipedia.org/wiki/epigenesis.

Glover, F., Kochenberg, G. (2003). Handbook of Metaheuristics.

Massachusetts, USA: Kluwer Academic Publishers.

Goldberg, David (1989). Genetic Algorithms in Search, Optimization, and

Machine Learning. New York, USA: Addison-Wesley.

Hernandez, R., Fernandez, C. & Baptista, P. (2010) Metodología de la

Investigación. México: Editorial Mc Graw-Hill.

Helsgaun, K. (2000). Obtenido el 8 de diciembre de 2012 en:

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.180.1798.

Helsgaun, K. (2006). Obtenido el 8 de diciembre de 2012 en:

http://citeseerx.ist.psu.edu/viewdoc/summary;jsessionid=4C6DB5985C70812

3EC8FE2CC81026D28?doi=10.1.1.180.1807.

JNE. Obtenido el 3 de diciembre de 2012 en:

http://es.wikipedia.org/wiki/Jurado_Nacional_de_Elecciones

Mapa político de la Región Puno: Obtenido el 5 de Diciembre de 2012 en:

http://www.mapaperu.org/informacion/mapa-politico-puno.html

-67-
Michalewicz, Z. (1992). Genetic Algorithms + data structures = evolution

programs. New York, USA: Springer-Verlag.

Mitchell, Melanie. (1996). An Introduction to Genetic Algorithms”. MIT Press.

Miller, C., Tucker, A., Zemlin, R. (1960). Integer Programming formulation of

Traveling Salesman Problem, Journal of the ACM 7, 326-329.

Lin, S. and B. Kernighan. (1973). “An Effective Heuristic Algorithm for the

Traveling-Salesman Problem.” Operations Research 21, 498–516.

Phillips, D., Ravindran, A., Solberg, J. (1976). Operations Research:

Principles and Practice, John Wiley & Sons, Inc

The MathWorks (2008) Manual de Algoritmos Genéticos MATLAB. USA.

-68-
FICHA A TECNICA A UTILIZAR

MATLAB

Software utilizado en Ciencias e Ingeniería. Posee entre otros el TOOLS

GENETIC ALGORITHM para el entorno de modelación de GA.

LINGO

LINGO es un software de la empresa Lindo Systems Inc que permite

resolver modelos matemáticos lineales y no lineales. LINGO (del inglés

LINear Generalize Optimizer) es una herramienta simple para formular

problemas lineales y no lineales, resolverlos y analizar su solución.

El resultado que LINGO proporciona es la optimización que ayuda a

encontrar el mejor resultado: la ganancia más alta, o el costo más bajo. A

menudo estos problemas involucran el uso más eficiente de los recursos.

Los problemas de optimización son clasificados a menudo como lineales o

no lineales, dependiendo si las relaciones en el problema son lineales con

respecto a las variables.

Uno de los rasgos más poderosos de LINGO es su aplicación en el

lenguaje de modelo matemático. El cual permite expresar un problema de

una manera muy similar a la anotación matemática normal pudiendo

también, expresar una serie entera de restricciones en una declaración

compacta. Los modelos son fáciles de efectuar mantenimiento.

-69-

También podría gustarte