Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Se realiza una lista con el número total de posiciones y la distancia de cada posición con respecto a
las otras. (Ejm. 15 posiciones)
2. Al abrir el programa principal, primero se carga la lista previa en una matriz de datos bajo el nombre
”distancia”, y las siguientes variables:
cantidad_poblacion: Es la cantidad de individuos por generacion
iteraciones: Es la cantidad de generaciones en total
porcentaje_mutacion: Es el grado de variación de los genes de cada individuo por generacion
3. Se genera mediante la función “crearPoblacionInicial” el número total de individuos de la población
inicial (en este caso 1000 formas aleatorias para recorrer todas las posiciones).
6. Una vez realizado el ordenamiento previo ya se pueden extraer los valores de tipo de recorrido,
distancia de recorrido total y valor fitness en distintas matrices
7. Se generara una matriz llamada “bolsa” en la cual mediante un bucle se irá repitiendo y ordenando
los tipos de recorridos (individuos) más óptimos.
8. Se realiza una sumatoria desde 1 a 1000 (número total de la población inicial) para definir la
ubicación de cada individuo dentro de “bolsa” y se habilita una matriz para proceder
posteriormente a almacenar los nuevos individuos con las mejores características
9. Se ingresa en un bucle, el cual seleccionara al azar una pareja de individuos (padres), de ambos se
tomaran ciertas características (función “reproducir”) para generar un nuevo individuo (hijo).
11. Este proceso se repite según el valor ingresado en “iteraciones” (generaciones, nuevas
poblaciones). Al finalizar la última generación debería mostrar la mejor forma de pasar por las 15
posiciones con la menor distancia recorrida.
12. Con una función auxiliar (plotGraphVU) podemos visualizar las posiciones y las trayectorias de la
mejor ruta de manera gráfica.
Para aplicar ejecutar el AG con una matriz que cuente con un número distinto de posiciones, solo se
procede a cambiar el tamaño de las variables a utilizar
2. Se modifican las variables del número de posiciones y tamaño de matrices en el programa principal
y en las funciones
3. Una vez ejecutado el algoritmo nos arroja los siguientes valores, bastante cercanos a los resultados
de la publicación mencionada anteriormente, en este caso solo con 11 posiciones
4. Realizando una comparativa con ambos resultados se puede observar que el resultado más óptimo
fue generado por el algoritmo genético de la publicación mencionada, ya que reemplazando los
datos en la matriz de individuos (cromosomas) se puede calcular que la distancia varia en una
unidad.