How do you guys fine tune your genetic algorithms? I think my mutation rate and fitness calculations are pretty good...

How do you guys fine tune your genetic algorithms? I think my mutation rate and fitness calculations are pretty good, but not sure if my chromosome/population size is dialed in yet. Also I'm only implementing a basic reproduction cycle with no crossover, is this limiting me more than just increasing time to convergence? Genetic Algorithm thread.

I take them to a walk through Pripyat, if I need more extreme mutations I slap them on the ass and order them to enter the concrete sarcophagus of chernobyl

...

I forgot Sup Forums is just comparing consumer products

To the best of my understanding crossover is also useful for escaping local maxima.

damn, thats what I was afraid of. I don't have a lot of wiggle room when it comes to the data type my chromosomes are encoded in, so i'm trying to avoid having to implement crossover as it would be a bitch to implement

Run the test many times with slightly different initial conditions and compare final generation solutions, this might help reveal local maxima

What sort of data type are you using? Not Gray code?

Thanks, I'm starting with randomized inputs so hopefully it won't converge too soon.
The genetic info is encoded in a text file (.ASC) that gets programmed into an fpga.

I create a genetic algorithm that sorts best parameters for my genetic algorithm.

I think we need more info about whatever project you're working on to give you helpful feedback.

How do you sort the best parameters for that one?

Fuck
It's a genetic algorithm that controls the bitstream of an FPGA that should be able to perform some function based on relating the inputs to the outputs. I can give more specifics if you need it but there is a lot of info.

And you're wondering if implementing crossover is worthwhile?

Exactly, after getting the mutation rate correct, all I have to do is button up my fitness calculator, but I couldn't do a crossover and I'm wondering if I can do without it.

>but I couldn't do a crossover
For what reason?

what are your favourite languages for genetic algorithms?

Matlab was always comfy

go fuck yourself

What's the point of doing crossover even? Isn't it just a form of mutation.

Because I'm a dummy and the fact that the data has to be encoded in a text file is limiting.
I did mine with python because it's all I know. It sucks for this though.
The way I understand it is that it is a way of combining chunks of mutations so that the beneficial genes will appear sooner and be more rigorous. Could be wrong though.

Please tell me you at least included elitism

>python
>genetic algorithms

OP, you're limiting yourself by using python. Use matlab or some other language akin to it that's more suited for the job.

Crossovers allow for a faster evolution of both beneficial and harmful mutations by mimicking real-world genetic conditions.

People who use GAs have absolutely no idea what they are doing

You've essentially got a really shitty search algorithm and you'd be better with literally anything else

People think "HURR DURR GENES LIKE HUMAN SO COMPUTAH NOW HUMAN"

It's doesn't work like that tim

Solving problems needs insight of how to best solve the problem and then running the routine to solve it. A GA is never the best way to solve a problem, there is always a better way.

People who like to sound cool use them
And also I notice people shit at math use them because they are easy to use and math is hard for them

Either tell us the details of your fitness calculation or fuck off. It's literally the only thing that matters. The fact ur obsessing over shit like mutation rates and crossover and saying stupid shit like "population size dialled in" like a nig from CSI shows you are a Sup Forums kiddie.

What's wrong with python? PyEvolve is a very potent library, Deap as well.

OP just got roasted

>A GA is never the best way to solve a problem, there is always a better way.

Eh, depends. Obviously you wouldn't do a GA unless you had a good reason to. Sometimes you have to fit a model in a 500 dimensional parameter space, you have no access to Jacobians or Hessians, and you don't want to get stuck in the first local minimum you find. And sometimes you don't even know which initial parameter set to pick.

Annealing and a separate routine to apply large mutations when peaks are detected

which is why random is usually better at that point

Errr, correct me if I'm wrong - but wouldn't a pure random search be a little bit more costly than a GA solution?

No, but that seems like it might be beneficial once the fitness progresses far enough.
I'm realizing that, but I might be too far in. As long as I get good results without crossover I'm going to stick with what I have
if there is an easier way to deal with almost a million different variables I'd love to hear it.

Another advantage of GAs is that they can handle discrete variables. No calculus needed.

>almost a million different variable.
You don't have a search space. Stop using a GA now you nimwit. GAs are NOT meant for that.

What are you talking about? GAs are meant to tackle problems with high-dimensional parameter spaces.

I don't see why a large chromosome size means I have no search space, but if there is an easier way too do this that nitwit like me could do, I would love to hear about it.

GAs are invented by god, using them is blasphemy, man playing god.
Enjoy the burning fire pits of hell op.

Thanks I will

I've almost finished Calc III and I don't like the implication that I might need to remember about things like hessians and jacobians in a programming related job.

There's a reason nobody's used genetic algorithms for over 2 decades and they were out of style even 4 decades ago.

GAs are literally the last thing you should use for any non-convex optimization problem. They literally get stuck on every single local minimum but also happen to be outrageously unstable.