HARVARD CS50 — «Поиск» — Лекция 0: Искусственный Интеллект с Python на русском (2020)
Практический Курс по Python:
Stepik: https://stepik.org/a/126242
Udemy: https://www.udemy.com/course/avecoder-advanced-python/?referralCode=270C5D0661A966B53743
Аве, Кодер!
Это легендарный Гарвардский курс CS50 на русском языке: основы искусственного интеллекта с Python.
Этот курс познакомит нас с концепциями и алгоритмами, лежащими в основе современного искусственного интеллекта, мы погрузимся в идеи, которые лежат в основе таких технологий как игровые движки, распознавание рукописного ввода и машинный перевод.
В первой лекции посвященной задачам поиска, мы ознакомимся с такими алгоритмами как: Поиск в ширину, Поиск в глубину, Жадный алгоритм поиска по первому лучшему, Минимакс, A * (A star) и посмотрим на их практическое применение к решению задач нахождения выхода из лабиринта или игр с нулевой суммой, таких например, как крестики-нолики и все это на примере популярного языка программирования — Python.
Тайм-коды:
0:24 в уроке идеи, техники и алгоритмы, которые лежат в основе Искусственного Интеллекта (Artificial Intelligence)
0:30 Небольшое описание курса
3:13 алгоритм поиска. Что компьютеру делать в определенной ситуации. Проблемы различных типов и форматов
3:34 примеры: пятнашки, лабиринт, гугл карты
4:41 что из себя представляет задача поиска. Из чего состоит её алгоритм обучения
4:49 Терминология: агент (agent), состояние (state), начальное состояние (initial state),
6:16 действия (actions),
7:28 модель перехода состояний (transition model),
9:34 пространство состояний (state space),
10:04 представление в виде Графа
10:56 проверка цели (goal test),
11:51 стоимость пути (path cost),
13:41 задача поиска (search problems),
14:18 цель-решение (solution),
14:28 оптимальное решение (optimal solution),
14:46 представление набора данных, связанных с задачей:
15:07 структура данных Узел (node),
16:34 Подход, с которого надо начать решать задачу. фронтир (frontier). Все варианты решения
18:21 проверка цели
18:37 развёртывание узла — оценка всех его соседей
19:29 применение в задаче поиска
22:06 возможные проблемы. Зацикливание
24:01 улучшенный способ решить задачу поиска
25:58 Структура данных Стэк (Stack) для добавления и удаления элементов last-in first-out
26:22 применение стэка к задаче
27:51 Алгоритм поиска Depth-First Search Поиск в глубину
28:37 Алгоритм поиска Breadth-First Search Поиск в ширину
29:04 Структура данных Очередь (Queue) first-in first-out
29:12 применение очереди к задаче
30:36 эти 2 алгоритма поиска на практике. Лабиринт
36:22 код
44:00 работа кода
44:37 пример 2 maze2
48:31 пример 3 maze3
51:58 выбор при нескольких возможных вариантах
53:13 2 типа поисковых алгоритмов. Это были неинформированные поиски
53:54 информированный поиск (informed search):
54:29 Алгоритм Greedy Best-First Search Жадный поиск по первому лучшему совпадению
56:36 с помощью эвристической функции Манхэттанское расстояние
57:40 на практике
1:01:39 хорошая эвристика
1:03:43 оценка пути (расстояния) до цели
1:04:31 улучшение
1:05:23 Алгоритм A* Search Астар. Учитывает 2 вида информации
1:09:30 находит оптимальный путь, при 2 условиях
1:11:51 Алгоритмы с 2 агентами. Состязательный поиск. Adversarial Search. Крестики нолики
1:14:11 Алгоритм Minimax Минимакс
1:17:15 описание кода Game
1:23:08 вычисление алгоритма минимакс
1:23:42 рекурсия в минимакс
1:28:20 диаграмма дерево минимакс
1:30:39 псевдо-код
1:36:40 оптимизация
1:39:57 Алгоритм Alpha-Beta Pruning Альфа-Бета обрезка
1:45:25 Алгоритм Depth-Limited Minimax минимакс с ограничением глубины. Для этого добавляется функция оценки
1:48:18 на следующем уроке о Знаниях, учитываемых ИИ
Благодарности и атрибуции:
David J. Malan
https://cs.harvard.edu/malan
malan@harvard.edu
Оригинал:https://www.youtube.com/watch?v=WbzNRTTrX0g&list=PLhQjrBD2T382Nz7z1AEXmioc27axa19Kv&index=2
*Публикуется с согласия Дэвида Мэлана и Гарвардского университета на редистрибуцию оригинальной работы с внесением изменений по соответствующей лицензии.
История Технологий:
https://www.youtube.com/c/АвеТех
______________________
Аве Кодер!
Меня зовут V и я кодер. Я экспортирую из Англии: актуальные туториалы, computer science, брейнхаки, лайфхаки, здоровье кодера, тревэл он нью левэл, английский для кодера, как кодеру не помереть с голоду, юмор и многое другое.
Так что ставь императорский палец вверх, подписывайся и бей в колокол!