- crossover: added one point crossover to solution (8402e3e)
- ga: added plot to display fitness across generations (075faf2)
- ga: created new data and added global best find instead of best from last generation (596d783)
- ga: implemented cycle method to run for every generation (bd2388d)
- individual: changed fitness function to return negative number when conditions aren't met (cda6239)
- individual: created fitness function and weight function (f628f80)
- individual: created individual class (9822839)
- mutation: implemented inversion mutation (56d7bae)
- mutations: added bit flip mutation to GA (38b67ab)
- population: created population class to define individuals as numpy array (1d3fb97)
- selection: completed roulette selection and implemented it in selection function (4a67085)
- selections: created tournament selection (c62f975)
- individual: created individual class (9822839)