آموزش هوش مصنوعی و فراابتکاری (بهینه سازی ترکیبی) پایتون

AI and Meta-Heuristics (Combinatorial Optimization) Python

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: الگوریتم‌های نمودار، الگوریتم‌های ژنتیک، بازپخت شبیه‌سازی‌شده، هوش ازدحام، اکتشاف، Minimax و Meta-Heuristics درک می‌کنند که چرا هوش مصنوعی مهم است درک الگوریتم‌های مسیریابی (جستجوی BFS، DFS و A*) درک اکتشافی و فراابتکاری الگوریتم‌های بهینه‌سازی ژنتیک را درک می‌کنند. درک شبیه سازی آنیلینگ پیش نیازها:بدون نیاز به تجربه برنامه نویسی. شما هر آنچه را که نیاز دارید یاد خواهید گرفت.

این دوره در مورد مفاهیم بنیادی هوش مصنوعی و فراابتکاری با پایتون است. این موضوع امروزه بسیار داغ شده است زیرا این الگوریتم های یادگیری را می توان در چندین زمینه از مهندسی نرم افزار تا بانکداری سرمایه گذاری استفاده کرد. الگوریتم های یادگیری می توانند الگوهایی را تشخیص دهند که به عنوان مثال می توانند به تشخیص سرطان کمک کنند. ممکن است الگوریتم‌هایی بسازیم که حدس خوبی در مورد حرکت قیمت سهام در بازار داشته باشند.

### الگوریتم های مسیریابی ###

بخش 1 - جستجوی وسعت اول (BFS)

  • الگوریتم جستجوی وسعت اول چیست

  • چرا از الگوریتم های نمودار در هوش مصنوعی استفاده کنیم

بخش 2 - جستجوی عمقی (DFS)

  • الگوریتم جستجوی عمقی چیست

  • پیاده سازی با تکرار و با بازگشت

  • تجسم حافظه پشته جستجو در ابتدا

  • برنامه فرار از پیچ و خم

بخش 3 - الگوریتم جستجوی الف*

  • الگوریتم جستجوی A* چیست

  • تفاوت الگوریتم Dijkstra و جستجوی A* چیست

  • یک اکتشافی چیست

  • فاصله منهتن و فاصله اقلیدسی

### META-HEURISTICS ###

بخش 4 - بازپخت شبیه سازی شده

  • آنیل شبیه سازی شده چیست

  • نحوه یافتن حداکثر توابع

  • نحوه حل مسائل بهینه سازی ترکیبی

  • مشکل فروشنده دوره گرد (TSP)

  • حل مشکل سودوکو با بازپخت شبیه سازی شده

بخش 5 - الگوریتم های ژنتیک

  • الگوریتم های ژنتیک چیست

  • تکامل مصنوعی و انتخاب طبیعی

  • تقاطع و جهش

  • حل مشکل کوله پشتی و N ملکه

بخش 6 - بهینه سازی ازدحام ذرات (PSO)

  • هوش ازدحام چیست

  • الگوریتم بهینه سازی ازدحام ذرات چیست

### بازی ها و درختان بازی ###

بخش 7 - درختان بازی

  • درخت بازی چیست

  • نحوه ساخت درخت بازی

بخش 8 - الگوریتم Minimax و موتورهای بازی

  • الگوریتم مینیمکس چیست

  • مشکل درختان بازی چیست؟

  • استفاده از روش هرس آلفا-بتا

  • مشکل شطرنج

بخش 9 - تیک تاک پا با Minimax

  • بازی تیک تاک و اجرای آن

  • استفاده از الگوریتم مینیمکس

  • استفاده از الگوریتم هرس آلفا-بتا

### یادگیری تقویتی ###

  • فرایندهای تصمیم مارکوف (MDP)

  • اصول یادگیری تقویتی

  • تکرار ارزش و تکرار خط مشی

  • مشکل اکتشاف در مقابل بهره برداری

  • مشکل راهزنان چند مسلح

  • الگوریتم یادگیری Q

  • یادگیری تیک تاک پا با یادگیری Q

