Commit Graph

135 Commits

Author SHA1 Message Date
57756833dc Cleaned up repetitive code and sorted the population before mutating 2020-12-29 19:35:26 -05:00
d0894c18fb Added reset run method 2020-12-28 11:14:23 -05:00
2b6f0e2e97 Decorators cleanly preserve both function names and doc-strings. 2020-12-27 10:11:43 -05:00
5d88de1195 Removed initialization methods 2020-12-24 11:22:01 -05:00
6861688400 Renamed create methods to make methods for consistency and fixed fitnesses after adapting 2020-12-20 13:58:21 -05:00
ffb36c91fc Avoid adapting on the first generation and catch wrong target fitness type 2020-12-13 10:07:23 -05:00
53335f9d2f Merged evolve and evolve_generations 2020-12-11 14:06:01 -05:00
03c4648a24 Fixed adapt probability sums 2020-12-09 11:41:56 -05:00
a404eba685 Changed the way probabilities adapt work 2020-12-09 10:35:09 -05:00
ea93ad8796 Mathematically solved for weight 2020-12-06 11:35:30 -05:00
a6530fb15e Cleaned up some parts and optimized a little 2020-12-05 23:41:10 -05:00
8c024a0290 Added distance attribute 2020-12-04 14:26:18 -05:00
046592a3a8 Split adapting into parts 2020-12-03 17:10:39 -05:00
df05cf1f5c Looser rate bounds inside adapt 2020-12-02 18:43:44 -05:00
fb84ac40d4 Update EasyGA.py
Probably better to let fitness-based selection to work as expected than to break due to unexpected negatives.
2020-12-02 17:06:15 -05:00
4a1b87a3b7 Cleaned up and distanced further for more genetic variety 2020-12-01 18:20:46 -05:00
5b6d925088 Update ga.adapt()
Faster convergence by allowing more genetic variety using negative weights to push chromosomes too similar away from the best chromosome.
2020-12-01 10:36:17 -05:00
63c4304f48 Cleaned up and improved ga.adapt()
- Cleaned up some stuff (variables).
- Added adapt by heavy crossover.
2020-11-30 14:21:52 -05:00
27ca73711e Improved adapt 2020-11-27 22:18:29 -05:00
65a35e71dc Cleaned up comments. 2020-11-27 20:03:43 -05:00
cbd0265cd8 Fixed adapt inequality 2020-11-27 19:23:54 -05:00
1197447d7e Added ga.adapt() 2020-11-27 19:12:40 -05:00
1ba86c0661 Cleaned up spacing 2020-11-26 21:30:49 -05:00
a84b79d391 Removed get/set 2020-11-22 15:48:06 -05:00
73461f7915 Comments updated 2020-11-20 19:06:55 -05:00
68b10c3fde Minor changes 2020-11-20 09:20:02 -05:00
454edb13d1 Avoid overwriting initial population 2020-11-19 16:48:02 -05:00
0ee545429c Added iterable features 2020-11-19 11:46:47 -05:00
1d97a92fb7 Changed population print 2020-11-17 08:40:51 -05:00
c5d323cb20 Fixed termination conditions 2020-11-17 08:27:11 -05:00
260d17bf91 Cleaned up the while loop 2020-11-17 01:22:05 -05:00
8e90bd558b Config now adding to database. 2020-11-16 02:50:37 -05:00
9c455957f2 Edge case for converting fitness to minimization
Avoid catastrophic cancellations
2020-11-09 16:02:01 -05:00
874f4362fa Minor touches 2020-11-07 18:35:57 -05:00
96767ad03c Added save_population
for easier front-end usage.
2020-11-07 18:21:43 -05:00
e1f794d7b7 Database files renamed 2020-11-07 17:17:18 -05:00
c959f44fd5 GA gives graph the database 2020-11-07 13:32:34 -05:00
f1f9d70c26 Fixed graph features
- Common graph code made into a method.
- No longer needs the user to pass in the ga for graphing.
- Changed graph attribute from class to object.
- Added ga to the graph object as an attribute on initialization to avoid needing to pass it in every time you graph.
- Capitalized database/graph classes.
2020-11-07 12:43:47 -05:00
05b8fd06fa Moved all graphing to its own class 2020-11-06 22:56:16 -05:00
5c5b645c30 Added graphing capablities. It only graphs total fitness of generation. 2020-11-06 02:11:06 -05:00
7b2053d626 Added basic database functionallity 2020-11-05 15:38:54 -05:00
72a8975d03 Fixed default arguments
Reverted usage format:
GA(
    chromosome_length = 20,
    population_size = 25
)
2020-11-03 14:30:43 -05:00
172918cad7 Added small database functionality but its commented out of running. 2020-11-03 13:43:21 -05:00
621fdef86d Fixed attributes to allow setting attributes on initialization
e.g.
GA({
    'chromosome_length' : 10,
    'population_size'         : 50
})
2020-11-03 13:19:09 -05:00
5b6dc8348a Reverted back to old style of attributes. 2020-11-03 11:47:56 -05:00
cae4314581 Added more comments. 2020-11-03 02:34:16 -05:00
ba2f076a2b Added doc strings to EasyGA ga class and attributes class. 2020-11-03 02:32:20 -05:00
c9d30be1af Initialization for GA with arguments 2020-10-30 11:52:11 -04:00
0b5f42966c Update population before mutation 2020-10-27 16:23:48 -04:00
d01096c1ea Fixed print tabbing 2020-10-22 19:07:43 -04:00