Commit Graph

315 Commits

Author SHA1 Message Date
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
4770473825 Merge branch 'master' of https://github.com/danielwilczak101/EasyGA 2020-10-12 17:16:49 -04:00
e52b32f23c Fixed some errors with the new updates 2020-10-12 17:14:24 -04:00
80dcb79144 Fixed EasyGA to match survior selection method 2020-10-12 17:10:04 -04:00
297137b6ac Merge branch 'master' of https://github.com/danielwilczak101/EasyGA 2020-10-12 17:07:57 -04:00
aba5da7c06 Remove useless folder and file 2020-10-12 17:07:48 -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
298a6eec1a Merge pull request #13 from danielwilczak101/ryley_beta
Selection/Crossover/Mutation Framework Update
2020-10-06 21:12:09 -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
a083d16db8 Delete .DS_Store 2020-10-06 20:55:07 -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
74ee67647c Merge branch 'Dans_devel' 2020-10-05 18:56:12 -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
c18a531034 Updated selection implementation, added with/without replacement variation 2020-10-04 15:54:38 -04:00
89df506469 Fixed more github upstream stuff
why v2
2020-10-04 14:38:41 -04:00
4b375659bb Removed weird github thing with old implementation
Why
2020-10-04 14:35:19 -04:00