Commit Graph

42 Commits

Author SHA1 Message Date
0386be436f Consistent format for setting a slice of items 2021-01-01 16:30:45 -05:00
94793b1b05 Added decorator file and fixed old crossover usage in adapt method 2021-01-01 16:11:14 -05:00
7c55bf431b Renamed files 2020-12-30 16:21:47 -05:00
49e20ad20d Simpler appending to next population since it will be sorted anyways 2020-12-29 22:51:14 -05:00
1e2bb1f542 Added most list functionality 2020-12-29 19:36:46 -05:00
6aa4b8b82f Cleaned up gene comparison method 2020-12-29 19:36:06 -05:00
f5244e3cc9 Cleaner structure repr without making assumptions on usage 2020-12-23 11:41:27 -05:00
c43eef38c4 Added automatic casting to all methods 2020-12-20 22:01:15 -05:00
97c614c74c Fixed repr format string 2020-12-20 15:53:56 -05:00
27cc94e488 Added automatic casting for easier usage 2020-12-20 15:33:12 -05:00
a15803e7ef Proper repr implementations, improved index_of method, and improved initialization
- Repr now supports reversal using eval i.e. obj == eval(repr(obj)) for any data object. This assumes a GA object called ga.
- Index of now supports local searching if an estimate of the index is given.
- Initialization of data objects is now easier and works for any iterable input e.g. ga.make_chromosome
2020-12-20 13:59:12 -05:00
c19ef0d1be Fixed bugs involving None types 2020-12-07 21:07:04 -05:00
21a709f5d0 Added chromosome comparison by their genes 2020-12-06 11:17:15 -05:00
58849e87e6 Added gene comparison by gene value 2020-12-06 11:15:10 -05:00
8e0437bf4e Cleaned up to allow any iterable input 2020-11-30 14:12:36 -05:00
1197447d7e Added ga.adapt() 2020-11-27 19:12:40 -05:00
32dc66f857 Cleaned up spacing and added gene_value_iter 2020-11-26 21:31:26 -05:00
1ba86c0661 Cleaned up spacing 2020-11-26 21:30:49 -05:00
cdc2b6bdfb Removed get/set 2020-11-22 15:58:11 -05:00
73461f7915 Comments updated 2020-11-20 19:06:55 -05:00
2ad19a50d3 Cleaned up repr using enumerate 2020-11-20 09:17:17 -05:00
aa1537b5dd Fixed comment. 2020-11-20 09:16:56 -05:00
2c46e32782 Minor changes and fixes
__iter__ has to return an iter
2020-11-19 20:18:11 -05:00
3412c05da2 Cleaned up list usage 2020-11-19 18:02:07 -05:00
1bd806591e Cleaned up __repr__ 2020-11-19 12:34:23 -05:00
0ee545429c Added iterable features 2020-11-19 11:46:47 -05:00
6e95ff5d9d Rewrote data_list to __iter__ 2020-11-19 10:17:22 -05:00
6c9a9205b0 Added data_list() 2020-11-19 09:53:27 -05:00
76e0439160 Renamed list() to data_list() 2020-11-19 09:53:10 -05:00
8eb436d6a5 Added list function to chromosome class 2020-11-19 01:41:01 -05:00
097e219a03 Fixed population print 2020-11-17 08:42:59 -05:00
1d97a92fb7 Changed population print 2020-11-17 08:40:51 -05:00
260d17bf91 Cleaned up the while loop 2020-11-17 01:22:05 -05:00
0d8fb6147c Updated repr/str 2020-11-16 20:51:09 -05:00
2efebc4bcd Fixed chromosome so now it adds to the database and added __str__ to chromo 2020-11-16 17:14:09 -05:00
22bd0527e5 Deepcopy'd data 2020-11-12 16:40:00 -05:00
e22ff55972 Worked on graphing class 2020-11-10 18:12:37 -05:00
5df19df643 Population.next_population and better comments 2020-10-15 00:22:58 -04:00
0090db9dce Fixed method names and added some crossover methods and tests for floats 2020-10-13 21:07:05 -04:00
fb213f04dd Added more structure methods and some quality of life changes
Overall cleaned up a lot of comments.

EasyGA:
- Code cleanup.

Population:
- Added sort_by_best_fitness
- Added parent/mating pool methods.
- Renamed some methods for consistency.

Chromosome:
- Added get_gene(index).

Parent Selection:
- Improved selection methods to use the ga.selection_probability so that the roulette selection actually works well.
- Added stochastic selection.

Survivor Selection:
- Added fill_in_random and fill_in_parents_then_random.

Crossover/Mutation:
- Cleaned up code.
2020-10-13 12:48:20 -04:00
9c6d5777b7 Removed old structure files and added empty test file 2020-10-12 23:48:26 -04:00
b42034c402 Added structure directory and improved sort by fitness 2020-10-12 23:43:28 -04:00