ec1b67fc00
Added Default for gene impl and setter example in Easy GA
2020-10-15 01:46:13 -04:00
5df19df643
Population.next_population and better comments
2020-10-15 00:22:58 -04:00
543b295e52
Updated gene impl
2020-10-14 23:09:55 -04:00
0090db9dce
Fixed method names and added some crossover methods and tests for floats
2020-10-13 21:07:05 -04:00
2f91dea637
Changed testing on EasyGA
2020-10-13 16:05:34 -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
645f704b19
Fixed broken defaults and changed fitness function to is_it_5
2020-10-13 00:10:06 -04:00
2485af795a
Added Jared's comments to Roulette selection
2020-10-13 00:03:00 -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
8056bbde1c
Added test_EasyGA.py
2020-10-12 23:27:46 -04:00
67f5133171
Fixed population creation
2020-10-12 23:18:46 -04:00
50e7166ea5
Removed useless import statements
2020-10-12 23:13:02 -04:00
b8f1de9b52
Fixed crossover methods
2020-10-12 22:58:26 -04:00
72ae3ec1e7
Even better sort by fitness
2020-10-12 22:51:13 -04:00
60ab7cceb2
Merge branch 'master' of https://github.com/danielwilczak101/EasyGA
2020-10-12 22:48:50 -04:00
1f3e01de0a
File name problems
2020-10-12 22:46:54 -04:00
6f41ff7b7d
Fixed init file on the root
2020-10-12 22:44:50 -04:00
86fbd1a9c0
Improved the sort by fitness function
2020-10-12 22:43:41 -04:00
f277bc1684
Changed a few comments
2020-10-12 22:05:26 -04:00
db93235642
Cleaned it a bit more to match mutation methods
2020-10-12 22:02:18 -04:00
0b53f2cd81
Added comments
2020-10-12 21:43:23 -04:00
b6ae77c7ea
Several Changes
...
Crossover/Mutation:
- Split into individual and population subclasses.
- Added sequential population crossover selection.
- Renamed and reimplemented mutation methods.
EasyGA:
- Improved make_obj methods for the chromosomes and populations to take arguments.
Initialization:
- Improved to shorter code.
- Fixed repeated error messages
Chromosome:
- Changed get/set_genes to get/set_gene_list.
2020-10-12 21:39:17 -04:00
55c92d920f
Update fitness_examples.py
2020-10-12 19:59:01 -04:00
3424fd4da7
Added blank lines and fixed run_testing
2020-10-12 19:57:57 -04:00
e52b32f23c
Fixed some errors with the new updates
2020-10-12 17:14:24 -04:00
42c0fdbc10
updated all code to use .size() methods
2020-10-12 17:05:57 -04:00
8137bb64d9
Some cleaning up
...
Added Population.size() and cleaned up the survivor selection.
2020-10-12 16:53:06 -04:00
159506824a
parent selection commenting
...
parent selection commenting
2020-10-12 16:15:26 -04:00
96a1177a67
Updated commenting and removed old survivor selection method
...
Updated commenting and removed old survivor selection method
2020-10-12 16:11:41 -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
c3d9ef8bd1
Updated sort_by_best_fitness
2020-10-08 23:16:29 -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
3649293133
Updated GA attribute structure, separated selection file structure
...
Updated GA attribute structure, separated selection file structure
2020-10-06 22:11:40 -04:00
7e8c81c03d
Fixed __init__ and chromosome errors
...
Fixed __init__ and chromosome errors
2020-10-06 21:20:14 -04:00
eca22fb9e8
Delete new_initialization_method_testing.py
2020-10-06 21:13:02 -04:00
59f0d03f72
Merge branch 'master' into ryley_beta
2020-10-06 21:11:22 -04:00
af88e4c348
Changed some hard-coded stuf to GA attribute
...
Changed some hard-coded stuf to GA attribute
2020-10-06 20:58:20 -04:00
32b61196c5
Delete test_EasyGA.py
2020-10-06 20:56:52 -04:00
2f78c9f464
Roulette Selection added
2020-10-06 18:46:34 -04:00
49c98ba27c
First generation now only does initialization stuff
...
First generation now only does initialization stuff
2020-10-06 18:12:20 -04:00
e7ac0e23f4
Optimizations/updates
...
1. Deleted duplicate functions in EasyGA
2. Added new index-dependent fitness example
3. GA now auto-sorts by best fitness immediately after the fitness is calculated across the board
4. Removed 'selected' status flag from the Chromosome flag
5. Added mating_pool attribute to the population
6. Changed other code to be in line with 4 and 5
7. Optimized tournament selection method
2020-10-06 17:55:17 -04:00
04c749d95c
Add files via upload
2020-10-06 14:50:46 -04:00
4799722a12
Add files via upload
2020-10-06 14:48:51 -04:00
3bfa962194
Updated fitness based termination
...
It now works, although it only supports a minimum approach
2020-10-05 20:59:21 -04:00
665062fdf1
Updated Implementation Framework
...
Updated to cover changes made by Dan to Master regarding general design changes
Also added remove_two_worst survivor selection method
2020-10-05 20:46:25 -04:00
68af88df92
Some how we lost the crossover folder
2020-10-05 19:03:16 -04:00
68db360b94
Alot of name changes and file name changes
2020-10-04 23:56:51 -04:00
e05aa7f62b
Changed implementation framework
...
Instead of a nested approach, selection/crossover/mutation are all called separately and directly by the GA. selection_impl was also separated into parent_selection_impl and survivor_selection_impl, as both are needed separately.
2020-10-04 17:59:59 -04:00