private void Awake() { //GENERACIÓN DE FUNCIÓN DE FITNESS : (Grid de HxW) optimizationFunction = new FitnessMap(width, height); Debug.Log("<b><color=teal>[1a] FITNESS FUNCTION CREATED </color></b>" + optimizationFunction); //Load map [FUTURE] //INICIALIZAR LA POBLACIÓN population = new Population(optimizationFunction, OptimizationType.MINIMIZE); bool initSucess = population.InitPopulation(populationSize, mutationFactor); Debug.Log("<b><color=teal>[2] POPULATION INITIALISED (Basic CONFIGURATION + MUTATION FACTOR) </color></b>" + population); Debug.Log("Comparing performance with different sizes: mutacion mitad, reemplazo mitad"); TestWithParams(20, 0.5f, 0.5f, 10); //TestWithParams(20, 0.5f, 0.5f, 10 / 2); //TestWithParams(30, 0.5f, 0.5f, 10 / 2); //TestWithParams(40, 0.5f, 0.5f, 10 / 2); }
// Start is called before the first frame update void Start() { map = problem.optimizationFunction; StartCoroutine(progressiveRendering()); }
OptimizationType optimizationGoal; // MINIMIZE o MAXIMIZE //Step 0: Problem input public Population(FitnessMap optimProblem, OptimizationType goalType = OptimizationType.MINIMIZE) { optimizationFunction = optimProblem; optimizationGoal = goalType; }