### دوره crash برنامه نویسی پایتون ###

  • اصول برنامه نویسی پایتون

  • ساختارهای داده پایه

  • اصول مدیریت حافظه

  • برنامه نویسی شی گرا (OOP)

  • NumPy

در فصل‌های اول می‌خواهیم در مورد الگوریتم‌های نمودار بنیادی صحبت کنیم - الگوریتم‌های جستجوی عرضی (BFS)، جستجوی اول عمقی (DFS) و الگوریتم‌های جستجوی A*. چندین الگوریتم پیشرفته را می توان با کمک نمودارها حل کرد، بنابراین به نظر من این الگوریتم ها بسیار مهم هستند.

فصل های بعدی در مورد اکتشافی و فراابتکاری است. ما تئوری و همچنین اجرای بازپخت شبیه سازی شده، الگوریتم های ژنتیک و بهینه سازی ازدحام ذرات را در نظر خواهیم گرفت - با چندین مشکل مانند مسئله معروف N ملکه، مسئله فروشنده دوره گرد (TSP) و غیره.

از اینکه به دوره پیوستید متشکریم، بیایید شروع کنیم!


سرفصل ها و درس ها

معرفی Introduction

  • معرفی Introduction

  • اسلایدها و کد منبع Slides and source code

### الگوریتم های نمودار ### ### GRAPH ALGORITHMS ###

  • چرا الگوریتم های گراف را در نظر بگیریم؟ Why to consider graph algorithms?

الگوریتم جستجوی پهنای اول (DFS). Breadth-First Search (DFS) Algorithm

  • جستجوی عرضی چیست؟ What is breadth-first search?

  • اجرای جستجوی پهنا Breadth-first search implementation

  • کاربردهای جستجوی وسعت اول Applications of breadth-first search

  • مسابقه جستجوی عرض اول Breadth-First Search Quiz

چالش شماره 1 - WebCrawler Challange #1 - WebCrawler

  • چالش دوره شماره 1 - مشکل WebCrawler Course challenge #1 - WebCrawler problem

  • WebCrawlers (هسته موتورهای جستجو) چیست؟ What are WebCrawlers (core of search engines)?

  • پیاده سازی اولیه WebCrawler WebCrawler basic implementation

الگوریتم Depth-First Search (DFS). Depth-First Search (DFS) Algorithm

  • جستجوی اول عمق چیست؟ What is depth-first search?

  • اجرای جستجوی عمقی Depth-first search implementation

  • اجرای جستجوی عمقی اول با بازگشت Depth-first search implementation with recursion

  • جستجوی عمقی و تجسم حافظه پشته Depth-first search and stack memory visualization

  • مقایسه حافظه الگوریتم‌های پیمایش نمودار Memory comparison of graph traversal algorithms

  • کاربردهای جستجوی عمقی Applications of depth-first search

  • مسابقه جستجوی عمق-اول Depth-First Search Quiz

چالش شماره 2 - حل کننده ماز Challange #2 - Maze Solver

  • چالش دوره شماره 2 - مشکل پیچ و خم Course challenge #2 - maze problem

  • معرفی مشکل ماز Maze problem introduction

  • پیاده سازی مشکل ماز Maze problem implementation

  • تجسم حافظه پشته مشکل پیچ و خم Maze problem stack memory visualization

الف* الگوریتم جستجو A* Search Algorithm

  • الگوریتم جستجوی A* چیست؟ What is the A* search algorithm?

  • الف* تصویر جستجو A* search illustration

  • A* اجرای جستجو I A* search implementation I

  • A* اجرای جستجو II A* search implementation II

  • A* اجرای جستجو III A* search implementation III

  • مقایسه الگوریتم های مسیریابی Path finding algorithms comparison

  • A * مسابقه جستجو A* Search Quiz

### META-HEURISTICS ### ### META-HEURISTICS ###

  • رویکردهای فراابتکاری چیست؟ What are meta-heuristic approaches?

  • آزمون اکتشافی Heuristics Quiz

