C++ Machine Learning Algorithms Inspired by Nature

所在平台: Udemy

课程主页: https://www.udemy.com/course/genetic-algorithm-in-cpp/

课程评论:没有评论

第一个写评论        关注课程

课程简介

**课程名称:** 源于自然的C++机器学习算法 **课程概述:** 本课程专为希望通过学习有趣的C++优化算法来提升技能的学生和软件开发者而设计。您将从头开始用C++编写一些最著名的AI算法,不使用任何现有库。课程将从遗传算法 (GA) 开始,接着学习模拟退火 (SA),然后介绍一个不太为人知的算法:差分进化。最后,我们将探讨蚁群优化 (ACO)。 **核心内容:** * **优化算法入门:** 了解什么是优化算法,以及它们的应用场景。 * **遗传算法 (GA):** * 理论基础:基本结构、交叉 (crossover) 和变异 (mutation) 的实现。 * 应用于连续问题:解决连续问题中的挑战,如将二进制“染色体”解码为浮点数。 * 具体实现:锦标赛选择 (tournament selection) 和单点交叉 (single point crossover) 的实现。 * 应用于旅行商问题 (TSP):为TSP创建适应度函数,处理该问题特有的交叉问题,并实现变异。 * **模拟退火 (SA):** * 基本理论。 * 应用:优化Himmelblau函数,解决背包问题 (Knapsack Problem)。 * **差分进化 (DE):** * 理论及不同策略。 * 代码示例:演示标准策略 (DE/rand/1/bin)。 * **蚁群优化 (ACO):** * 理论及其自然灵感来源。 * 应用:演示在旅行商问题 (TSP) 中的应用。 **学习目标:** 通过本课程,您将能够理解并亲手实现多种源于自然的优化算法,解决连续和离散问题,例如旅行商问题和背包问题。 **先修要求:** * 理解C++基础知识。 * 具备任何C++ IDE的使用能力(推荐Visual Studio)。 * 理解算法。 * 具备数学基础。 **建议:** 鼓励学员动手实践,而非被动观看视频。

课程评论(0条)

课程详情

This online course is for students and software developers who want to level up their skills by learning interesting optimization algorithms in C++.You will learn some of the most famous AI algorithms by writing it in C++ from scratch, so we will not use any libraries. We will start with the Genetic Algorithm (GA), continue with Simulated Annealing (SA) and then touch on a less known one: Differential Evolution. Finally, we will look at Ant Colony Optimization (ACO).The Genetic Algorithm is the most famous one in a class called metaheuristics or optimization algorithms. You will learn what optimization algorithms are, when to use them, and then you will solve two problems with the Genetic Algorithm(GA). The second most famous one is Simulated Annealing. However, nature gives us fascinating sources of inspiration, such as the behaviour of ants, so that Ant Colony Optimization is an interesting algorithm as well.We will solve continuous problems(find the maximum/minimum of a continuous function) and discrete problems, such as the Travelling Salesperson Problem (TSP), where you have to find the shortest path in a network of cities, or the Knapsack Problem.Prerequisites:understand basic C++any C++ IDE (I am using Visual Studio)understanding of algorithmsunderstand mathematicsI recommend that you do the examples yourself, instead of passively watching the videos.Here's a brief outline of what you will learn:What optimization algorithms areGenetic Algorithm theory:General structureHow crossover is doneHow mutation is doneGenetic Algorithm on a continuous problem:Challenges particular to continuous problems: decoding the bits ("chromosomes") into a float valueCrossover: tournament selection and single point crossoverMutationGenetic Algorithm on the TSP (Travelling Salesperson Problem):Creating a fitness function for the TSPChallenge particular to this problem: how to do crossover?MutationSimulated Annealing:Basic TheoryOptimizing Himmelblau's functionThe knapsack problemDifferential Evolution:Theory and different strategiesCode example on one strategy, the standard one (DE/rand/1/bin)Ant Colony Optimization:Theory and InspirationExample on the Travelling Salesperson ProblemSign up now and let's get started!

课程标签

0人关注该课程

主题相关的课程