Commit Graph

103 Commits

Author SHA1 Message Date
leo
47b21dca0b
go(de): use method to get bestIndividual
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-21 13:24:36 +01:00
leo
cffbcd9866
go: improve plotting for GAs
All checks were successful
continuous-integration/drone/push Build is passing
* handle special cases
* extend title, description
* set custom x axis description
2023-01-21 02:45:56 +01:00
leo
b742f0e091
go(algo,de): implement jDE (wip)
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-21 02:35:29 +01:00
leo
cba6e62b50
go(de): get rid of fVect,crVect
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-20 23:36:35 +01:00
leo
3e78332869
go: impl. Get{Best,Worst}Idx Population methods
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-20 20:33:23 +01:00
leo
37710c95b3
go(de): implement Clear method on Population
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-20 18:44:45 +01:00
leo
93206b2cd1
go(de): implement Init(),Reinit() on Population
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-20 18:38:29 +01:00
leo
07d3d51ba7
go(de): make Population more ephemeral
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-20 18:36:04 +01:00
leo
e4be83ef08
go(de): add benchMinIters param
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-20 15:52:45 +01:00
leo
fe8e071460
go(de): add {f,cr}Vect
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-19 21:42:56 +01:00
leo
ab004c8308
chore: go(de): update wording [skip ci] 2023-01-19 20:36:03 +01:00
leo
86533bdefe
go(de): declare initialised after pop.Init()
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-19 20:30:14 +01:00
leo
8f55d80731
go(de): don't run evolve concurrently for dimens
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-19 20:25:42 +01:00
leo
2e5bb5c538
go(de): add stats chan to the model
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-19 20:22:07 +01:00
leo
7e358b01af
go(algo): add DojDE()
All checks were successful
continuous-integration/drone/push Build is passing
the implementation is a WIP.

adjust linter ignoring in algo/plot.go: unparam does not like that
fPrefix is "plot" each time the func is called. this might get reworked
later.

also add field from bench/bench.go - DimensionsGA - Genetic Algorithm
specific dimensions.
2023-01-19 20:11:22 +01:00
leo
93dc845fbb
go(de): add InitAndRun
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-19 19:57:41 +01:00
leo
2216b93426
go(de): add Run(), unexport Evolve()
All checks were successful
continuous-integration/drone/push Build is passing
* use evolve()
* add a way to calculate GAMaxFES (MaxFES for Genetic Algorithms) in the
  bench package
2023-01-19 19:55:41 +01:00
leo
525b30c38e
chore: add package de (Differential Evolution)
All checks were successful
continuous-integration/drone/push Build is passing
base package (wip)
2023-01-16 13:30:38 +01:00
leo
84fcad715c
chore: add jDE.go
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-27 01:27:16 +01:00
leo
f25011b7fc
go(bench): add Rastrigin function defintion+test 2022-12-27 00:56:54 +01:00
leo
21b4888277
chore(go): add comments [skip ci] 2023-01-13 22:01:44 +01:00
leo
3f77c573a6
chore: 2023
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-12 23:35:51 +01:00
leo
f42fb27fe3
chore(go): fmt singleRandomSearch comment
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-12 23:04:41 +01:00
leo
67eca7253b
chore(go): comment exported symbols
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is passing
2023-01-12 23:04:15 +01:00
leo
68b14f9960
chore: add all updates, sort out later
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-24 11:30:22 +01:00
6624d0e9dc
go(algo): add neighbour type
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-21 14:26:58 +02:00
1ce3a6d04f
fix(go): collect and plot algo stats comparably
All checks were successful
continuous-integration/drone/push Build is passing
...i.e. based on FES, not Generations.
2022-08-20 23:28:30 +02:00
1793f7bdd9
go: speed up plotting by saving plots to .pdf
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-20 13:42:41 +02:00
d397137cfc
go(algo_test): do test separation, proper clean-up
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-20 12:42:20 +02:00
805db5088b
go(algo): close chans after use
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-05 17:23:10 +02:00
df33a3c3a7
go: allow modifying HillClimb's 'neighbours' param
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-05 17:11:39 +02:00
9618f958a8
go(algo): add PrepComparisonOfMeans
All checks were successful
continuous-integration/drone/push Build is passing
...also another one: getComparisonOfMeansPics, that is used in the
former func internally.
2022-08-03 21:28:43 +02:00
b4c9ebcf5a
go(algo): add GetMeanStats func
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-03 21:25:37 +02:00
a328c9619e
go: use AlgoMeanVals for comparison of means plots
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-03 21:17:19 +02:00
45ec295b93
chore(go(plot)): check meanVals size
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-03 17:20:49 +02:00
8b4432ece1
go(plot): use consts for common strings
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-29 21:04:15 +02:00
1ec7a62281
go(algo): rm unused Values type
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-27 17:29:31 +02:00
ea3d57acd8
go: rename AlgoMean,Mean et al.
All checks were successful
continuous-integration/drone/push Build is passing
also add comments to methods explaining what they're supposed to do.
2022-07-25 22:24:54 +02:00
9801554eb5
go(algo): sort the mean vals in algo funcs
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-20 17:16:44 +02:00
109ce82f3e
go(plot): smarter string concat w/ fmt.Sprintf
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-20 16:24:04 +02:00
2bf3a4a767
go: collect and process mean vals
All checks were successful
continuous-integration/drone/push Build is passing
* compute and save mean values of x (e.g. 30) bench runs
* safely save mean vals for all bench-dimens combinations to AlgoMeans
  from goroutines (use mutex to protect shared access)
* rework algo/plot.go to use already computed mean values.

todo: plot mean vals of all algorithms (per benchmark) in a single pic.
2022-07-19 21:56:49 +02:00
c433b11eea
go(plot): latex-proof regular pic's caption, too
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-19 21:25:09 +02:00
c37ef263ae
go(stats): Solution -> BenchResults in FuncStats
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-19 19:58:45 +02:00
44cc400474
go(plot): streamline caption generation
All checks were successful
continuous-integration/drone/push Build is passing
* make sure to latex-escape captions (for correct line breaks)
* enable showing captions
* enable listing subfigure captions
* make sure latex lof (list of figures) picks up on subfigure captions
* clarify we need the subcaption package for subfigures, not subcaptions
2022-07-19 19:23:39 +02:00
3c8678a8d3
go,tmpl: plot mean values
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-18 22:36:47 +02:00
16cbf39a79
go(stats,algo): get,plot mean vals
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-18 10:08:12 +02:00
efbc963875
go(algo): use var for algo name
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-18 00:23:53 +02:00
6db4b60875
go(algo): use Dimensions slice from the bench pkg
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-17 11:57:40 +02:00
446f63b59e
go(report): aggregate all table tex files
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-16 23:30:56 +02:00
01a0ed12c4
go(report): aggregate all tex files tracking plots
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-16 22:05:15 +02:00