بازپخت شبیه سازی شده Simulated Annealing

  • آنیل شبیه سازی شده چیست؟ What is simulated annealing?

  • آزمون بازپخت شبیه سازی شده Simulated Annealing Quiz

پیاده سازی بازپخت شبیه سازی شده - توابع پیوسته Simulated Annealing Implementation - Continuous Functions

  • اجرای بازپخت شبیه سازی شده I Simulated annealing implementation I

  • اجرای بازپخت شبیه سازی شده II Simulated annealing implementation II

  • اجرای بازپخت شبیه سازی شده III Simulated annealing implementation III

پیاده سازی آنیل شبیه سازی شده - بهینه سازی ترکیبی Simulated Annealing Implementation - Combinatorial Optimization

  • مشکل فروشنده دوره گرد (TSP) چیست؟ What is the travelling salesman problem (TSP)?

  • پیاده سازی مشکل فروشنده دوره گرد I Travelling salesman problem implementation I

  • پیاده سازی مشکل فروشنده دوره گرد II Travelling salesman problem implementation II

  • پیاده سازی مشکل فروشنده دوره گرد III Travelling salesman problem implementation III

  • پیاده سازی مشکل فروشنده دوره گرد IV Travelling salesman problem implementation IV

پیاده سازی بازپخت شبیه سازی شده - سودوکو Simulated Annealing Implementation - Sudoku

  • مشکل سودوکو چیست؟ What is the Sudoku problem?

  • پیاده سازی مشکل سودوکو I Sudoku problem implementation I

  • اجرای مشکل سودوکو II Sudoku problem implementation II

  • اجرای مشکل سودوکو III Sudoku problem implementation III

  • اجرای مشکل سودوکو IV Sudoku problem implementation IV

الگوریتم های ژنتیک Genetic Algorithms

  • مقدمه الگوریتم ژنتیک - مبانی Genetic algorithms introduction - basics

  • معرفی الگوریتم های ژنتیک - کروموزوم ها Genetic algorithms introduction - chromosomes

  • معرفی الگوریتم های ژنتیک - متقاطع Genetic algorithms introduction - crossover

  • معرفی الگوریتم های ژنتیک - جهش Genetic algorithms introduction - mutation

  • معرفی الگوریتم های ژنتیک - انتخاب Genetic algorithms introduction - selection

  • مقدمه الگوریتم ژنتیک - الگوریتم Genetic algorithms introduction - the algorithm

  • نخبه گرایی چیست؟ What is elitism?

  • مزایا و محدودیت های الگوریتم ژنتیک Advantages and limitations of genetic algorithms

  • آزمون الگوریتم ژنتیک Genetic Algorithms Quiz

پیاده سازی الگوریتم های ژنتیک - مثال ساده Genetic Algorithms Implementation - Simple Example

  • پیاده سازی الگوریتم ژنتیک I Genetic algorithm implementation I

  • اجرای الگوریتم ژنتیک II Genetic algorithm implementation II

  • اجرای الگوریتم ژنتیک III Genetic algorithm implementation III

  • اجرای الگوریتم ژنتیک IV Genetic algorithm implementation IV

  • اجرای الگوریتم ژنتیک V - نخبه گرایی Genetic algorithm implementation V - elitism

پیاده سازی الگوریتم های ژنتیک - مشکلات رضایت از محدودیت Genetic Algorithms Implementation - Constraint Satisfaction Problems

  • مشکل N-queens چیست؟ What is the N-queens problem?

  • اجرای مسئله N queens I N queens problem implementation I

  • اجرای مسئله N ملکه II N queens problem implementation II

چالش شماره 3 - مشکل کوله پشتی Challenge #3 - Knapsack Problem

  • چالش دوره شماره 3 - بررسی اجمالی مشکل کوله پشتی Course challenge #3 - knapsack problem overview

  • مشکل کوله پشتی چیست؟ What is the knapsack problem?

  • اجرای مشکل کوله پشتی Knapsack problem implementation

