Current Status
Not Enrolled
Price
Free
Get Started

What you will learn

  • Learn in theory and practice the main concepts about genetic algorithms, such as: individual, population, crossover/reproduction, mutation, and evaluation
  • Implement genetic algorithms from scratch in Python
  • Implement a step-by-step genetic algorithm in Python to solve real world problems, such as the transport of products and optimization of flight schedule
  • Apply genetic algorithms to maximization and minimization problems
  • Visualize the genetic algorithm results using dynamic graphs
  • Integrate genetic algorithms with a database in MySql
  • Learn how to build genetic algorithms using DEAP and MLROSe libraries

Requirements

  • Programming logic
  • Basic Python Programming

Description

Genetic algorithms are an important area of ā€‹ā€‹Artificial Intelligence responsible for solving complex real world problems. There are several practical applications of this type of algorithm, which can be applied to problem solving in everyday business situations. A classic example is solving the problem of teacher schedule in schools, in which there are different combinations of schedules and classes and the goal is to build the schedule dynamically according to the number of classes and the availability of each teacher. Other examples are: telecommunications companies can design new optical networks, carriers can better plan the delivery route for goods, investors can choose the best investments; among several others.

In this course, you will learn everything you need to enter the world of genetic algorithms! What makes this course unique is that you will learn the basic intuition and especially, the step-by-step implementation without using pre-built libraries. In other words, we are going to implement genetic algorithms from scratch using Python. If you have never heard about this subject, at the end of the course you will have all the theoretical and practical basis to solve your own problems or the problems of the company you work for!

  • In part 1, we are going to implement a genetic algorithm from scratch to solve a very common problem that is related to transportation of products. Let’s suppose we need to load some products on the truck, but we need to select the most profitable products and also take into account that there is not enough space on the truck to load them all. So, the goal of the genetic algorithm will be to choose the best set of products to maximize the profit of the company. At the end we will integrate our algorithm with a database in MySql, so it will be easier to know how to deal with commercial applications!
  • In part 2 (after you learn the whole intuition and implement genetic algorithms from scratch), it’s time to learn how to work with libraries to solve the same problem. In addition to the case study of product transportation, we will also solve another problem that is related to finding the lowest prices of airline tickets for people traveling in group. We will solve both problems using two libraries: DEAP (Distributed Evolutionary Algorithms in Python) and MLROSe. The interesting is that we will be able to compare the results of the libraries with the results of our genetic algorithm implemented from scratch.

This can be considered the first course on genetic algorithms, and after completing it, you can move on to more advanced materials. At the end you will have the practical background to develop some simple projects and take more advanced courses. During the lectures, the code will be implemented step by step using Google Colab, which will ensure that you will have no problems with installations or configurations of software on your local machine.

Who this course is for

  • People interested in genetic algorithms, optimization algorithms or artificial intelligence
  • People interested in implementing genetic algorithms from scratch
  • People interested in the DEAP and MLROSe libraries
  • Students who are studying subjects related to Artificial Intelligence
  • Data Scientists who want to increase their knowledge in genetic algorithms

Ratings and Reviews

4.6
Avg. Rating
63 Ratings
5
43
4
16
3
4
2
0
1
0
What's your experience? We'd love to know!
Review posted on Udemy
Posted 4 months ago
by Jean Noel Nyirisheja

you are amazing

×
Preview Image
Review posted on Udemy
Posted 5 months ago
by Amilkar Armando Herrera Mojica

The explanations are easy to follow if you alraedy know some python.

×
Preview Image
Review posted on Udemy
Posted 6 months ago
by Chandan S

Explanations are clear

×
Preview Image
Review posted on Udemy
Posted 7 months ago
by Yunus Indori

Great explanation of the algorithm with the Knapsack example! I was also hoping for a comparison of the manual implementation with mlrose, just like DEAP, in detail. E.g., the similarities or differences between parent selection process, population selection and number of generations. However this is a great mini course to understand the underlying functionality of the algorithm and I would highly recommend it.

×
Preview Image
Review posted on Udemy
Posted 7 months ago
by Hugh Smith

Great start to the course. All very clear. Thanks

×
Preview Image
Review posted on Udemy
Posted 7 months ago
by Evaristo Gonzalez

I expected more at least one o two examples with more complex with different types of gene, only saw bool and int gene. Thanks for the great core knowledge.

×
Preview Image
Review posted on Udemy
Posted 8 months ago
by Armin B.

It is difficult for me to evaluate this course. The use case is well choosen: it's simple and intuitive and the course is well structured. Sometimes, the explanations of the code would not have been necessary because they reveal nothing else than what you do on the screen and, on the other hand, sometimes there is no explanation where I would have needed one (especially why you do something and why you do it this way). Together with Copilot, I was able to solve almost all of my questions. In general, I retain it unnecessary to code along during the course and I think, it would be much more productive to thoroughly explain an already existing code in all its aspects. At the end: what additional value lies in looking you writing? Meanwhile the single classes and functions are rather clearly explained, the biggest challenge for me was certainly to understand the detailed flow of information when putting together everything at the end (the solve function). Here I find, the course should be much more explanative, for example by using a more detailed flow chart or similar. My intention for taking this course was to understand what genetic algorithms are and what the code of such an algorithm could look like. I was able to obtain this goal but I wouldn't be able to repeat it all by myself. I begun taking the course section on the third part libraries but I quitted. So my experience with this course is kind of mixed. I find that "Basic Python programming", as stated in the course description, is not really enough to take this course. Thanks anyways to the author for what I learned.

×
Preview Image
Review posted on Udemy
Posted 8 months ago
by Matthew Grant

Clear delivery.

×
Preview Image
Review posted on Udemy
Posted 9 months ago
by Angel Pavon

I think that genetic algorithm concept clear explained for a first instruduction PROS: - Introduce some third party libraries, comapre your code with the same using libraries I think that it's a relly big practice - Use sql CONS: - The libraries are poor introduced - The code can be improved Good introduction for programmers with not too much experience, maybe lack for more advanced programmer

×
Preview Image
Review posted on Udemy
Posted 9 months ago
by Amit Shukla

good course

×
Preview Image
Show more reviews
What's your experience? We'd love to know!
Scroll to Top