Зачем преподавать только алгоритмы поиска в коротком вводном курсе по искусственному интеллекту?

11

Я понял, что концепция поиска важна в искусственном интеллекте. На этом сайте есть вопрос по этой теме, но можно также интуитивно понять, почему. У меня был вводный курс по ИИ, который длился половину семестра, поэтому, конечно, не было достаточно времени, чтобы охватить все темы ИИ, но я ожидал изучить некоторую теорию ИИ (я слышал об «агентах»). "), но на самом деле я узнал несколько алгоритмов поиска, например:

  • BFS
  • Поиск с равномерной стоимостью
  • ДФС
  • Итеративно-углубленный поиск
  • Двунаправленный поиск

Эти алгоритмы поиска обычно классифицируются как «слепые» (или «неинформированные»), поскольку они не учитывают какую-либо информацию об оставшемся пути к цели.

Или алгоритмы, такие как:

  • Эвристический поиск
  • Лучший поиск в первую очередь
  • A
  • A *
  • ИДА*

которые обычно подпадают под категорию «информированных» алгоритмов поиска, потому что они используют некоторую информацию (то есть «эвристики» или «оценки») об оставшемся пути к цели.

Затем мы также изучили «продвинутые» алгоритмы поиска (специально примененные к проблеме TSP). Эти алгоритмы являются либо конструктивными (например, ближайший сосед), алгоритмами локального поиска (например, 2-opt), либо метаэвристическими (например, система колоний муравьев или имитированный отжиг).

Мы также кратко изучили алгоритм min-max, применяемый к играм, и «улучшенную» версию min-max, то есть альфа-бета-отсечение.

После этого курса у меня возникло ощущение, что ИИ просто ищет, «глупо» или «более разумно».

Мои вопросы:

  • Почему один профессор может преподавать только алгоритмы поиска в курсе ИИ? Каковы преимущества / недостатки? Следующий вопрос очень связан с этим.

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

  • Есть ли теории ИИ, которые можно преподавать в этом виде курса?

нбро
источник
Вам, вероятно, следует изменить свое предположение, что перечисленные алгоритмы поиска называются «слепыми» - потому что это неправильно. «слепой» обычно используется как синоним «неосведомленный». Однако A *, IDA * и эвристический поиск по определению являются «информированными» алгоритмами поиска (поскольку они основаны на эвристике), поэтому они не являются слепыми. Кроме того, вы уверены, что «алгоритм» существует? Я знаю только A * и я не смог найти никакого упоминания об этом алгоритме в сети. Если бы он действительно существовал, ссылка была бы хорошей (возможно, в комментариях).
Проф
@ Prof.Chaos Алгоритм A - это A *, когда вы не знаете, что эвристика оптимальна. Действительно, * в A * должно вызывать что-то в наших головах. Что касается «слепого» аргумента, вероятно, несправедливо считать A * слепым, как BFS или DFS, поэтому я согласен с вами.
nbro

Ответы:

8

Существует множество заблуждений об искусственном интеллекте, в частности, идея о том, чтобы заставить компьютеры «мыслить» как люди, симулировать мозг, научно-фантастические роботы захватывают мир, все философские дискуссии вокруг мозга как машины и т. Д. Практика / реальность ИИ - это «использование вычислений для решения проблем», что в основном означает, что вы берете любую проблему, представляете ее как вычислительную проблему и затем разрабатываете алгоритм для решения вычислительной проблемы, которая приводит к решению исходной проблемы. Эти алгоритмы поиска являются алгоритмами общего назначения для вычислительных задач общего назначения, т.е. любая проблема реального мира может быть представлена ​​этими вычислительными задачами общего назначения, а затем эти алгоритмы могут быть использованы для их решения.

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

Анкур
источник
6

То, что сводится к тому, что большинство проблем ИИ можно охарактеризовать как проблемы поиска. Давайте просто рассмотрим несколько примеров:

  • Распознавание объектов и построение сцены (например, процесс получения аудиовизуального ввода вашего окружения и понимания его в трехмерном и контекстном смысле) можно рассматривать как поиск известных объектов на входе.
  • Решение математических задач можно рассматривать как поиск решения.
  • Игра в видеоигру может рассматриваться как поиск правильного ответа на заданное состояние игры.

Даже элементарные чат-роботы можно охарактеризовать как нахождение «правильного» ответа на данную входную фразу, чтобы подражать человеческому языку!

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

Теперь поисковые алгоритмы - не единственный способ решения этих проблем. Я рекомендую каждому специалисту по искусственному интеллекту знаком с понятием Data Science и алгоритмов машинного обучения. ML часто связан с алгоритмами поиска, но используемые ими методы могут сильно отличаться от итеративного построения классификатора / регрессии (например, C4.5 создает дерево решений), метаэвристики, как вы заметили, и классификаторов / регрессии, которые статически генерируются из анализ обучающих данных (например, «Наивный байесовский» - буквально классификатор, построенный на байесовском анализе данных, предполагающий, что поля ввода независимы - это «наивность», от которой он получает свое имя). Часто алгоритмы ML разрабатываются в исследовательских группах по искусственному интеллекту и иногда могут быть разработаны для конкретных задач, а не являются алгоритмами общего вида.

Тим Аткинсон
источник
4

Почему один профессор может преподавать только алгоритмы поиска в курсе ИИ? Каковы преимущества / недостатки?

Мой ответ на этот вопрос заключается в том, что существует множество проблем, решение которых можно найти с помощью поиска. Возьмите пример Tic Tac Toe. Если вы разрабатываете интеллектуальный компьютерный плеер для этого, то, что вы будете делать, это то, что вы сформируете пространство поиска, а затем будете искать наиболее оптимальный ход, который можно сделать, чтобы завершить игру. В этих сценариях вы должны знать об оптимальных стратегиях поиска. Давайте рассмотрим другой пример. Предположим, вы едете за рулем и хотите попасть в дом неизвестного. Это далеко от вашего места, и вы решили использовать GPS. Ваш GPS будет использовать алгоритмы поиска, чтобы найти наиболее оптимальный маршрут, по которому вы сможете добраться до места назначения (конечно, будет много факторов, таких как трафик и т. Д., Но это основная идея).

Недостатки только с точки зрения обработки и хранения. Для медленных алгоритмов вы будете тратить много времени и ресурсов процессора, а для хороших и эффективных алгоритмов вы можете сэкономить много места, а также очень быстро выполнить свою задачу. Конечно, просто изучение поиска - это не ИИ. Это намного больше.

Что больше, чем «поиск» в ИИ, который можно преподавать на вводном курсе?

В ИИ есть много вещей, кроме поиска. Например, методы обучения (контролируемые, неконтролируемые, усиленные), планирование, когда кто-то хочет разработать систему, которая будет выполнять определенные действия независимо и разумно, представление знаний (известных и неизвестных) и умозаключений в агентах, которые включают в себя логику высказываний и первого порядка логика и т. д.

Существуют ли теории искусственного интеллекта, которым можно научиться в этом виде курса?

Можно было бы преподавать некоторые темы, такие как различные типы агентов (простой рефлекс, на основе модели, цели, на основе утилит и обучающего агента), различные типы сред, в которых работают агенты, оценка агентов. Могут быть дополнительные вводные темы, такие как обработка естественного языка, экспертные системы и т. Д.

kiner_shah
источник