بهینه سازی ازدحام ذرات Particle Swarm Optimization

  • هوش ازدحامی چیست؟ What is swarm intelligence?

  • مقدمه بهینه سازی ازدحام ذرات - مبانی Particle swarm optimization introduction - basics

  • مقدمه بهینه سازی ازدحام ذرات - الگوریتم Particle swarm optimization introduction - the algorithm

  • معاوضه اکتشاف و بهره برداری Exploration and exploitation trade-off

  • آزمون بهینه سازی ازدحام ذرات Particle Swarm Optimization Quiz

بهینه سازی ازدحام ذرات - مثال ساده Particle Swarm Optimization - Simple Example

  • پیاده سازی بهینه سازی ازدحام ذرات I Particle swarm optimization implementation I

  • اجرای بهینه سازی ازدحام ذرات II Particle swarm optimization implementation II

  • اجرای بهینه سازی ازدحام ذرات III Particle swarm optimization implementation III

### بازی دو نفره ### ### TWO PLAYER GAMES ###

  • معرفی درختان بازی Game trees introduction

  • مسابقه بازی دو نفره Two Player Games Quiz

الگوریتم Minimax - موتورهای بازی Minimax Algorithm - Game Engines

  • مقدمه الگوریتم Minimax - مبانی Minimax algorithm introduction - basics

  • معرفی الگوریتم Minimax - الگوریتم Minimax algorithm introduction - the algorithm

  • معرفی الگوریتم Minimax - ارتباط با tic-tac-toe Minimax algorithm introduction - relation to tic-tac-toe

  • مقدمه هرس آلفا بتا Alpha-beta pruning introduction

  • نمونه هرس آلفا بتا Alpha-beta pruning example

  • مشکل شطرنج Chess problem

  • مسابقه موتورهای بازی Game Engines Quiz

بازی تیک تاک پا Tic-Tac-Toe Game

  • اجرای تیک تاک پا I Tic tac toe implementation I

  • اجرای تیک تاک پا II Tic tac toe implementation II

  • اجرای تیک تاک پا III Tic tac toe implementation III

  • اجرای تیک تاک پا IV Tic tac toe implementation IV

  • اجرای تیک تاک انگشت پا V Tic tac toe implementation V

  • اجرای تیک تاک انگشت پا VI Tic tac toe implementation VI

  • تجسم حافظه پشته Minimax Minimax stack memory visualization

  • اجرای تیک تاک پنجه VII - هرس Tic tac toe implementation VII - pruning

### یادگیری تقویتی ### ### REINFORCEMENT LEARNING ###

  • یادگیری تقویتی چیست؟ What is reinforcement learning?

  • کاربردهای یادگیری تقویتی Applications of reinforcement learning

نظریه فرآیند تصمیم گیری مارکوف (MDP). Markov Decision Process (MDP) Theory

  • مبانی فرآیندهای تصمیم مارکوف I Markov decision processes basics I

  • مبانی فرآیندهای تصمیم مارکوف II Markov decision processes basics II

  • فرآیندهای تصمیم مارکوف - معادلات Markov decision processes - equations

  • فرآیندهای تصمیم مارکوف - تصویر Markov decision processes - illustration

  • معادله بلمن Bellman-equation

  • چگونه مشکلات MDP را حل کنیم؟ How to solve MDP problems?

  • تکرار ارزش چیست؟ What is value iteration?

  • تکرار سیاست چیست؟ What is policy iteration?

  • فرمول ریاضی یادگیری تقویتی Mathematical formulation of reinforcement learning

  • آزمون مبانی یادگیری تقویتی Reinforcement Learning Basics Quiz

مشکل اکتشاف در مقابل بهره برداری Exploration vs. Exploitation Problem

  • مشکل اکتشاف در مقابل استثمار Exploration vs exploitation problem

  • معرفی مشکل راهزن مسلح N N-armed bandit problem introduction

  • پیاده سازی مشکل راهزن مسلح N N-armed bandit problem implementation

  • کاربردها: تست A/B در بازاریابی Applications: A/B testing in marketing

  • مسابقه اکتشاف در مقابل بهره برداری Exploration vs. Exploitation Quiz

