Commit Graph

40 Commits

Author SHA1 Message Date
2b6f0e2e97 Decorators cleanly preserve both function names and doc-strings. 2020-12-27 10:11:43 -05:00
adab92216f Removed unnecessary code and decorator naming 2020-12-21 09:56:56 -05:00
eaf22c07d2 Update parent_selection_methods.py 2020-12-13 12:11:42 -05:00
403219a7ba Fixed stochastic_arithmetic inflation 2020-12-13 12:11:09 -05:00
3dbc68a667 Extended to allow selection probabilities of 0 or 1 2020-12-13 11:36:13 -05:00
f3460617f6 Added stochastic arithmetic 2020-12-13 10:26:34 -05:00
4edf073f32 Tournament selection improved slowest case. 2020-12-09 11:03:04 -05:00
85855c2746 Renamed decorators for consistency 2020-12-03 00:21:52 -05:00
e7f696fd06 Better word choice for comment 2020-12-02 18:59:40 -05:00
4386f2c959 Cleaner comments 2020-12-02 18:55:25 -05:00
23efae27dc Added selection_probability to stochastic selection. 2020-12-02 18:50:59 -05:00
bfe4699513 Added cleaner comments to explain. 2020-12-02 18:00:23 -05:00
1761092abb Update stochastic methods
- Added a stochastic rank selection and edited cleaner stochastic fitness selection using random.choices.
- Edited stochastic fitness selection to allow negative converted fitness values.
- Edited exception message for check_positive_fitness.
2020-12-02 17:55:57 -05:00
a9fe22ecf1 Fixed minor bug 2020-11-27 16:24:20 -05:00
312d0adcc9 Make sure at least 2 parents are selected 2020-11-27 16:06:57 -05:00
1ba86c0661 Cleaned up spacing 2020-11-26 21:30:49 -05:00
1b35a13900 Minor logical bug 2020-11-23 11:54:18 -05:00
c8985f9872 Opted for single _ instead of double _ 2020-11-22 17:55:58 -05:00
8ed3cbe0ee Removed get/set 2020-11-22 15:57:36 -05:00
470b33aa31 Cleaner random functions used. 2020-11-20 19:58:25 -05:00
73461f7915 Comments updated 2020-11-20 19:06:55 -05:00
d4c9f3b926 Exception comes after main code 2020-11-20 09:18:23 -05:00
965ad352a6 Added copies for external access of function decorators 2020-11-19 23:25:33 -05:00
3d10adb2d9 Fixed scope of function decorators 2020-11-19 22:28:04 -05:00
652e4a4b5b Added function decorators 2020-11-19 21:28:16 -05:00
0ee545429c Added iterable features 2020-11-19 11:46:47 -05:00
ae74ce1766 Minor edits 2020-10-25 22:36:54 -04:00
8e2698fc0d Implemented basic functionality for using different target fitness types 2020-10-21 14:11:43 -04:00
9101072f26 Update parent_selection_methods.py 2020-10-18 23:28:07 -04:00
dd294db952 Renamed parent selection subclasses to rank/fitness 2020-10-18 21:08:54 -04:00
5df19df643 Population.next_population and better comments 2020-10-15 00:22:58 -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
2485af795a Added Jared's comments to Roulette selection 2020-10-13 00:03:00 -04:00
50e7166ea5 Removed useless import statements 2020-10-12 23:13:02 -04:00
3424fd4da7 Added blank lines and fixed run_testing 2020-10-12 19:57:57 -04:00
42c0fdbc10 updated all code to use .size() methods 2020-10-12 17:05:57 -04:00
159506824a parent selection commenting
parent selection commenting
2020-10-12 16:15:26 -04:00
94d7c52666 Added comments & fixed small bug
Mostly added comments, but also fixed a small bug in parent selection where the tournament size would be much smaller than it should be.
2020-10-12 09:23:41 -04:00
dcc3684202 Updated tournament selection
On small populations, there is now a lower bound on the tournament size.
2020-10-08 22:48:45 -04:00
88927f7415 File name changes to match the rest of framework. generation goal was setup twice in EasyGA. 2020-10-08 15:53:35 -04:00