Commit Graph

412 Commits

Author SHA1 Message Date
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
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
7e587d48d0 Test Implementation for selection/crossover/mutation
The current test implementation includes random mutation, single point crossover, and tournament selection. The implementation, in short, is a nested approach. The selection method is the only thing actually called by the GA. Both crossover and mutation occur within the selection method. As long as these three systems all follow a standard input/output system, any implementation we build, as well as any user implementations, will work perfectly. The selection function must take GA as a parameter and output a new population. Crossover takes in GA and outputs a population. Mutation takes a chromosome set and outputs a new chromosome set.

Many of the changes in this commit are regarding this test implementation. I have also changed many of the file names from "x_examples" to "x_types" and updated the class names to follow capitalziation standards. I did this because I feel personally like the built-in mutation, crossover, and selection implementations are less "examples" and more just already built implementations to make the code required from the user smaller.
2020-10-04 08:00:33 -04:00
80ebe8ca0c Comments 2020-10-01 01:33:34 -04:00
a62cdd4ce0 Comments 2020-10-01 01:29:05 -04:00
002772c71f Updated comments on crossover and selection 2020-10-01 01:22:53 -04:00
7ed6e55e4c Implemented the always get fitness = True / False feature 2020-10-01 00:43:43 -04:00
42f49c43ee Fixed names 2020-09-30 23:39:14 -04:00
aa0c5320c8 Requested file name changes 2020-09-30 23:25:44 -04:00
8377650c58 Changes from meeting 2020-09-30 19:33:23 -04:00
625143da7d Added the termination features 2020-09-30 00:05:39 -04:00
d531888d78 Fixed import problems 2020-09-29 21:23:18 -04:00
5883208c68 fixed 2020-09-29 20:54:18 -04:00
bd76e967ff Added fitness function and changed evolve function 2020-09-29 20:52:06 -04:00
fbbe017c9b Blank init files 2020-09-28 14:08:49 -04:00
e01ee53b87 Added __init__.py's 2020-09-28 13:42:54 -04:00
d8f2575a9a Update __init__.py 2020-09-28 11:59:31 -04:00
04867a3cc4 Update __init__.py 2020-09-28 11:58:43 -04:00
9c9e87141c Add files via upload 2020-09-28 11:58:18 -04:00
cc6018f2e1 Delete focused_initialization.py 2020-09-28 11:58:00 -04:00
51e3e145da Update EasyGA.py 2020-09-28 11:57:28 -04:00
2388428a9b Add files via upload 2020-09-28 11:57:05 -04:00
472c9c2379 Changed example 2020-09-27 23:25:16 -04:00
1797d88c0b Updated gene creation
The gene creation process can now accept an arbitrary number of parameters.
2020-09-27 21:52:40 -04:00
78bf499192 Merge branch 'master' of https://github.com/danielwilczak101/EasyGA 2020-09-27 17:47:55 -04:00
31f5f25c36 Comment updates 2020-09-27 17:46:17 -04:00
c7bda35c0d Merge branch 'master' of https://github.com/danielwilczak101/EasyGA 2020-09-27 17:45:02 -04:00
4b21dc45f6 Update EasyGA.py 2020-09-27 17:42:41 -04:00
760ec15264 Added comments 2020-09-27 17:36:59 -04:00
58f7a34cbb Merge branch 'master' of https://github.com/danielwilczak101/EasyGA 2020-09-27 17:29:40 -04:00
e66b4d7fd0 Commented EasyGA.py 2020-09-27 17:26:56 -04:00
df32eb47a3 Added comments to the initilization function 2020-09-27 17:19:13 -04:00
d1334090a8 Update EasyGA.py 2020-09-27 16:58:42 -04:00