نظریه یادگیری Q Q Learning Theory

  • یادگیری Q چیست؟ What is Q learning?

  • مقدمه یادگیری Q - الگوریتم Q learning introduction - the algorithm

  • تصویر یادگیری Q Q learning illustration

  • فرمول بندی ریاضی یادگیری کیو Mathematical formulation of Q learning

  • آزمون یادگیری Q Q Learning Quiz

پیاده سازی یادگیری Q (Tic Tac Toe) Q Learning Implementation (Tic Tac Toe)

  • تیک تاک پا با اجرای یادگیری Q I Tic tac toe with Q learning implementation I

  • تیک تاک پا با اجرای یادگیری Q II Tic tac toe with Q learning implementation II

  • تیک تاک پا با اجرای یادگیری Q III Tic tac toe with Q learning implementation III

  • تیک تاک پا با اجرای یادگیری Q IV Tic tac toe with Q learning implementation IV

  • تیک تاک پا با اجرای یادگیری Q V Tic tac toe with Q learning implementation V

  • تیک تاک پا با اجرای یادگیری Q VI Tic tac toe with Q learning implementation VI

  • تیک تاک پا با اجرای یادگیری Q VII Tic tac toe with Q learning implementation VII

  • تیک تاک پا با اجرای یادگیری Q VIII Tic tac toe with Q learning implementation VIII

### ضمیمه - دوره خرابی برنامه نویسی پایتون ### ### APPENDIX - PYTHON PROGRAMMING CRASH COURSE ###

  • معرفی دوره سقوط پایتون Python crash course introduction

پیوست شماره 1 - مبانی پایتون Appendix #1 - Python Basics

  • اولین قدم ها در پایتون First steps in Python

  • انواع داده های اساسی چیست؟ What are the basic data types?

  • بولین ها Booleans

  • رشته های Strings

  • برش رشته String slicing

  • ریخته گری نوع Type casting

  • اپراتورها Operators

  • اظهارات مشروط Conditional statements

  • چگونه از شرایط متعدد استفاده کنیم؟ How to use multiple conditions?

  • تمرین: جملات شرطی Exercise: conditional statements

  • راه حل: گزاره های شرطی Solution: conditional statements

  • عملگرهای منطقی Logical operators

  • حلقه ها - برای حلقه Loops - for loop

  • حلقه ها - حلقه while Loops - while loop

  • تمرین: محاسبه میانگین Exercise: calculating the average

  • راه حل: محاسبه میانگین Solution: calculating the average

  • حلقه های تو در تو چیست؟ What are nested loops?

  • برشمردن Enumerate

  • بشکن و ادامه بده Break and continue

  • محاسبه اعداد فیبوناچی Calculating Fibonacci-numbers

  • تمرین: اعداد فیبوناچی Exercise: Fibonacci-numbers

  • راه حل: اعداد فیبوناچی Solution: Fibonacci-numbers

پیوست شماره 2 - توابع Appendix #2 - Functions

  • توابع چیست؟ What are functions?

  • تعریف توابع Defining functions

  • آرگومان های موقعیتی و آرگومان های کلیدواژه Positional arguments and keyword arguments

  • برگرداندن مقادیر Returning values

  • برگرداندن مقادیر متعدد Returning multiple values

  • تمرین: توابع Exercise: functions

  • راه حل: توابع Solution: functions

  • عملگر بازده Yield operator

  • متغیرهای محلی و جهانی Local and global variables

  • مرتبط ترین توابع داخلی کدامند؟ What are the most relevant built-in functions?

  • بازگشت چیست؟ What is recursion?

  • تمرین: بازگشتی Exercise: recursion

  • راه حل: بازگشت Solution: recursion

  • متغیرهای محلی در مقابل متغیرهای جهانی Local vs global variables

  • تابع __main__ The __main__ function

