
This section covers the main inspiration of the Genetic Algorithm. It first starts with the theory of evolutionary proposed by Charles Darwin. It then shows how the Genetic Algorithm mimics this theory to solve optimization problems.
The learning outcomes are as follows:
This section first goes through the process of representing genes in the GA algorithm. Then, the fitness function is introduced which evaluates of the chromosomes in the GA algorithm. The learning outcomes are as follows:
This coding video shows the steps of representing genes and evaluating them using a fitness function. The learning outcomes are given:
This lecture is about the most popular selection mechanism in the Genetic Algorithm called roulette wheel. The mathematical model behind a roulette wheel is discussed in details and used to create a virtual roulette wheel. This roulette wheel is then employed to select chromosomes proportional to their fitness value. The learning objectives are:
This lecture takes you through an example of selection process in the GA algorithm. A set of chromosomes will be used as an example. Therefore, you will practice how to implement the roulette wheel and selection mechanism of GA.
This coding video shows you the steps of developing a function to select two parents from a given population (generation). This function is tested and analyzed to be used later on when developing the GA algorithm. The learning objectives are:
The Roulette wheel does not work when fitness values are negative. This lectures covers a method called scaling to fix this issue.
In the last module of this course, we developed a selection function to select two parents. This lecture shows you different methods of combining the parents and producing children. The main learning outcomes are:
This lecture provides the step-by-step of coding single- and double-point crossover (recombination) techniques in the Matlab programming language. The selection mechanism is first employed to create two parents. Then, the crossover is done to product two children. You will also see how to accept and transfer a newly created child using the probability of crossover. The learning outcomes are:
In the lecture, we will be developing a function to perform different types of crossover between two given parents and return wither children or parents using the probability of crossover. The learning outcomes area:
This lecture covers the mutation operator in GA that causes random changes in the genes of chromosomes. The idea behind the mutation is first discussed. Then, the process of applying this operator to genes using the probability of mutation (Pc) is given. The learning outcomes of this lecture are:
This lecture is a tutorial on coding a function in Matlab for mutating the genes of a given chromosome. The function is developed with two inputs: chromosome and probability of mutation. Depending on the Pm and a generated random number, the genes might face mutation or not. The learning outcomes are:
This lecture covers the rational and idea behind elitism in the Genetic Algorithm. A parameter called Elitism ration (Er) is also presented, which shows the portion of the best individuals that should be kept as elited and get transferred to the next population (generation) unchanged. The learning outcomes area as follows:
This lecture shows you an example of an elitism operator in the Genetic Algorithm. The learning outcomes are:
In this lecture, a Matlab function has been developed to perform elitism on a given population using the elitism ration. The learning outcomes are:
This lecture improves the code written for the elitism in the last video. The main objective is to make sure that the elites never get lost or damaged during the process of crossover or mutation.
This video develops the first drafts of the Genetic Algorithm using the function that we designed before.
This lecture provides the steps of designing a function for the Genetic Algorithm that facilitates the process of applying this algorithm to optimization problems.
This is an introductory course to the Genetic Algorithms. We will cover the most fundamental concepts in the area of nature-inspired Artificial Intelligence techniques. Obviously, the main focus will be on the Genetic Algorithm as the most well-regarded optimization algorithm in history. The Genetic Algorithm is a search method that can be easily applied to different applications including Machine Learning, Data Science, Neural Networks, and Deep Learning.
With over 10 years of experience in this field, I have structured this course to take you from novice to expert in no time. Each section introduces one fundamental concept and takes you through the theory and implementation. The course is concluded by solving several case studies using the Genetic Algorithm.
Most of the lectures come with coding videos. In such videos, the step-by-step process of implementing the optimization algorithms or problems are presented. We have also a number of quizzes and exercises to practice the theoretical knowledge covered in the lectures.
Here is the list of topics covered:
The inspiration of the Genetic Algorithm
Selection or survival of the fittest
Recombination or crossover
Mutation
Elitism
Implementation
Application
I am proud of 200+ 5-star reviews. Some of the reviews are as follows:
Femi said: "I really enjoyed the instructor style of explanation. He has a very solid understanding of the course and he made complex problems fun to solve."
Abhay said: "I tread cautiously when am taking MOOCs, as most of the courses offered fall short of what they claim they have to offer, eventually ending up quitting the course after making, say, 10% progress. But this course is different, after completing almost 80% - 90% of the course, I can say with confidence, that this is one of the most worthy courses I have undertaken on the topic of GA. The course is precise, relevant to the real-world problems and Ali is quite an engaging and prompt instructor. Hell, even the Possums in Australia would double that."
Ahmad said: "It was very nice experience. I think the course is designed very well for beginners like me because it starts with the basics. Then it gradually becomes more difficults. Overall it was a great course. Thanks Ali or Seyedali both of you :D :) if you know what I mean."
Join 1000+ students and start your optimization journey with us. If you are in any way not satisfied, for any reason, you can get a full refund from Udemy within 30 days. No questions asked. But I am confident you won't need to. I stand behind this course 100% and am committed to help you along the way.