Трудно добиться прогресса, когда у твоей работы есть аппетит

Контекст:

Для понимания того, почему я пишу об этом, возможно, вам стоит потратить две минуты на прочтение Udacity AIND: How I Got Involved.

Неделя 3:

Текущее состояние души:

Второй проект должен быть готов через неделю. Второй проект был назначен еще на 24.02.16. С тех пор прошло две недели, а я так и не смог начать работу над проектом. Работа была сумасшедшей.

Отражение:

Это второй сегмент AIND. Цель этого сегмента, как я понимаю прямо сейчас (и не слишком задумываясь об этом), двояка:

  1. Чтобы понять основные области применения искусственного интеллекта и наностепени искусственного интеллекта.
  2. Изучить основы эффективного поиска путем изучения и построения простой, полностью наблюдаемой, детерминированной, дискретной, состязательной, пошаговой игры с нулевой суммой под названием «Изоляция».

Как я упоминал выше, работа была сумасшедшей (Schoolzilla Data Champion Summit плюс жесткие сроки на этой неделе), что действительно ограничило часы, которые я мог потратить на уроки и проект. На самом деле, я даже не приступил к проекту, а тратил свое время на кропотливую работу над уроками и дополнительными материалами.

На данный момент я потратил около 3 часов, заканчивая уроки «Введение в игру» и прорабатывая уроки «Продвинутая игра». У меня, вероятно, осталось 2–3 часа, чтобы закончить уроки и попытаться усвоить их, что я надеюсь закончить сегодня, а затем потрачу большую часть своих выходных, работая над проектом. Проект двоякий:

  1. Часть 1: Кодирование и анализ. Закодируйте изолирующий ИИ-движок, который реализует минимаксный поиск с использованием альфа-бета-сокращения.
  2. Часть 2: Обзор исследования. Прочтите научную статью об игре и напишите краткое изложение целей и методов статьи, а также любых результатов.

Любимые части третьей недели:

  • Самое интересное, что удалось узнать: базовая методология ИИ для простой игры, такой как крестики-нолики, по сути, представляет собой поиск в глубину всех возможных ходов, которые могут произойти в игре, что достаточно просто по идее. В идеале вы хотели бы искать все вплоть до каждого конечного состояния, чтобы выбрать идеальный ход на каждом ходу. Интересная (и, возможно, очевидная) вещь заключается в том, что экспоненциальный рост дерева поиска по мере спуска по уровням быстро приводит к тому, что дерево с двумя множеством узлов полностью обрабатывается за любое разумное время. Чтобы получить представление о том, сколько времени, если мы посмотрим на верхние границы для всех ходов на игровом поле 5x5 Isolation, количество узлов в дереве будет равно 25! ≈ 10²⁵. Это явно большое число. Чтобы сделать это более конкретным, давайте добавим процессор и посмотрим, сколько времени потребуется для обращения ко всем этим узлам: если средний процесс Intel Core i5 может обращаться к 10⁹ узлам в секунду, это все равно займет 10¹⁶ секунд ≈ 317 миллионов лет. . Это явно больше, чем 2-секундное окно терпения, которое есть у человека, чтобы компьютер сделал ход. Таким образом, экспоненциальный рост пространства поиска — это то, где такие стратегии, как поиск с ограничением по глубине, итеративное углубление, функции оценки и сокращение альфа-бета, начинают становиться бесценными.
  • Мне нравятся как видео (которые очень динамичны), так и Книга Питера Норвинга по искусственному интеллекту (гораздо более подробная с псевдокодом для алгоритмов) в качестве инструментов обучения.

Что можно улучшить:

  • В видеоролике «Эффект горизонта» инструкторы упоминают, как люди часто могут видеть, когда ход будет решающим в игре таким образом, что ИИ может пропустить, потому что ИИ не может достаточно глубоко углубиться в свое дерево поиска возможных вариантов. предстоящие ходы. Они пытаются показать это на примере из «Изоляции», где прямо упоминается человеческая интуиция хороших и плохих ходов, которая, предположительно, развилась в результате большого количества игры в «Изоляцию». Проблема в том, что, не играя в изоляцию, трудно понять их аргументацию. Я думаю, что они могли бы либо лучше объяснить причину, либо подчеркнуть необходимость больше играть в «Изоляцию», чтобы развить это понимание.
  • Я немного возвращаюсь назад и вперед, но я думаю, что было бы неплохо иметь лучшее введение в проект в начале всех уроков, чтобы иметь немного более четкое представление о масштабах проекта, чтобы иметь возможность планировать время. лучше.