پیوست شماره 3 - ساختارهای داده در پایتون Appendix #3 - Data Structures in Python

  • چگونه زمان اجرای الگوریتم ها را اندازه گیری کنیم؟ How to measure the running time of algorithms?

  • معرفی ساختارهای داده Data structures introduction

  • ساختارهای داده آرایه چیست I What are array data structures I

  • ساختارهای داده آرایه چیست II What are array data structures II

  • لیست ها در پایتون Lists in Python

  • لیست در پایتون - عملیات پیشرفته Lists in Python - advanced operations

  • لیست ها در پایتون - درک لیست Lists in Python - list comprehension

  • (!!!) لیست ها و آرایه های پایتون (!!!) Python lists and arrays

  • تمرین: درک فهرست Exercise: list comprehension

  • راه حل: درک لیست Solution: list comprehension

  • اندازه گیری زمان اجرای لیست ها Measuring running time of lists

  • تاپل ها چیست؟ What are tuples?

  • تغییرپذیری و تغییرناپذیری Mutability and immutability

  • ساختارهای داده لیست پیوندی چیست؟ What are linked list data structures?

  • پیاده سازی لیست پیوندی دوگانه در پایتون Doubly linked list implementation in Python

  • هش و پیچیدگی زمان اجرا O(1). Hashing and O(1) running time complexity

  • فرهنگ لغت در پایتون Dictionaries in Python

  • مجموعه در پایتون Sets in Python

  • تمرین: ساخت فرهنگ لغت Exercise: constructing dictionaries

  • راه حل: ساخت فرهنگ لغت Solution: constructing dictionaries

  • مرتب سازی Sorting

پیوست شماره 4 - برنامه نویسی شی گرا (OOP) Appendix #4 - Object Oriented Programming (OOP)

  • برنامه نویسی شی گرا (OOP) چیست؟ What is object oriented programming (OOP)?

  • اصول کلاس و اشیاء Class and objects basics

  • با استفاده از سازنده Using the constructor

  • متغیرهای کلاس و متغیرهای نمونه Class variables and instance variables

  • تمرین: ساخت کلاس Exercise: constructing classes

  • راه حل: ساخت کلاس ها Solution: constructing classes

  • متغیرهای خصوصی و مخفی کردن نام Private variables and name mangling

  • وراثت در OOP چیست؟ What is inheritance in OOP?

  • کلمه کلیدی فوق العاده The super keyword

  • لغو تابع (روش). Function (method) override

  • پلی مورفیسم چیست؟ What is polymorphism?

  • چند شکلی و انتزاع مثال Polymorphism and abstraction example

  • تمرین: انتزاع Exercise: abstraction

  • راه حل: انتزاع Solution: abstraction

  • ماژول ها Modules

  • تابع __str__ The __str__ function

  • مقایسه اشیاء - توابع برتر Comparing objects - overriding functions

پیوست شماره 5 - NumPy Appendix #5 - NumPy

  • مزیت کلیدی NumPy چیست؟ What is the key advantage of NumPy?

  • ایجاد و به روز رسانی آرایه ها Creating and updating arrays

  • ابعاد آرایه ها Dimension of arrays

  • شاخص ها و برش Indexes and slicing

  • انواع Types

  • تغییر شکل دهید Reshape

  • تمرین: مشکل تغییر شکل Exercise: reshape problem

  • راه حل: مشکل تغییر شکل Solution: reshape problem

  • انباشتن و ادغام آرایه ها Stacking and merging arrays

  • فیلتر کنید Filter

  • مقایسه زمان اجرا: آرایه ها و لیست ها Running time comparison: arrays and lists

مواد درسی COURSE MATERIALS

  • اسلایدها و کد منبع Slides and source code

نمایش نظرات

آموزش هوش مصنوعی و فراابتکاری (بهینه سازی ترکیبی) پایتون
جزییات دوره
17.5 hours
196
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,200
4.6 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Holczer Balazs Holczer Balazs

مهندس نرم افزار