Codigo Problema Mochila
Codigo Problema Mochila
Codigo Problema Mochila
# Definir los objetos disponibles, cada objeto es una tupla (valor, peso)
objetos = [(4, 7), (5, 6), (6, 8),(3, 2)]
# Algoritmo genético
def algoritmo_genetico():
poblacion = inicializar_poblacion()
for _ in range(NUM_GENERACIONES):
nueva_poblacion = []
for _ in range(TAMANO_POBLACION // 2):
padre1, padre2 = seleccion(poblacion)
hijo1, hijo2 = cruzamiento(padre1, padre2)
hijo1 = mutacion(hijo1)
hijo2 = mutacion(hijo2)
nueva_poblacion.extend([hijo1, hijo2])
poblacion = nueva_poblacion
mejor_individuo = max(poblacion, key=lambda x: evaluar_individuo(x)[0])
return mejor_individuo, evaluar_individuo(mejor_individuo)