#pragma once #include "structures/Distances.h" #include "structures/Centers.h" #include "structures/Employees.h" #include "structures/Missions.h" #include "Solution.h" typedef std::vector Solutions; typedef std::vector Scores; void solver(int nPop, int nGen, float rCross, float rMut, Distances& distances, Centers& centers, Employees& employees, Missions& missions); float fitness(Solution*); Solution* selection(Solutions*, Scores*); void crossover(float rCross, Solution*, Solution*, Solution**, Solution**); void mutator(Solution*, float); Solutions* generateSolutions(int nPop, Distances& distances, Centers& centers, Employees& employees, Missions& missions); Solution* generateSolution(Distances& distances, Centers& centers, Employees& employees, Missions& missions);