Colorear los nodos de un grafo, de modo que si son nodos adyacentes reciben colores distintos.
import ag_lbpt.util as util
#--------------------------------------------------------------------------------------------------------------------------------------
# INPUT
#--------------------------------------------------------------------------------------------------------------------------------------
# ArchicoGRAFOcsv = 'col_12n.csv' : Archivo de datos (Grafo: fila1: Nodos, restante: nodos adyacentes) en formato csv
# Iteraciones = 10 : cantidad de veces que se ejecuta el AG
# Generaciones = 50 : Cantidade de generaciones que itera el AG
# Poblacion = 150 : Cantidad de pobladores del AG
# ProbMutacion = 0.1 : Probabilidad de mutación
# TipoMutacion = 'UnPunto' : El individuo mutante se consigue por permutación de un atributo
# TipoCruce = 'UnPunto' : la operación cruce se genera en un punto
# GenUnico = False : Los genes puedenn tener valores repetidos
# IniciFijo = False : El primer gen puede tomar cualquier valor
# IniciFinFijo = False : El perimer y último gene puede tomar cualquier valor
# N = 12 : Cantidad de ciudades
# MinCromosoma = [0,0,0,0,0,0,0,0,0,0,0,0] : Mínimo valor de los genes (mínima valor de color)
# MaxCromosoma : [3,3,3,3,3,3,3,3,3,3,3,3] : Máximo valor de los genes (máxima valor de color)
# TipoDato : ['int','int','int','int','int','int','int','int','int','int','int','int'] : Tipo de dato
# de los genes, 'int' número entero; 'float' número real
# PobElite = 2 : Indidivuos de la élite
#--------------------------------------------------------------------------------------------------------------------------------------
# OUTPUT
#--------------------------------------------------------------------------------------------------------------------------------------
# AG : Objeto algoritmo genético
# Solución : Cromosoma solución al problema
# Costo : Costo que implica dicha solución
#--------------------------------------------------------------------------------------------------------------------------------------
AG, Solucion, Costo = util.agColorGrafo('col_12n.csv', 10, 50, 150, 0.1, 'UnPunto', 'UnPunto',
False, False, False, 12, [0,0,0,0,0,0,0,0,0,0,0,0], [3,3,3,3,3,3,3,3,3,3,3,3],
['int','int','int','int','int','int','int','int','int','int','int','int'],
2)
print('Solucion: ', Solucion)
print('Costo: ', Costo)
Solucion: [1, 2, 0, 0, 2, 1, 1, 3, 3, 3, 3, 3] Costo: 0
AG.GraficaCosto()
util.GraficarGrafo(Solucion,util.Diccionario_SN)
Luis Beltran Palma Ttito, luis.palma@unsaac.edu.pe (autor)
Dennis Iván Candia oviedo, dennis.candia@unsaac.edu.pe (coautor)
Carlos Ramón Quispe Onofre, carlos.quispe@unsaac.edu.pe(coautor)
Willian Zamalloa Paro, willian.zamalloa@unsaac.edu.pe(coautor)
José Mauro Pillco Quispe, jose.pillco@unsaac.edu.pe(coautor)