Evolutionary algorithms help us solve optimization problems where we know what the answer is, but don't know how to get that answer. In this talk, we will look at how different evolutionary algorithms apply the concepts of genetics to discover formulas and patterns. Specifically, we will look at genetic algorithms and genetic programming, digging into how they work and solving a number of problems with each. We will also include a crash course on basic genetics, just in case high school biology isn't fresh in your mind.


The slides are available in HTML 5 format. All modern browsers (including tablets and phones) should be able to navigate the slides successfully.

The slides are licensed under Creative Commons Attribution-ShareAlike.

Demo Code

The demonstration code is available on my GitHub repository. This includes all of the R code used in demos. All demos are in Jupyter notebook form.

If you are on Windows, the easiest way to get Jupyter Notebooks up and running is by installing Visual Studio 2017 (or later) and ensuring that you install Anaconda3. You can also install Anaconda yourself on Windows or on Linux.

The source code is licensed under the terms offered by the GPL. The slides are licensed under Creative Commons Attribution-ShareAlike.

Links And Further Information

I have a multi-part blog series covering this topic in further detail.

Creative Commons Attribution

The following is a Creative Commons attribution of each of the images used in this presentation.




Genetic Algorithms In T-SQL