Обратная цепочка

редактировать

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

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

Обратная цепочка реализована в логике . программирование на разрешение SLD. Оба правила основаны на правиле вывода modus ponens. Это один из двух наиболее часто используемых методов рассуждения с правилами вывода и логическими следствиями ; второй - прямая цепочка. В системах с обратной цепочкой обычно используется стратегия поиска в глубину, например Пролог.

Содержание
  • 1 Как это работает
  • 2 См. Также
  • 3 Ссылки
  • 4 Внешние ссылки
Как это работает

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

Например, предположим, что новое домашнее животное, Фриц, доставлено в непрозрачной коробке вместе с двумя фактами о Фрице:

  • Фриц каркает
  • Фриц ест мух

Цель состоит в том, чтобы решить, является ли Фриц зеленым, на основе базы правил, содержащей следующие четыре правила:

Пример обратной цепочки. Пример обратной цепочки.
  1. IfX каркает, а X ест мух - Затем X это лягушка
  2. IfX щебечет и X поет - Тогда X - канарейка
  3. IfX - лягушка - Тогда X зеленый
  4. IfX - канарейка - Тогда X желтый

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

1. Фриц заменяется на X в правиле № 3, чтобы увидеть, соответствует ли его результат цели, поэтому правило № 3 становится:

IfФриц - лягушка - Тогда Фриц зеленый

Поскольку После совпадения с целью («Фриц - зеленый») механизму правил теперь необходимо проверить, может ли быть доказано предшествующее («Фриц - лягушка»). Таким образом, антецедент становится новой целью:

Фриц - лягушка

2. Снова заменяя Х на Фрица, правило №1 становится следующим:

IfФриц каркает, а Фриц ест мух - Тогда Фриц - лягушка

Поскольку консеквент соответствует текущей цели («Фриц - это лягушка "), то теперь машине вывода нужно проверить, можно ли доказать антецедент (" Фриц каркает и ест мух "). Таким образом, предыдущее событие становится новой целью:

Фриц каркает, а Фриц ест мух

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

Фриц каркает, Фриц ест мух

4. Чтобы доказать обе эти подцели, машина вывода видит, что обе эти подцели были заданы как исходные факты. Следовательно, конъюнкция верна:

Фриц каркает, а Фриц ест мух

, следовательно, антецедент правила №1 верен, а следствие должно быть верным:

Фриц - это лягушка

, следовательно, антецедент правила № 3 истинен, а следствие должно быть истинным:

Фриц зеленый

Таким образом, этот вывод позволяет механизму вывода доказать, что Фриц зеленый. Правила №2 и №4 не использовались.

Обратите внимание, что цели всегда соответствуют утвержденным версиям следствий импликаций (а не отвергнутым версиям, как в modus tollens ), и даже в этом случае их предшественники рассматриваются как новые цели (а не выводы, как в , подтверждающие следствие ), которые в конечном итоге должны соответствовать известным фактам (обычно определяемым как следствия, антецеденты которых всегда верны); таким образом, используемое правило вывода: modus ponens.

Поскольку список целей определяет, какие правила выбираются и используются, этот метод называется управляемый целью, в отличие от data- управляемый логический вывод с прямой цепью. Подход с обратной цепочкой часто используется экспертными системами.

Языки программирования, такие как Prolog, Knowledge Machine и ECLiPSe, поддерживают обратную цепочку в своих выводах. двигатели.

См. также
Ссылки
  1. ^Эдвард Фейгенбаум (1988). Расцвет экспертной компании. Times Books. п. 317. ISBN 0-8129-1731-6.
  2. ^Мишель Чейн; Мари-Лор Мюнье (2009). Графическое представление знаний: вычислительные основы концептуальных графов. Springer. п. 297. ISBN 978-1-84800-285-2.
  3. ^Определение обратной цепочки как метода поиска в глубину:
    • Russell Norvig 2009, p. 337 ошибка harvnb: нет цели: CITEREFRussellNorvig2009 (help )
  4. ^Языки, поддерживающие обратную цепочку:
    • Russell Norvig 2009, стр. 339 ошибка harvnb: нет цели: CITEREFRussellNorvig2009 (help )
Внешние ссылки
Последняя правка сделана 2021-05-11 05:38:31
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте