Разное

Planner язык программирования: Planner — Национальная библиотека им. Н. Э. Баумана

Содержание

Planner — Национальная библиотека им. Н. Э. Баумана

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 22:38, 8 июня 2016.

Planner ([ ˈplæn.ər ] иногда записывается большими буквами как PLANNER, в советской литературе также использовалось транслитерированное Плэнер) — функционально-логический язык программирования, схожий по своему синтаксису с Лисом. Был разработан Карлом Хьюитом в Лаборатории Искусственного Интеллекта Массачусетского Технологического Института. Первая публикация с описанием языка появилась в 1969 г. Несмотря на то, что язык так и не был, по всей видимости, реализован в полном объёме, его влияние на исследования, связанные с искусственным интеллектом, оказалось, во многом, определяющим.

История

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

Planner — это существенно новый язык программирования для исследования искусственного интеллекта. Работа Хьюитта нашла новый сорт языков программирования для исследования искусственного интеллекта. Planner до сих пор находится в разработке; однако, ранняя версия Planner был введен в эксплуатацию больше года. Lisp очень желанный фон для этих языков, и мы так же предполагаем ссылку на McCarthy (1965), Weissman (1967), и Teitelman (1972).

Доказательство теорем

Planner – это язык программирования для управления базами данных. База данных представляет собой набор выражений, которые программа на Planner принимает как утверждения о знании о мире. Программа, написанная на Planner это описание плана изменения утверждений в базе данных (или создание новой базы данных) в зависимости от утверждений, которые уже находятся в базе данных. Фундаментальный механизм, благодаря которому Planner работает это сопоставление шаблону: программа на Planner (или «теорема») может использовать шаблон для поиска данных в базе данных для определенного выражения, и если она его находит, добавляет новое выражение в базу данных. Или программа на Planner может использовать сопоставление шаблону для поиска в базе данных для других программ (теорем), которые разработаны для добавления определенных выражений в базу данных. Таким образом, последовательная теорема Planner:

 (THCONSE	(X)	(FALLIBLE	$?X)
 (THGOAL	(HUMAN	$?X)))

Это программа, описывающая процедуру последовательности добавления утверждения формы (FALLIBLE $?X) в базу данных. Она состоит из попыток выполнения утверждения (THGOAL (HUMAN $?X)), которые могут быть выполнены, если сопоставитель шаблонов находит утверждение формы (HUMAN $?X) в базе данных, формы

 (THCONSE	(Y)	(HUMAN $?Y)…)

И эта теорема может быть успешно выполнена при Y, связанной со значением X. Если утверждение THGOAL может быть выполнено ни в одном из этих случаев, и значение X, скажем, SOCRATES, тогда оригинальная THCONSE теорема добавит выражение (FALLIABLE SOCRATES) в базу данных. На английском, это значит «что-то ошибочно, если изначально известно, что это человек, или если показано, будто это человек.» (Доллар и вопросительный знак – префиксы переменных, используемые для сопоставления шаблону)

По аналогии, Planner использует «антецедентные» теоремы для изменения утверждений в базе данных автоматически, в случае если другие утверждения были добавлены или удалены. Таким Образом,

 (THANTE	(X	Z)	(LIKES $?X	$?Z)
 (THASSERT	(HUMAN	$?X)))

это анцендентная теорема (программа), которая утверждает, что когда суждение формы (LIKES $?X $?Z) добавляется в базу данных, суждение/code> (HUMAN $?X</code>) тоже должно быть добавлено. Таким образом, теорема на Planner может вести себя как целенаправленная недетерминированная программа; она может обуславливать разнообразные цели для компьютера, не оговаривая как именно компьютер должен их достигнуть. Теоремы Planner это пример шаблонно-направленных планов. Более того, Planner включает возможность резервного копирования плана, если сопоставление шаблону неудачно. Таким образом, предполагается, что наша база данных включает в себя следующие простые утверждения:

 (HUMAN	TURING)
 (HUMAN	SOCRATES)
 (GREEK	SOCRATES)

И теорему:

 (THCONSE	(X)	(FALLIBLE	$?X)
 (THGOAL	(HUMAN	$?X)))

Мы можем искать в базе данных, чтобы ответить на вопрос «Есть ли ошибочный грек?», оценивая программу Planner:

 (THPROG	(X)	(THGOAL	(FALLIBLE	$?X)	(THTBF THTRUE))
 (THGOAL	(GREEK	$?X)))

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

У Planner есть много других важных особенностей. В качестве «примитивных функций» в языке содержится много процедур, которые должны быть детально написаны на других языках. Знание в Planner хранятся в «ассоциативной памяти» (структура, подобная графу, с помеченными узлами и дугами). Из-за того, что программы на Planner сами по себе списковые структуры, есть возможность создания таких программ или их изменения или выполнения другими (а иногда теми же) программами Planner.

Функции языка

Некоторые из функций Planner, перечислены ниже, вместе с краткими пояснениями их функций. Примеры их использования будут даны сразу после описания примитивов. Примитивы, вероятно, трудно будет понять без понимания примеров, так как язык является рекурсивным. В общем Planner попытается запомнить все, что делается на всех уровнях, если только нет причин что-то забыть. В реализации языка должны быть предприняты специальные меры, чтобы убедиться, что переменные получают правильные привязки. Самый эффективный способ реализации языка это вернуть указатели в стеке на верные значения. Значение ячейки не обеспечивает эффективное средство реализации языка.

{ {"thval}$_expression $_bindlngs $state}

Будет оценивать значение $$expression с привязкой, значение которого $$bindings и локальным состоянием, значение которого $$state. В любой момент времени выражения Planner оцениваются в локальном состоянии. Это состояние определяет, какие изменения были сделаны в базе данных, то есть какие удаления и утверждения были сделаны.

Возвращает в качестве значения текущее локальное состояние

Будет обновлять базу данных в зависимости от состояния, значение которого является $$state

 { { " assert} $_statement {recommendation})

где

 (def recommendation (kappa (() )
 (dis j
 0
 ?
 (or <star {recommendation}>)
 (and <star {recommendation}>)
 (subset <star{recommendation}>)
 (sequence <star (recommendation}>)}))

Если суждение $$statement уже было утверждено, то функция assert выступает в роли инструкции null.

 { { " conclude-from} $_statement
 {recommendation})

Planner попытается сделать вывод из суждения $$statement, используя рекомендацию.

 { { " assert-consequent} {recommendation})

Вызывает результат, в котором функция должна быть утверждена. Функция должна использоваться только в теоремах, которые начинаются с консеквента атома. После оценивания, выполнение функции прекратится в теореме, в которой она появилась.

 { { " permanent-assert} $_statement
 {recommendation})

Это как функция assert, только $$statement продолжает удерживать значение при отказе резервного копирования при вызове permanentassert.

Ссылки

  • Introduction to Artificial Intelligence: Second, Enlarged Edition, Philip C. Jackson

Planner — это… Что такое Planner?

Planner (иногда записывается большими буквами как PLANNER, в советской литературе также использовалось транслитерированное Плэнер) — функционально-логический язык программирования, схожий по своему синтаксису с Лиспом.

Был разработан Карлом Хьюитом в Лаборатории Искусственного Интеллекта Массачусетского Технологического Института. Первая публикация с описанием языка появилась в 1969 г.

Несмотря на то, что язык так и не был, по всей видимости, реализован в полном объёме, его влияние на исследования, связанные с искусственным интеллектом, оказалось, во многом, определяющим.

Реализации и производные системы

Первые реализации — Micro-planner и Pico-planner содержали достаточно ограниченное подмножество языка. Практически полные варианты Planner были реализованы в системе Popler и ряде производных — QA-4, Conniver, QLISP, Ether.

В СССР язык был реализован в системе ПЛЭНЕР-БЭСМ, разработанной для БЭСМ-6 в конце 1970-х гг.

LISP и Prolog — два самых популярных языка символьной обработки. Однако интересные идеи предлагались и создателями других языков, не получивших широкой известности. Один из таких языков — редко вспоминаемый Planner. Своё название (которое переводится как «планировщик») он получил благодаря тому, что был в основном предназначен для создания систем планирования действий роботов. Planner был разработан Карлом Хьюиттом из Массачусетского технологического института в 1971 году и стал серьёзным этапом в развитии идей обработки символьной информации.

Planner обладает всеми возможностями языка LISP, то есть фактически LISP является его подмножеством. Но набор встроенных функций в языке Planner намного шире, а сами они обычно гораздо мощнее соответствующих функций языка LISP. К примеру, функции ELEM и REST обобщают функции CAR и CDR, позволяя выделять и отбрасывать из списка произвольные элементы: [ELEM 1 L] = = A, [REST 2 L] = (С (D Е F) (G Н)). Кроме того, введение в запись нескольких типов скобок (в языке LISP допускаются только круглые скобки, что весьма затрудняет чтение программ) сделало программы гораздо понятнее. Но самое главное, язык был обогащен дополнительными возможностями.

Первая из них — поиск и анализ данных по образцу. Подобный механизм был успешно опробован в языке Snobol и широко используется сейчас, например, когда в Norton Commander задаётся поиск всех файлов вида *.doc, то выполняется именно это действие.

Вторая дополнительная возможность позволяет весьма эффективно применять Planner при создании систем искусственного интеллекта: можно строить и изменять описание среды, в которой решается задача. Описание среды называется базой данных и содержит отдельные утверждения (факты), истинные в данной среде. Кроме фактов, содержащихся в базе данных, в программе нужно задавать логические отношения между используемыми в задаче понятиями, а также описания действий, которые разрешено производить. Такие описания называются теоремами. Каждая теорема имеет список условий (предпосылок), которые должны быть выполнены, прежде чем станет возможным её применение. В результате применения теоремы некоторые факты из базы данных перестают быть истинными и должны быть из неё удалены, а другие, напротив, становятся истинными и должны её пополнить. Списки фактов обоих видов также содержатся в описаниях теорем.

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

Planner — Википедия (с комментариями)

Материал из Википедии — свободной энциклопедии

Planner (иногда записывается большими буквами как PLANNER, в советской литературе также использовалось транслитерированное Плэнер) — функционально-логический язык программирования, схожий по своему синтаксису с Лиспом.

Был разработан Карлом Хьюитом в Лаборатории Искусственного Интеллекта Массачусетского Технологического Института. Первая публикация с описанием языка появилась в 1969 г.

Несмотря на то, что язык так и не был, по всей видимости, реализован в полном объёме, его влияние на исследования, связанные с искусственным интеллектом, оказалось, во многом, определяющим.

Реализации и производные системы

Первые реализации — Micro-planner и Pico-planner содержали достаточно ограниченное подмножество языка. Практически полные варианты Planner были реализованы в системе Popler и ряде производных — QA-4, Conniver, QLISP, Ether.

В СССР язык был реализован в системе ПЛЭНЕР-БЭСМ, разработанной для БЭСМ-6 в конце 1970-х гг.

LISP и Prolog — два самых популярных языка символьной обработки. Однако интересные идеи предлагались и создателями других языков, не получивших широкой известности. Один из таких языков — редко вспоминаемый Planner. Своё название (которое переводится как «планировщик») он получил благодаря тому, что был в основном предназначен для создания систем планирования действий роботов. Planner был разработан Карлом Хьюиттом из Массачусетского технологического института в 1971 году и стал серьёзным этапом в развитии идей обработки символьной информации.

Planner обладает всеми возможностями языка LISP, то есть фактически LISP является его подмножеством. Но набор встроенных функций в языке Planner намного шире, а сами они обычно гораздо мощнее соответствующих функций языка LISP. К примеру, функции ELEM и REST обобщают функции CAR и CDR, позволяя выделять и отбрасывать из списка произвольные элементы: [ELEM 1 L] = = A, [REST 2 L] = (С (D Е F) (G Н)). Кроме того, введение в запись нескольких типов скобок (в языке LISP допускаются только круглые скобки, что весьма затрудняет чтение программ) сделало программы гораздо понятнее. Но самое главное, язык был обогащен дополнительными возможностями.

Первая из них — поиск и анализ данных по образцу. Подобный механизм был успешно опробован в языке Snobol и широко используется сейчас, например, когда в Norton Commander задаётся поиск всех файлов вида *.doc, то выполняется именно это действие.

Вторая дополнительная возможность позволяет весьма эффективно применять Planner при создании систем искусственного интеллекта: можно строить и изменять описание среды, в которой решается задача. Описание среды называется базой данных и содержит отдельные утверждения (факты), истинные в данной среде. Кроме фактов, содержащихся в базе данных, в программе нужно задавать логические отношения между используемыми в задаче понятиями, а также описания действий, которые разрешено производить. Такие описания называются теоремами. Каждая теорема имеет список условий (предпосылок), которые должны быть выполнены, прежде чем станет возможным её применение. В результате применения теоремы некоторые факты из базы данных перестают быть истинными и должны быть из неё удалены, а другие, напротив, становятся истинными и должны её пополнить. Списки фактов обоих видов также содержатся в описаниях теорем.

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

К:Википедия:Статьи без источников (тип: не указан)

Напишите отзыв о статье «Planner»

Отрывок, характеризующий Planner

– Ты подожди лучше, когда замуж выйдет…
– Ты знаешь, – сказал Анатоль, – j’adore les petites filles: [обожаю девочек:] – сейчас потеряется.
– Ты уж попался раз на petite fille [девочке], – сказал Долохов, знавший про женитьбу Анатоля. – Смотри!
– Ну уж два раза нельзя! А? – сказал Анатоль, добродушно смеясь.

Следующий после театра день Ростовы никуда не ездили и никто не приезжал к ним. Марья Дмитриевна о чем то, скрывая от Наташи, переговаривалась с ее отцом. Наташа догадывалась, что они говорили о старом князе и что то придумывали, и ее беспокоило и оскорбляло это. Она всякую минуту ждала князя Андрея, и два раза в этот день посылала дворника на Вздвиженку узнавать, не приехал ли он. Он не приезжал. Ей было теперь тяжеле, чем первые дни своего приезда. К нетерпению и грусти ее о нем присоединились неприятное воспоминание о свидании с княжной Марьей и с старым князем, и страх и беспокойство, которым она не знала причины. Ей всё казалось, что или он никогда не приедет, или что прежде, чем он приедет, с ней случится что нибудь. Она не могла, как прежде, спокойно и продолжительно, одна сама с собой думать о нем. Как только она начинала думать о нем, к воспоминанию о нем присоединялось воспоминание о старом князе, о княжне Марье и о последнем спектакле, и о Курагине. Ей опять представлялся вопрос, не виновата ли она, не нарушена ли уже ее верность князю Андрею, и опять она заставала себя до малейших подробностей воспоминающею каждое слово, каждый жест, каждый оттенок игры выражения на лице этого человека, умевшего возбудить в ней непонятное для нее и страшное чувство. На взгляд домашних, Наташа казалась оживленнее обыкновенного, но она далеко была не так спокойна и счастлива, как была прежде.

В воскресение утром Марья Дмитриевна пригласила своих гостей к обедни в свой приход Успенья на Могильцах.

– Я этих модных церквей не люблю, – говорила она, видимо гордясь своим свободомыслием. – Везде Бог один. Поп у нас прекрасный, служит прилично, так это благородно, и дьякон тоже. Разве от этого святость какая, что концерты на клиросе поют? Не люблю, одно баловство!

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

Когда напились кофе после обедни, в гостиной с снятыми чехлами, Марье Дмитриевне доложили, что карета готова, и она с строгим видом, одетая в парадную шаль, в которой она делала визиты, поднялась и объявила, что едет к князю Николаю Андреевичу Болконскому, чтобы объясниться с ним насчет Наташи.

После отъезда Марьи Дмитриевны, к Ростовым приехала модистка от мадам Шальме, и Наташа, затворив дверь в соседней с гостиной комнате, очень довольная развлечением, занялась примериваньем новых платьев. В то время как она, надев сметанный на живую нитку еще без рукавов лиф и загибая голову, гляделась в зеркало, как сидит спинка, она услыхала в гостиной оживленные звуки голоса отца и другого, женского голоса, который заставил ее покраснеть. Это был голос Элен. Не успела Наташа снять примериваемый лиф, как дверь отворилась и в комнату вошла графиня Безухая, сияющая добродушной и ласковой улыбкой, в темнолиловом, с высоким воротом, бархатном платье.

– Ah, ma delicieuse! [О, моя прелестная!] – сказала она красневшей Наташе. – Charmante! [Очаровательна!] Нет, это ни на что не похоже, мой милый граф, – сказала она вошедшему за ней Илье Андреичу. – Как жить в Москве и никуда не ездить? Нет, я от вас не отстану! Нынче вечером у меня m lle Georges декламирует и соберутся кое кто; и если вы не привезете своих красавиц, которые лучше m lle Georges, то я вас знать не хочу. Мужа нет, он уехал в Тверь, а то бы я его за вами прислала. Непременно приезжайте, непременно, в девятом часу. – Она кивнула головой знакомой модистке, почтительно присевшей ей, и села на кресло подле зеркала, живописно раскинув складки своего бархатного платья. Она не переставала добродушно и весело болтать, беспрестанно восхищаясь красотой Наташи. Она рассмотрела ее платья и похвалила их, похвалилась и своим новым платьем en gaz metallique, [из газа цвета металла,] которое она получила из Парижа и советовала Наташе сделать такое же.

Планировщик (язык программирования) — Planner (programming language)

Planner (часто обозначаемый в публикациях как «PLANNER», хотя это не акроним) — это язык программирования, разработанный Карлом Хьюиттом из Массачусетского технологического института и впервые опубликованный в 1969 году. Сначала были реализованы такие подмножества, как Micro-Planner и Pico-Planner, и затем, по сути, весь язык был реализован как Popler Джулианом Дэвисом из Эдинбургского университета на языке программирования POP-2 . Такие производные, как QA4, Conniver, QLISP и Ether (см. Метафору научного сообщества ), были важными инструментами в исследованиях искусственного интеллекта в 1970-х годах, которые повлияли на коммерческие разработки, такие как среда разработки знаний (KEE) и инструмент автоматизированного мышления (ART).

Процедурный подход против логического подхода

Две основные парадигмы построения семантических программных систем были процедурной и логической. Процедурная парадигма была воплощена в
Лиспе [McCarthy et al. 1962], в котором использовались рекурсивные процедуры, работающие со списковыми структурами.

Логическая парадигма была воплощена в средствах доказательства теорем разрешения процедур унифицированного доказательства [Robinson 1965]. Согласно логической парадигме, использование процедурных знаний было «обманом» [Green 1969].

Процедурное вложение знаний

Планировщик был изобретен для процедурного встраивания знаний [Hewitt, 1971] и являлся отказом от парадигмы процедуры единого доказательства разрешения [Robinson 1965], которая

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

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

  1. Прямая цепочка (ранее):
  • Если утверждать P, утверждать Q
    Если assert not Q, assert not P
  1. Обратная цепочка (как следствие)
  • Если цель Q, цель P
    Если гол не P, гол не Q

В этом отношении на развитие Planner повлияли естественные дедуктивные логические системы (особенно система Фредерика Фитча [1952]).

Внедрение микропланировщика

Подмножество под названием Micro-Planner было реализовано Джерри Сассманом , Юджином Чарняком и Терри Виноградом [Сассман, Чарняк и Виноград, 1971] и использовалось в программе Винограда по пониманию естественного языка SHRDLU , работе Юджина Чарняка по пониманию историй, работе Торна Маккарти по юридическому обоснованию , и некоторые другие проекты. Это вызвало большой ажиотаж в области ИИ. Он также вызвал споры, поскольку предлагал альтернативу логическому подходу, который был одной из основных парадигм ИИ.

В SRI International Джефф Рулифсон, Ян Дерксен и Ричард Уолдингер разработали QA4, построенный на конструкциях в Planner, и представили механизм контекста для обеспечения модульности выражений в базе данных. Эрл Сакердоти и Рене Ребо разработали QLISP, расширение QA4, встроенное в INTERLISP , обеспечивающее рассуждения, подобные Planner, встроенные в процедурный язык и разработанные в его богатой среде программирования. QLISP использовался Ричардом Уолдингером и Карлом Левиттом для проверки программ, Эрлом Сакердоти для планирования и мониторинга выполнения, Жан-Клодом Латомбом для автоматизированного проектирования, Ричардом Файксом для дедуктивного поиска и Стивеном Коулсом для ранней экспертной системы, которая управляемое использование эконометрической модели.

Компьютеры были дорогими. У них был только один медленный процессор, и их память была очень маленькой по сравнению с сегодняшней. Поэтому Planner принял некоторые меры по повышению эффективности, в том числе следующие:

  • Отслеживание с возвратом [Golomb and Baumert 1965] было принято, чтобы сэкономить на использовании времени и хранилища, работая и сохраняя только одну возможность за раз при изучении альтернатив.
  • Предположение об уникальном имени было принято для экономии места и времени, предполагая, что разные имена относятся к разным объектам. Например, предполагалось, что такие имена, как Пекин (предыдущее название столицы КНР) и Пекин (текущая транслитерация столицы КНР), обозначают разные объекты.
  • Замкнутый мир предположение может быть реализовано условно тестирования ли исчерпывающе удалась попытка доказать цель. Позже этой возможности было дано вводящее в заблуждение название « отрицание как неудача », потому что для цели G можно было сказать: «если попытка достичь G полностью терпит неудачу, тогда утверждать (не G) ».

Происхождение Пролога

Джерри Сассман , Юджин Чарняк , Сеймур Паперт и Терри Виноград посетили Эдинбургский университет в 1971 году, распространяя новости о Micro-Planner и SHRDLU и ставя под сомнение подход к процедуре подтверждения единого разрешения, который был опорой Edinburgh Logicists. В Эдинбургском университете Брюс Андерсон реализовал подмножество Micro-Planner под названием PICO-PLANNER (Андерсон, 1972), а Джулиан Дэвис (1973) реализовал практически весь Planner.

По словам Дональда Маккензи, Пэт Хейс вспомнил влияние визита Паперта в Эдинбург, который , по словам коллеги Паперта из Массачусетского технологического института, Карла Хьюитта, стал «сердцем логики искусственного интеллекта ». Паперт красноречиво выразил свою критику подхода к разрешению проблем, преобладающего в Эдинбурге, «… и, по крайней мере, один человек поднял палки и ушел из-за Паперта». [Маккензи, 2001, стр. 82].

Вышеупомянутые события вызвали напряженность среди логиков в Эдинбурге. Эта напряженность обострилась, когда Совет научных исследований Великобритании поручил сэру Джеймсу Лайтхиллу написать отчет о ситуации с исследованиями ИИ в Великобритании. Итоговый отчет [ Лайтхилл 1973; McCarthy 1973] был весьма критичен, хотя SHRDLU был упомянут положительно.

Пэт Хейс посетил Стэнфорд, где узнал о Planner. Вернувшись в Эдинбург, он попытался убедить своего друга Боба Ковальски принять во внимание Planner в их совместной работе по автоматическому доказательству теорем. «Резолюция теорема-доказательство было понижено с горячей темы для пережитка прошлых дезинформированного. Боб Ковальски упорно придерживался своей веры в потенциале теоремы разрешения прувинга. Он тщательно изучил Planner.» согласно Bruynooghe, Pereira, Siekmann, and van Emden [2004]. Ковальский [1988] заявляет: «Я могу вспомнить, как пытался убедить Хьюитта, что Planner похож на SL-разрешение» . Но Planner был изобретен для целей процедурного встраивания Это был отказ от парадигмы процедуры доказательства единого разрешения. Колмерауэр и Руссель вспоминали свою реакцию на изучение Planner следующим образом:

«На съезде IJCAI в сентябре 1971 года с Жаном Трюделем мы снова встретились с Робертом Ковальски и услышали лекцию Терри Винограда об обработке естественного языка. Тот факт, что он не использовал унифицированный формализм, оставил нас в недоумении. Это было в то время что мы узнали о существовании языка программирования Карла Хьюитта, Planner [Hewitt, 1969]. Отсутствие формализации этого языка, наше незнание Лиспа и, прежде всего, тот факт, что мы были абсолютно преданы логике, означало, что эта работа имела мало повлияло на наши последующие исследования «. [ Colmerauer and Roussel 1996]

Осенью 1972 года Филипп Руссель реализовал язык под названием Prolog (сокращение от PRO grammation en LOG ique — французское «программирование в логике»). Программы Prolog обычно имеют следующую форму (которая является частным случаем обратной цепочки в Planner):

Когда цель Q, цель P 1 ии цель P n

Prolog продублировал следующие аспекты Micro-Planner:

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

Prolog также продублировал следующие возможности Micro-Planner, которые были прагматично полезны для компьютеров той эпохи, потому что они экономили пространство и время:

  • Структура управления возвратом
  • Допущение уникального имени, согласно которому предполагается, что разные имена относятся к разным объектам, например , Пекин и Пекин считаются разными.
  • Рефикация неудачи. Способ, которым Planner установил доказуемость чего-либо, заключался в том, чтобы успешно попытаться выполнить это как цель, а способ, которым он установил, что что-то недоказуемо, заключался в попытке сделать это как цель и явно потерпеть неудачу. Конечно, другая возможность заключается в том, что попытка доказать цель будет бесконечной и никогда не вернет никакого значения. В Planner также была конструкция (не выражение), которая выполнялась, если выражение не удавалось, что привело к появлению в Planner терминологии « отрицание как сбой ».

Использование допущения и отрицания уникального имени в качестве ошибки стало более сомнительным, когда внимание обратилось на открытые системы [Hewitt and de Jong 1983, Hewitt 1985, Hewitt and Inman 1991].

Следующие возможности Micro-Planner были исключены из Prolog:

  • Вызов процедурных планов из утверждений по шаблону ( т . Е. Прямая цепочка )
  • Логическое отрицание, например , (нет (человек Сократ)) .

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

не Q.
В: — П.

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

Работа над Prolog была ценна тем, что была намного проще, чем Planner. Однако по мере того, как возникла потребность в большей выразительной силе языка, Prolog начал включать многие возможности Planner, которые были исключены из исходной версии Prolog.

Смотрите также

Ссылки

Библиография

внешние ссылки

planner — это… Что такое planner?

  • Planner — Basisdaten …   Deutsch Wikipedia

  • Planner — can refer to: * Planner programming language *Planner (PIM for Emacs) *Urban planner * Route planner * Meeting and convention planner …   Wikipedia

  • planner — UK US /ˈplænər/ noun [C] ► FINANCE someone whose job is to make decisions relating to the future of an activity or industry: »a financial/project/strategic planner ► PROPERTY, TRANSPORT someone whose job is to plan where buildings, roads, etc.… …   Financial and business terms

  • Planner — Plan ner, n. One who plans; a projector. [1913 Webster] …   The Collaborative International Dictionary of English

  • planner — index accessory, accomplice, architect, catalyst, coactor, conspirer, contractor, developer, promoter …   Law dictionary

  • planner — (n.) book or device that enables one to plan, 1971, agent noun from PLAN (Cf. plan) (v.) …   Etymology dictionary

  • planner — [plan′ər] n. 1. a person who plans 2. a thing that aids in planning, specif. a small calendar, typically in the form of a booklet, with space at each date for listing appointments and activities …   English World dictionary

  • Planner — У этого термина существуют и другие значения, см. Planner (значения). Planner (иногда записывается большими буквами как PLANNER, в советской литературе также использовалось транслитерированное Плэнер)  функционально логический язык… …   Википедия

  • planner */ — UK [ˈplænə(r)] / US [ˈplænər] noun [countable] Word forms planner : singular planner plural planners 1) someone whose job is to plan the way that towns, cities, and other areas will grow and develop He trained as an architect and town planner. 2) …   English dictionary

  • planner — plan|ner [ plænər ] noun count * 1. ) someone who plans something: Military planners face difficult choices. 2. ) someone whose job is to plan the way that towns, cities, and other areas will grow and develop: He trained as an architect and town… …   Usage of the words and phrases in modern English

  • planner — noun Planner is used after these nouns: ↑defence, ↑meeting, ↑traffic, ↑transport, ↑wedding …   Collocations dictionary

  • planner — с английского на русский

  • Planner — Basisdaten …   Deutsch Wikipedia

  • Planner — can refer to: * Planner programming language *Planner (PIM for Emacs) *Urban planner * Route planner * Meeting and convention planner …   Wikipedia

  • planner — UK US /ˈplænər/ noun [C] ► FINANCE someone whose job is to make decisions relating to the future of an activity or industry: »a financial/project/strategic planner ► PROPERTY, TRANSPORT someone whose job is to plan where buildings, roads, etc.… …   Financial and business terms

  • Planner — Plan ner, n. One who plans; a projector. [1913 Webster] …   The Collaborative International Dictionary of English

  • planner — index accessory, accomplice, architect, catalyst, coactor, conspirer, contractor, developer, promoter …   Law dictionary

  • planner — (n.) book or device that enables one to plan, 1971, agent noun from PLAN (Cf. plan) (v.) …   Etymology dictionary

  • planner — [plan′ər] n. 1. a person who plans 2. a thing that aids in planning, specif. a small calendar, typically in the form of a booklet, with space at each date for listing appointments and activities …   English World dictionary

  • Planner — У этого термина существуют и другие значения, см. Planner (значения). Planner (иногда записывается большими буквами как PLANNER, в советской литературе также использовалось транслитерированное Плэнер)  функционально логический язык… …   Википедия

  • planner */ — UK [ˈplænə(r)] / US [ˈplænər] noun [countable] Word forms planner : singular planner plural planners 1) someone whose job is to plan the way that towns, cities, and other areas will grow and develop He trained as an architect and town planner. 2) …   English dictionary

  • planner — plan|ner [ plænər ] noun count * 1. ) someone who plans something: Military planners face difficult choices. 2. ) someone whose job is to plan the way that towns, cities, and other areas will grow and develop: He trained as an architect and town… …   Usage of the words and phrases in modern English

  • planner — noun Planner is used after these nouns: ↑defence, ↑meeting, ↑traffic, ↑transport, ↑wedding …   Collocations dictionary

  • co-planner — со всех языков на русский

  • Planner (programming language) — Planner (often seen in publications as PLANNER although it is not an acronym) is a programming language designed by Carl Hewitt at MIT, and first published in 1969. First, subsets such as Micro Planner and Pico Planner were implemented, and then… …   Wikipedia

  • Planner — Basisdaten …   Deutsch Wikipedia

  • Planner — can refer to: * Planner programming language *Planner (PIM for Emacs) *Urban planner * Route planner * Meeting and convention planner …   Wikipedia

  • planner — UK US /ˈplænər/ noun [C] ► FINANCE someone whose job is to make decisions relating to the future of an activity or industry: »a financial/project/strategic planner ► PROPERTY, TRANSPORT someone whose job is to plan where buildings, roads, etc.… …   Financial and business terms

  • Planner (program) — Planner is a free personal information manager for Emacs written in Emacs Lisp. It helps keep track of schedules, daily notes, days to remember etc and takes advantage of the ease of keyboard shortcuts that Emacs provides for fast access to all… …   Wikipedia

  • Planner (значения) — Planner может означать: Planner (язык программирования)  функционально логический язык программирования, схожий по своему синтаксису с Лиспом …   Википедия

  • Planner — Plan ner, n. One who plans; a projector. [1913 Webster] …   The Collaborative International Dictionary of English

  • planner — index accessory, accomplice, architect, catalyst, coactor, conspirer, contractor, developer, promoter …   Law dictionary

  • planner — (n.) book or device that enables one to plan, 1971, agent noun from PLAN (Cf. plan) (v.) …   Etymology dictionary

  • planner — [plan′ər] n. 1. a person who plans 2. a thing that aids in planning, specif. a small calendar, typically in the form of a booklet, with space at each date for listing appointments and activities …   English World dictionary

  • Planner — У этого термина существуют и другие значения, см. Planner (значения). Planner (иногда записывается большими буквами как PLANNER, в советской литературе также использовалось транслитерированное Плэнер)  функционально логический язык… …   Википедия

  • Planner (язык программирования) — Infogalactic: ядро ​​планетарных знаний

    Planner (часто обозначаемый в публикациях как «PLANNER», хотя это не аббревиатура) — это язык программирования, разработанный Карлом Хьюиттом в Массачусетском технологическом институте и впервые опубликованный в 1969 году. Сначала были реализованы такие подмножества, как Micro-Planner и Pico-Planner, а затем, по сути, весь язык был реализован как Popler Джулианом Дэвисом из Эдинбургского университета на языке программирования POP-2. [1] Производные, такие как QA4, Conniver, QLISP и Ether (см. Метафору научного сообщества), были важными инструментами в исследованиях искусственного интеллекта в 1970-х годах, которые повлияли на коммерческие разработки, такие как KEE и ART.

    Процедурный подход против логического

    Две основные парадигмы построения семантических программных систем были процедурной и логической. Процедурная парадигма была воплощена в Лиспе [McCarthy et al. 1962], в котором использовались рекурсивные процедуры, работающие со структурами списков.

    Логическая парадигма была воплощена в средствах доказательства теорем с разрешением процедуры унифицированного доказательства [Robinson 1965]. Согласно логической парадигме, использование процедурных знаний было «обманом» [Green 1969].

    Процедурное внедрение знаний

    Planner был изобретен для целей процедурного встраивания знаний [Hewitt 1971] и являлся отказом от парадигмы процедуры единого доказательства разрешения [Robinson 1965], которая

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

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

    1. Прямая цепочка (ранее):
    • Если утверждать P, утверждать Q
      Если утверждать не Q, утверждать не P
    1. Обратная цепочка (как следствие)
    • Если цель Q, цель P
      Если гол не P, гол не Q

    В этом отношении на разработку Planner повлияли естественные дедуктивные логические системы (особенно система Фредерика Фитча [1952]).

    Внедрение микропланировщика

    Подмножество под названием Micro-Planner было реализовано Джерри Сассманом, Юджином Чарняком и Терри Виноградом [Сассман, Чарняк и Виноград, 1971] и использовалось в программе Винограда по пониманию естественного языка SHRDLU, работе Юджина Чарняка по пониманию историй, работе Торна Маккарти по юридическим вопросам. рассуждение и некоторые другие проекты. Это вызвало большой ажиотаж в области ИИ. Он также вызвал споры, поскольку предлагал альтернативу логическому подходу, который был одной из основных парадигм ИИ.

    В SRI International Джефф Рулифсон, Ян Дерксен и Ричард Уолдингер разработали QA4, основанный на конструкциях в Planner, и представили механизм контекста для обеспечения модульности выражений в базе данных. Эрл Сакердоти и Рене Ребо разработали QLISP, расширение QA4, встроенное в INTERLISP, обеспечивающее рассуждения, подобные Planner, встроенные в процедурный язык и разработанные в его богатой среде программирования. QLISP использовался Ричардом Уолдингером и Карлом Левиттом для проверки программ, Эрлом Сакердоти для планирования и мониторинга выполнения, Жан-Клодом Латомбом для автоматизированного проектирования, Ричардом Файксом для дедуктивного поиска и Стивеном Коулсом для ранней экспертной системы, которая управляемое использование эконометрической модели.

    Компьютеры были дорогими. У них был только один медленный процессор, и их память была очень маленькой по сравнению с сегодняшней. Поэтому Planner принял некоторые меры по повышению эффективности, в том числе следующие:

    • Отслеживание с возвратом [Golomb and Baumert 1965] было принято, чтобы сэкономить время и память, работая и сохраняя только одну возможность за раз при исследовании альтернатив.
    • Для экономии места и времени было принято предположение об уникальном имени, поскольку разные имена относятся к разным объектам.Например, предполагалось, что такие имена, как Пекин и Пекин, относятся к разным объектам.
    • Предположение о замкнутом мире может быть реализовано путем условной проверки того, полностью ли провалилась попытка доказать цель. Позже этой возможности было дано вводящее в заблуждение название «отрицание как неудача», потому что для цели G можно было сказать: «если попытка достичь G полностью терпит неудачу, тогда утверждать (не G)».

    Происхождение Prolog

    Джерри Сассман, Юджин Чарняк, Сеймур Пейперт и Терри Виноград посетили Эдинбургский университет в 1971 году, распространяя новости о Micro-Planner и SHRDLU и ставя под сомнение подход к процедуре доказательства с единообразным разрешением, который был опорой Edinburgh Logicists.В Эдинбургском университете Брюс Андерсон реализовал подмножество Micro-Planner под названием PICO-PLANNER (Андерсон, 1972), а Джулиан Дэвис (1973) реализовал практически весь Planner.

    По словам Дональда Маккензи, Пэт Хейс вспомнил о влиянии визита Паперта в Эдинбург, который, по словам коллеги Паперта из Массачусетского технологического института Карла Хьюитта, стал «сердцем логики искусственного интеллекта». Паперт красноречиво выразил свою критику подхода к разрешению проблем, преобладающего в Эдинбурге «…и по крайней мере один человек поднял палки и ушел из-за Паперта ». [MacKenzie 2001 pg 82.]

    Вышеупомянутые события вызвали напряженность среди логиков в Эдинбурге. Эти противоречия обострились, когда Совет по научным исследованиям Великобритании поручил сэру Джеймсу Лайтхиллу написать отчет о ситуации с исследованиями ИИ в Великобритании. Итоговый отчет [Lighthill 1973; McCarthy 1973] был весьма критичен, хотя SHRDLU был упомянут положительно.

    Пэт Хейс посетил Стэнфорд, где узнал о Planner.Вернувшись в Эдинбург, он попытался убедить своего друга Боба Ковальски принять во внимание Planner в их совместной работе по автоматическому доказательству теорем. «Резолюция теорема-доказательство было понижено с горячей темы для пережитка прошлых дезинформированного. Боб Ковальски упорно придерживался своей веры в потенциале теоремы разрешения прувинга. Он тщательно изучил Planner.» согласно Bruynooghe, Pereira, Siekmann, and van Emden [2004]. Ковальский [1988] утверждает: «Я могу вспомнить, как пытался убедить Хьюитта, что Planner похож на SL-разрешение.«Но Planner был изобретен с целью процедурного встраивания знаний и был отказом от парадигмы процедуры единого доказательства разрешения. Колмерауэр и Руссель вспоминали свою реакцию на изучение Planner следующим образом:

    «На съезде IJCAI в сентябре 1971 года с Жаном Трюделем мы снова встретились с Робертом Ковальски и услышали лекцию Терри Винограда об обработке естественного языка. Тот факт, что он не использовал унифицированный формализм, оставил нас в недоумении.Именно в это время мы узнали о существовании языка программирования Карла Хьюитта, Planner [Hewitt, 1969]. Отсутствие формализации этого языка, наше незнание Лиспа и, прежде всего, тот факт, что мы были абсолютно преданы логике, означало, что эта работа мало повлияла на наши последующие исследования «. [Colmerauer and Roussel 1996]

    Осенью 1972 года Филипп Руссель реализовал язык под названием Prolog (сокращение от грамматики PRO и LOG ique — французский язык для «программирования в логике»).Программы на Прологе обычно имеют следующую форму (которая является частным случаем обратной цепочки в Planner):

    Когда цель Q, цель P 1 и и цель P n

    Prolog дублирует следующие аспекты Micro-Planner:

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

    Prolog также дублировал следующие возможности Micro-Planner, которые были прагматично полезны для компьютеров той эпохи, потому что они экономили пространство и время:

    • Структура управления возвратом
    • Допущение уникального имени, согласно которому разные имена относятся к разным объектам, e.г. , Пекин и Пекин считаются разными.
    • Рефикация неудачи. Способ, которым Planner установил доказуемость чего-либо, заключался в том, чтобы успешно попытаться выполнить это как цель, а способ, которым он установил, что что-то недоказуемо, заключался в попытке выполнить это как цель и явно потерпеть неудачу. Конечно, другая возможность заключается в том, что попытка доказать цель будет бесконечной и никогда не вернет никакого значения. В Planner также была конструкция (не выражение), которая выполнялась, если выражение не удавалось, что привело к появлению в Planner терминологии «отрицание как сбой».

    Использование допущения и отрицания уникального имени в качестве ошибки стало более сомнительным, когда внимание обратилось на открытые системы [Hewitt and de Jong 1983, Hewitt 1985, Hewitt and Inman 1991].

    Следующие возможности Micro-Planner были исключены из Prolog:

    • Вызов процедурных планов по шаблону из утверждений (, т.е. ., Прямая цепочка)
    • Логическое отрицание, например. , (не (человеческий Сократ)).

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

    не Q.
    Q: — С.

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

    Работа над Prolog была ценна тем, что была намного проще, чем Planner. Однако по мере того, как возникла потребность в большей выразительной силе языка, Prolog начал включать многие возможности Planner, которые были исключены из исходной версии Prolog.

    См. Также

    Список литературы

    Банкноты
    • Фредерик Фитч. Символическая логика: введение Рональд Пресс, Нью-Йорк, 1952 г.
    • Джон Маккарти, Пол Абрахамс, Дэниел Эдвардс, Тимоти Харт и Майкл Левин.Руководство программиста Lisp 1.5 Вычислительный центр Массачусетского технологического института и Исследовательская лаборатория электроники. 1962.
    • Джон Алан Робинсон, Машинно-ориентированная логика, основанная на принципе разрешения. CACM. 1965.
    • Корделл Грин. Применение доказательства теорем к решению задач IJCAI 1969.
    • Карл Хьюитт (1969). «ПЛАНИРОВЩИК: язык для доказательства теорем в роботах». IJCAI . CiteSeerX: 10.1.1.80.756.
    • Джерри Сассман и Терри Виноград. Справочное руководство по микропланированию AI Memo No. 203, MIT Project MAC, июль 1970 г.
    • Терри Виноград. Процедуры как представление данных в компьютерной программе для понимания естественного языка MIT AI TR-235. Январь 1971 г.
    • Карл Хьюитт. Процедурное внедрение знаний в планировщик IJCAI 1971.
    • Джерри Сассман, Терри Виноград и Юджин Чарняк. Справочное руководство Micro-Planner (обновление) AI Memo 203A, MIT AI Lab, декабрь 1971 г.
    • Карл Хьюитт. Описание и теоретический анализ (с использованием схем) планировщика, языка для доказательства теорем и манипулирования моделями в ИИ-роботе. Записка № 251, MIT Project MAC, апрель 1972 г.
    • Брюс Андерсон. Документация для школы искусственного интеллекта LIB PICO-PLANNER, Эдинбургский университет. 1972
    • Брюс Баумгарт. Альтернативное справочное руководство Micro-Planner Операционная записка Стэнфордской лаборатории искусственного интеллекта № 67, апрель 1972 г.
    • Евгений Чарняк. К модели понимания детских историй MIT AI TR-266.Декабрь 1972 г.,
    • Джулиан Дэвис. Справочное руководство Popler 1.6 Эдинбургский университет, Отчет ТПУ № 1, май 1973 г.
    • Джефф Рулифсон, Ян Дерксен и Ричард Уолдингер. QA4, Процедурное исчисление для интуитивного мышления SRI AI Center Technical Note 73, ноябрь 1973 г.
    • Скотт Фальман. Система планирования для задач создания роботов MIT AI TR-283. Июнь 1973
    • Джеймс Лайтхилл. Искусственный интеллект: общий обзор Искусственный интеллект: симпозиум.Совет научных исследований Великобритании. 1973.
    • Джон Маккарти. Обзор «Искусственный интеллект: общий обзор Искусственный интеллект: симпозиум». Совет научных исследований Великобритании. 1973.
    • Роберт Ковальски Логика предикатов как язык программирования Памятка 70, факультет искусственного интеллекта, Эдинбургский университет. 1973
    • Пэт Хейс. Вычислительные и дедуктивные математические основы компьютерных наук: материалы симпозиума и летней школы, Штрбске Плесо, Высокие Татры, Чехословакия, 3–8 сентября 1973 г.
    • Карл Хьюитт, Питер Бишоп и Ричард Штайгер. Универсальный модульный актерский формализм для искусственного интеллекта IJCAI 1973 г.
    • Л. Торн Маккарти. Размышления о TAXMAN: эксперимент по искусственному интеллекту и правовому обоснованию Harvard Law Review. Vol. 90, No. 5, March 1977
    • Дрю Макдермотт и Джерри Сассман. Справочное руководство Conniver MIT AI Memo 259A. Январь 1974 г.
    • Эрл Сасердоти и др., QLISP Язык для интерактивной разработки сложных систем AFIPS.1976
    • Уильям Корнфельд и Карл Хьюитт. Метафора научного сообщества MIT AI Memo 641. Январь 1981 г.
    • Билл Корнфельд и Карл Хьюитт. Метафора научного сообщества Транзакции IEEE о системах, человеке и кибернетике. Январь 1981 г.
    • Билл Корнфельд. Использование параллелизма для реализации эвристического поиска IJCAI 1981.
    • Билл Корнфельд. Параллелизм в решении проблем, докторская диссертация MIT EECS. Август 1981.
    • Билл Корнфельд.Комбинаторно имплозивные алгоритмы CACM. 1982
    • Карл Хьюитт. Вызов открытых систем Byte Magazine. Апрель 1985
    • Роберт Ковальский. Ограничения логики Труды четырнадцатой ежегодной конференции ACM 1986 года по информатике.
    • Роберт Ковальский. Первые годы логического программирования CACM, январь 1988 г.
    • Карл Хьюитт и Джефф Инман. DAI Betwixt и между ними: от «интеллектуальных агентов» до открытых систем. Транзакции IEEE о системах, человеке и кибернетике.Ноябрь / Дек. 1991.
    • Карл Хьюитт и Гуль Ага. Языки с предложениями Guarded Horn: являются ли они дедуктивными и логичными? Международная конференция по компьютерным системам пятого поколения, Омша, 1988 г., Токио. Также в Искусственный интеллект в MIT , Vol. 2. MIT Press 1991.
    • Карл Хьюитт. Неоднократный упадок логического программирования и причины его возрождения. Что пошло не так и почему: уроки исследований и приложений ИИ. Технический отчет SS-06-08.AAAI Press. Март 2006.
    • Ричард Уолдингер и Карл Левитт. Рассуждения о программах искусственного интеллекта. 1974.
    • Граф Сакердоти. Структура планов и поведения Эльзевир Северная Голландия. 1977.
    • Жан-Клод Латомб. Искусственный интеллект в автоматизированном проектировании в CAD-системах , Северная Голландия. 1976.
    • Ричард Файкс. Механизмы дедуктивного поиска для моделей описания состояний IJCAI 1975
    • Стивен Коулз. Применение искусственного интеллекта для эвристического моделирования 2-я компьютерная конференция США и Японии. 1975.

    Внешние ссылки

    .

    язык программирования планировщика Wikipedia

    Planner (часто обозначаемый в публикациях как «ПЛАНИРОВЩИК», хотя это не акроним) — это язык программирования, разработанный Карлом Хьюиттом из Массачусетского технологического института и впервые опубликованный в 1969 году. Были реализованы Planner и Pico-Planner, а затем, по сути, весь язык был реализован как Popler Джулианом Дэвисом из Эдинбургского университета на языке программирования POP-2. [1] Производные, такие как QA4, Conniver, QLISP и Ether (см. Метафору научного сообщества), были важными инструментами в исследованиях искусственного интеллекта в 1970-х годах, которые повлияли на коммерческие разработки, такие как Knowledge Engineering Environment (KEE) и Automated Reasoning Tool (ART ).

    Процедурный подход против логического []

    Две основные парадигмы построения семантических программных систем были процедурной и логической. Процедурная парадигма была воплощена
    Лисп [McCarthy et al. 1962], в котором использовались рекурсивные процедуры, работающие со структурами списков.

    Логическая парадигма была воплощена в средствах доказательства теорем с единообразной процедурой доказательства [Robinson 1965]. Согласно логической парадигме, использование процедурных знаний было «обманом» [Green 1969].

    Процедурное внедрение знаний []

    Planner был изобретен для целей процедурного встраивания знаний [Hewitt 1971] и являлся отказом от парадигмы процедуры единого доказательства разрешения [Robinson 1965], которая

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

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

    1. Прямая цепочка (ранее):
    • Если assert P, assert Q
      Если утверждать не Q, утверждать не P
    1. Обратная цепочка (следовательно)
    • Если цель Q, цель P
      Если цель не P, цель не Q

    В этом отношении на развитие Planner повлияли естественные дедуктивные логические системы (особенно система Фредерика Фитча [1952]).

    Внедрение микропланировщика []

    Подмножество под названием Micro-Planner было реализовано Джерри Сассманом, Юджином Чарняком и Терри Виноградом [Сассман, Чарняк и Виноград, 1971] и использовалось в программе Винограда по пониманию естественного языка SHRDLU, работе Юджина Чарняка по пониманию историй, работе Торна Маккарти по юридическим вопросам. рассуждение и некоторые другие проекты. Это вызвало большой ажиотаж в области ИИ. Он также вызвал споры, поскольку предлагал альтернативу логическому подходу, который был одной из основных парадигм ИИ.

    В SRI International Джефф Рулифсон, Ян Дерксен и Ричард Уолдингер разработали QA4, основанный на конструкциях в Planner, и представили механизм контекста для обеспечения модульности выражений в базе данных. Эрл Сакердоти и Рене Ребо разработали QLISP, расширение QA4, встроенное в INTERLISP, обеспечивающее рассуждения, подобные Planner, встроенные в процедурный язык и разработанные в его богатой среде программирования. QLISP использовался Ричардом Уолдингером и Карлом Левиттом для проверки программ, Эрлом Сакердоти для планирования и мониторинга выполнения, Жан-Клодом Латомбом для автоматизированного проектирования, Ричардом Файксом для дедуктивного поиска и Стивеном Коулсом для ранней экспертной системы, которая управляемое использование эконометрической модели.

    Компьютеры были дорогими. У них был только один медленный процессор, и их память была очень маленькой по сравнению с сегодняшней. Поэтому Planner использовал некоторые приемы повышения эффективности, в том числе следующие:

    • Отслеживание с возвратом [Golomb and Baumert 1965] было принято, чтобы сэкономить время и память, работая и сохраняя только одну возможность за раз при исследовании альтернатив.
    • Для экономии места и времени было принято предположение об уникальном имени, поскольку разные имена относятся к разным объектам.Например, предполагалось, что такие имена, как Пекин (предыдущее название столицы КНР) и Пекин (текущая транслитерация столицы КНР), относятся к разным объектам.
    • Предположение о замкнутом мире может быть реализовано путем условной проверки того, полностью ли провалилась попытка доказать цель. Позже этой возможности было дано вводящее в заблуждение название «отрицание как неудача», потому что для цели G можно было сказать: «если попытка достичь G полностью терпит неудачу, тогда утверждать (не G)».

    Происхождение Prolog []

    Джерри Сассман, Юджин Чарняк, Сеймур Пейперт и Терри Виноград посетили Эдинбургский университет в 1971 году, распространяя новости о Micro-Planner и SHRDLU и ставя под сомнение подход к процедуре доказательства с единообразным разрешением, который был опорой Edinburgh Logicists.В Эдинбургском университете Брюс Андерсон реализовал подмножество Micro-Planner под названием PICO-PLANNER (Андерсон, 1972), а Джулиан Дэвис (1973) реализовал практически весь Planner.

    По словам Дональда Маккензи, Пэт Хейс вспомнил влияние визита Паперта в Эдинбург, который, по словам коллеги Паперта из Массачусетского технологического института Карла Хьюитта, стал «сердцем логической страны искусственного интеллекта». Паперт красноречиво выразил свою критику подхода к разрешению проблем, преобладающего в Эдинбурге, «… и, по крайней мере, один человек поднял палку и ушел из-за Паперта.»[MacKenzie 2001 p 82.]

    Вышеупомянутые события вызвали напряженность среди логиков в Эдинбурге. Эти противоречия обострились, когда Совет по научным исследованиям Великобритании поручил сэру Джеймсу Лайтхиллу написать отчет о ситуации с исследованиями ИИ в Великобритании. Итоговый отчет [Lighthill 1973; McCarthy 1973] был весьма критичен, хотя SHRDLU был упомянут положительно.

    Пэт Хейс посетил Стэнфорд, где узнал о Planner. Вернувшись в Эдинбург, он попытался убедить своего друга Боба Ковальски принять во внимание Planner в их совместной работе по автоматическому доказательству теорем.«Резолюция теорема-доказательство было понижено с горячей темы для пережитка прошлых дезинформированного. Боб Ковальски упорно придерживался своей веры в потенциале теоремы разрешения прувинга. Он тщательно изучил Planner.» согласно Bruynooghe, Pereira, Siekmann, and van Emden [2004]. Ковальский [1988] заявляет: «Я могу вспомнить, как пытался убедить Хьюитта, что Planner был похож на SL-разрешение». Но Planner был изобретен для целей процедурного встраивания знание и было отказом от парадигмы процедуры доказательства единой резолюции.Колмерауэр и Руссель вспоминали свою реакцию на изучение Planner следующим образом:

    «На конференции IJCAI в сентябре 1971 года с Джин Трудель мы снова встретились с Робертом Ковальски и услышали лекцию Терри Винограда об обработке естественного языка. Тот факт, что он не использовал унифицированный формализм, оставил нас в недоумении. на этот раз мы узнали о существовании языка программирования Карла Хьюитта, Planner [Hewitt, 1969]. Отсутствие формализации этого языка, наше незнание Лиспа и, прежде всего, тот факт, что мы были абсолютно преданы логике, означало, что это работа мало повлияла на наши последующие исследования.»[Colmerauer and Roussel 1996]

    Осенью 1972 года Филипп Руссель реализовал язык под названием Prolog (сокращение от грамматики PRO и LOG ique — французский язык для «программирования в логике»). Программы Prolog обычно имеют следующую форму (которая является частным случаем обратной цепочки в Planner):

    Когда цель Q, цель P 1 и и цель P n

    Prolog продублировал следующие аспекты Micro-Planner:

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

    Prolog также дублировал следующие возможности Micro-Planner, которые были прагматично полезны для компьютеров той эпохи, потому что они экономили пространство и время:

    • Структура управления возвратом
    • Допущение уникального имени, согласно которому разные имена относятся к разным объектам, e.г. , Пекин и Пекин считаются разными.
    • Рефикация неудачи. Способ, которым Planner установил доказуемость чего-либо, заключался в том, чтобы успешно попытаться выполнить это как цель, а способ, которым он установил, что что-то недоказуемо, заключался в попытке выполнить это как цель и явно потерпеть неудачу. Конечно, другая возможность заключается в том, что попытка доказать цель будет бесконечной и никогда не вернет никакого значения. В Planner также была конструкция (не выражение), которая выполнялась, если выражение не удавалось, что привело к появлению в Planner терминологии «отрицание как сбой».

    Использование допущения и отрицания уникального имени в качестве отказа стало более сомнительным, когда внимание обратилось на открытые системы [Хьюитт и де Йонг 1983, Хьюитт 1985, Хьюитт и Инман 1991].

    Следующие возможности Micro-Planner были исключены из Prolog:

    • Вызов процедурных планов по шаблону из утверждений (, т.е. ., Прямая цепочка)
    • Логическое отрицание, например. , (не (человеческий Сократ)).

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

    не Q.
    Q: — P.

    Приведенная выше программа не сможет доказать , а не P, даже если она следует правилам математической логики. Это иллюстрация того факта, что Prolog (как и Planner) задуман как язык программирования и поэтому (сам по себе) не доказывает многие из логических следствий, которые вытекают из декларативного чтения его программ. Карл Хьюитт Средняя история логического программирования: разрешение, планировщик, пролог и японский проект пятого поколения ArXiv 2009. arXiv: 0904.3036

    Библиография []

    • Брюс Андерсон. Документация для школы искусственного интеллекта LIB PICO-PLANNER, Эдинбургский университет. 1972
    • Брюс Баумгарт. Альтернативное справочное руководство Micro-Planner Операционная записка Стэнфордской лаборатории искусственного интеллекта № 67, апрель 1972 г.
    • Коулз, Стивен (1975), «Применение искусственного интеллекта для эвристического моделирования», 2-я американско-японская компьютерная конференция .
    • Файкс, Ричард (1975), Механизмы дедуктивного поиска для моделей описания состояний , IJCAI .
    • Fitch, Frederic (1952), Symbolic Logic: an Introduction , New York: Ronald Press .
    • Грин, Корделл (1969), «Применение доказательства теорем к решению задач», IJCAI .
    • Хьюитт, Карл (1969). «ПЛАНИРОВЩИК: язык для доказательства теорем в роботах». IJCAI . CiteSeerX 10.1.1.80.756.
    • Хьюитт, Карл (1971), «Процедурное внедрение знаний в планировщик», IJCAI .
    • Карл Хьюитт. «Вызов открытых систем» Byte Magazine. Апрель 1985
    • Карл Хьюитт и Джефф Инман. «DAI Betwixt and Between: From» Intelligent Agents «to Open Systems Science» IEEE Transactions on Systems, Man, and Cybernetics. Ноябрь / декабрь 1991 г.
    • Карл Хьюитт и Гуль Ага. «Языки с оговорками Сторожевого Рога: являются ли они дедуктивными и логичными?» Международная конференция по компьютерным системам пятого поколения, Омша, 1988 г.Токио. Также в Искусственный интеллект в MIT , Vol. 2. MIT Press 1991.
    • Хьюитт, Карл (март 2006 г.), Неоднократная кончина логического программирования и причины его реинкарнации — что пошло не так и почему: уроки исследований искусственного интеллекта и приложений (PDF), технический отчет, AAAI Press, заархивировано из оригинал (PDF) от 10.12.2017 .
    • Уильям Корнфельд и Карл Хьюитт. Метафора научного сообщества MIT AI Memo 641. Январь 1981 г.
    • Билл Корнфельд и Карл Хьюитт.«Метафора научного сообщества» IEEE Transactions по системам, человеку и кибернетике. Январь 1981 г.
    • Билл Корнфельд. «Использование параллелизма для реализации эвристического поиска» IJCAI 1981.
    • Билл Корнфельд. «Параллелизм в решении проблем» Докторская диссертация MIT EECS. Август 1981.
    • Билл Корнфельд. «Комбинаторно имплозивные алгоритмы» CACM. 1982
    • Роберт Ковальский. «Ограничения логики» Труды четырнадцатой ежегодной конференции ACM 1986 года по информатике.
    • Роберт Ковальский. «Первые годы логического программирования» CACM, январь 1988 г.
    • Latombe, Жан-Клод (1976), «Искусственный интеллект в автоматизированном проектировании», CAD Systems , Северная Голландия .
    • Маккарти, Джон; Абрахамс, Павел; Эдвардс, Дэниел; Харт, Тимоти; Левин, Майкл (1962), Lisp 1.5 Programmer’s Manual , MIT Computing Center and Research Laboratory of Electronics .
    • Робинсон, Джон Алан (1965), «Машинно-ориентированная логика, основанная на принципе разрешения», Сообщения ACM , DOI: 10.1145 / 321250.321253 .
    • Джерри Сассман и Терри Виноград. Справочное руководство по микропланированию AI Memo No. 203, MIT Project MAC, июль 1970 г.
    • Терри Виноград. Процедуры как представление данных в компьютерной программе для понимания естественного языка MIT AI TR-235. Январь 1971 г.
    • Джерри Сассман, Терри Виноград и Юджин Чарняк. Справочное руководство Micro-Planner (обновление) AI Memo 203A, MIT AI Lab, декабрь 1971 г.
    • Карл Хьюитт. Описание и теоретический анализ (с использованием схем) Planner, языка для доказательства теорем и манипулирования моделями в роботизированном AI Memo No.251, MIT Project MAC, апрель 1972 г.
    • Евгений Чарняк. К модели понимания детских историй MIT AI TR-266. Декабрь 1972 г.,
    • Джулиан Дэвис. Справочное руководство Popler 1.6 Эдинбургский университет, Отчет ТПУ № 1, май 1973 г.
    • Джефф Рулифсон, Ян Дерксен и Ричард Уолдингер. «QA4, Процедурное исчисление для интуитивного мышления», Техническая записка 73 SRI AI Center, ноябрь 1973 г.
    • Скотт Фальман. «Система планирования для задач построения роботов» MIT AI TR-283.Июнь 1973
    • Джеймс Лайтхилл. «Искусственный интеллект: общий обзор Искусственный интеллект: бумажный симпозиум». Совет научных исследований Великобритании. 1973.
    • Джон Маккарти. «Обзор« Искусственный интеллект: общий обзор искусственного интеллекта: бумажный симпозиум ». Совет научных исследований Великобритании. 1973.
    • Роберт Ковальски «Логика предикатов как язык программирования», записка 70, факультет искусственного интеллекта, Эдинбургский университет. 1973
    • Пэт Хейс. Вычислительные и дедуктивные математические основы компьютерных наук: материалы симпозиума и летней школы, Штрбске Плесо, Высокие Татры, Чехословакия, 3–8 сентября 1973 г.
    • Карл Хьюитт, Питер Бишоп и Ричард Штайгер. «Универсальный модульный актерский формализм для искусственного интеллекта» IJCAI 1973 г.
    • Л. Торн Маккарти. «Размышления о TAXMAN: эксперимент по искусственному интеллекту и юридическому обоснованию» Harvard Law Review. Vol. 90, No. 5, March 1977
    • Дрю Макдермотт и Джерри Сассман. Справочное руководство Conniver MIT AI Memo 259A. Январь 1974 г.
    • Эрл Сакердоти и др. «QLISP — язык для интерактивной разработки сложных систем» AFIPS.1976
    • Сачердоти, Эрл (1977), Структура планов и поведения , Эльзевир Северная Голландия .
    • Уолдингер, Ричард; Левитт, Карл (1974), Рассуждения о программах искусственного интеллекта .

    Внешние ссылки []

    .

    planner (язык программирования) Wikipedia

    Planner (часто обозначаемый в публикациях как «PLANNER», хотя это не акроним) — это язык программирования, разработанный Карлом Хьюиттом из Массачусетского технологического института и впервые опубликованный в 1969 году. Во-первых, такие подмножества, как Были реализованы Micro-Planner и Pico-Planner, а затем, по сути, весь язык был реализован как Popler Джулианом Дэвисом из Эдинбургского университета на языке программирования POP-2. [1] Производные, такие как QA4, Conniver, QLISP и Ether (см. Метафору научного сообщества), были важными инструментами в исследованиях искусственного интеллекта в 1970-х годах, которые повлияли на коммерческие разработки, такие как Knowledge Engineering Environment (KEE) и Automated Reasoning Tool (ART ).

    Процедурный подход против логического []

    Две основные парадигмы построения семантических программных систем были процедурной и логической. Процедурная парадигма была воплощена
    Лисп [McCarthy et al. 1962], в котором использовались рекурсивные процедуры, работающие со структурами списков.

    Логическая парадигма была воплощена в средствах доказательства теорем с единообразной процедурой доказательства [Robinson 1965]. Согласно логической парадигме, использование процедурных знаний было «обманом» [Green 1969].

    Процедурное внедрение знаний []

    Planner был изобретен для целей процедурного встраивания знаний [Hewitt 1971] и являлся отказом от парадигмы процедуры единого доказательства разрешения [Robinson 1965], которая

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

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

    1. Прямая цепочка (ранее):
    • Если assert P, assert Q
      Если утверждать не Q, утверждать не P
    1. Обратная цепочка (следовательно)
    • Если цель Q, цель P
      Если цель не P, цель не Q

    В этом отношении на развитие Planner повлияли естественные дедуктивные логические системы (особенно система Фредерика Фитча [1952]).

    Внедрение микропланировщика []

    Подмножество под названием Micro-Planner было реализовано Джерри Сассманом, Юджином Чарняком и Терри Виноградом [Сассман, Чарняк и Виноград, 1971] и использовалось в программе Винограда по пониманию естественного языка SHRDLU, работе Юджина Чарняка по пониманию историй, работе Торна Маккарти по юридическим вопросам. рассуждение и некоторые другие проекты. Это вызвало большой ажиотаж в области ИИ. Он также вызвал споры, поскольку предлагал альтернативу логическому подходу, который был одной из основных парадигм ИИ.

    В SRI International Джефф Рулифсон, Ян Дерксен и Ричард Уолдингер разработали QA4, основанный на конструкциях в Planner, и представили механизм контекста для обеспечения модульности выражений в базе данных. Эрл Сакердоти и Рене Ребо разработали QLISP, расширение QA4, встроенное в INTERLISP, обеспечивающее рассуждения, подобные Planner, встроенные в процедурный язык и разработанные в его богатой среде программирования. QLISP использовался Ричардом Уолдингером и Карлом Левиттом для проверки программ, Эрлом Сакердоти для планирования и мониторинга выполнения, Жан-Клодом Латомбом для автоматизированного проектирования, Ричардом Файксом для дедуктивного поиска и Стивеном Коулсом для ранней экспертной системы, которая управляемое использование эконометрической модели.

    Компьютеры были дорогими. У них был только один медленный процессор, и их память была очень маленькой по сравнению с сегодняшней. Поэтому Planner использовал некоторые приемы повышения эффективности, в том числе следующие:

    • Отслеживание с возвратом [Golomb and Baumert 1965] было принято, чтобы сэкономить время и память, работая и сохраняя только одну возможность за раз при исследовании альтернатив.
    • Для экономии места и времени было принято предположение об уникальном имени, поскольку разные имена относятся к разным объектам.Например, предполагалось, что такие имена, как Пекин (предыдущее название столицы КНР) и Пекин (текущая транслитерация столицы КНР), относятся к разным объектам.
    • Предположение о замкнутом мире может быть реализовано путем условной проверки того, полностью ли провалилась попытка доказать цель. Позже этой возможности было дано вводящее в заблуждение название «отрицание как неудача», потому что для цели G можно было сказать: «если попытка достичь G полностью терпит неудачу, тогда утверждать (не G)».

    Происхождение Prolog []

    Джерри Сассман, Юджин Чарняк, Сеймур Пейперт и Терри Виноград посетили Эдинбургский университет в 1971 году, распространяя новости о Micro-Planner и SHRDLU и ставя под сомнение подход к процедуре доказательства с единообразным разрешением, который был опорой Edinburgh Logicists.В Эдинбургском университете Брюс Андерсон реализовал подмножество Micro-Planner под названием PICO-PLANNER (Андерсон, 1972), а Джулиан Дэвис (1973) реализовал практически весь Planner.

    По словам Дональда Маккензи, Пэт Хейс вспомнил влияние визита Паперта в Эдинбург, который, по словам коллеги Паперта из Массачусетского технологического института Карла Хьюитта, стал «сердцем логической страны искусственного интеллекта». Паперт красноречиво выразил свою критику подхода к разрешению проблем, преобладающего в Эдинбурге, «… и, по крайней мере, один человек поднял палку и ушел из-за Паперта.»[MacKenzie 2001 p 82.]

    Вышеупомянутые события вызвали напряженность среди логиков в Эдинбурге. Эти противоречия обострились, когда Совет по научным исследованиям Великобритании поручил сэру Джеймсу Лайтхиллу написать отчет о ситуации с исследованиями ИИ в Великобритании. Итоговый отчет [Lighthill 1973; McCarthy 1973] был весьма критичен, хотя SHRDLU был упомянут положительно.

    Пэт Хейс посетил Стэнфорд, где узнал о Planner. Вернувшись в Эдинбург, он попытался убедить своего друга Боба Ковальски принять во внимание Planner в их совместной работе по автоматическому доказательству теорем.«Резолюция теорема-доказательство было понижено с горячей темы для пережитка прошлых дезинформированного. Боб Ковальски упорно придерживался своей веры в потенциале теоремы разрешения прувинга. Он тщательно изучил Planner.» согласно Bruynooghe, Pereira, Siekmann, and van Emden [2004]. Ковальский [1988] заявляет: «Я могу вспомнить, как пытался убедить Хьюитта, что Planner был похож на SL-разрешение». Но Planner был изобретен для целей процедурного встраивания знание и было отказом от парадигмы процедуры доказательства единой резолюции.Колмерауэр и Руссель вспоминали свою реакцию на изучение Planner следующим образом:

    «На конференции IJCAI в сентябре 1971 года с Джин Трудель мы снова встретились с Робертом Ковальски и услышали лекцию Терри Винограда об обработке естественного языка. Тот факт, что он не использовал унифицированный формализм, оставил нас в недоумении. на этот раз мы узнали о существовании языка программирования Карла Хьюитта, Planner [Hewitt, 1969]. Отсутствие формализации этого языка, наше незнание Лиспа и, прежде всего, тот факт, что мы были абсолютно преданы логике, означало, что это работа мало повлияла на наши последующие исследования.»[Colmerauer and Roussel 1996]

    Осенью 1972 года Филипп Руссель реализовал язык под названием Prolog (сокращение от грамматики PRO и LOG ique — французский язык для «программирования в логике»). Программы Prolog обычно имеют следующую форму (которая является частным случаем обратной цепочки в Planner):

    Когда цель Q, цель P 1 и и цель P n

    Prolog продублировал следующие аспекты Micro-Planner:

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

    Prolog также дублировал следующие возможности Micro-Planner, которые были прагматично полезны для компьютеров той эпохи, потому что они экономили пространство и время:

    • Структура управления возвратом
    • Допущение уникального имени, согласно которому разные имена относятся к разным объектам, e.г. , Пекин и Пекин считаются разными.
    • Рефикация неудачи. Способ, которым Planner установил доказуемость чего-либо, заключался в том, чтобы успешно попытаться выполнить это как цель, а способ, которым он установил, что что-то недоказуемо, заключался в попытке выполнить это как цель и явно потерпеть неудачу. Конечно, другая возможность заключается в том, что попытка доказать цель будет бесконечной и никогда не вернет никакого значения. В Planner также была конструкция (не выражение), которая выполнялась, если выражение не удавалось, что привело к появлению в Planner терминологии «отрицание как сбой».

    Использование допущения и отрицания уникального имени в качестве отказа стало более сомнительным, когда внимание обратилось на открытые системы [Хьюитт и де Йонг 1983, Хьюитт 1985, Хьюитт и Инман 1991].

    Следующие возможности Micro-Planner были исключены из Prolog:

    • Вызов процедурных планов по шаблону из утверждений (, т.е. ., Прямая цепочка)
    • Логическое отрицание, например. , (не (человеческий Сократ)).

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

    не Q.
    Q: — P.

    Приведенная выше программа не сможет доказать , а не P, даже если она следует правилам математической логики. Это иллюстрация того факта, что Prolog (как и Planner) задуман как язык программирования и поэтому (сам по себе) не доказывает многие из логических следствий, которые вытекают из декларативного чтения его программ. Карл Хьюитт Средняя история логического программирования: разрешение, планировщик, пролог и японский проект пятого поколения ArXiv 2009. arXiv: 0904.3036

    Библиография []

    • Брюс Андерсон. Документация для школы искусственного интеллекта LIB PICO-PLANNER, Эдинбургский университет. 1972
    • Брюс Баумгарт. Альтернативное справочное руководство Micro-Planner Операционная записка Стэнфордской лаборатории искусственного интеллекта № 67, апрель 1972 г.
    • Коулз, Стивен (1975), «Применение искусственного интеллекта для эвристического моделирования», 2-я американско-японская компьютерная конференция .
    • Файкс, Ричард (1975), Механизмы дедуктивного поиска для моделей описания состояний , IJCAI .
    • Fitch, Frederic (1952), Symbolic Logic: an Introduction , New York: Ronald Press .
    • Грин, Корделл (1969), «Применение доказательства теорем к решению задач», IJCAI .
    • Хьюитт, Карл (1969). «ПЛАНИРОВЩИК: язык для доказательства теорем в роботах». IJCAI . CiteSeerX 10.1.1.80.756.
    • Хьюитт, Карл (1971), «Процедурное внедрение знаний в планировщик», IJCAI .
    • Карл Хьюитт. «Вызов открытых систем» Byte Magazine. Апрель 1985
    • Карл Хьюитт и Джефф Инман. «DAI Betwixt and Between: From» Intelligent Agents «to Open Systems Science» IEEE Transactions on Systems, Man, and Cybernetics. Ноябрь / декабрь 1991 г.
    • Карл Хьюитт и Гуль Ага. «Языки с оговорками Сторожевого Рога: являются ли они дедуктивными и логичными?» Международная конференция по компьютерным системам пятого поколения, Омша, 1988 г.Токио. Также в Искусственный интеллект в MIT , Vol. 2. MIT Press 1991.
    • Хьюитт, Карл (март 2006 г.), Неоднократная кончина логического программирования и причины его реинкарнации — что пошло не так и почему: уроки исследований искусственного интеллекта и приложений (PDF), технический отчет, AAAI Press, заархивировано из оригинал (PDF) от 10.12.2017 .
    • Уильям Корнфельд и Карл Хьюитт. Метафора научного сообщества MIT AI Memo 641. Январь 1981 г.
    • Билл Корнфельд и Карл Хьюитт.«Метафора научного сообщества» IEEE Transactions по системам, человеку и кибернетике. Январь 1981 г.
    • Билл Корнфельд. «Использование параллелизма для реализации эвристического поиска» IJCAI 1981.
    • Билл Корнфельд. «Параллелизм в решении проблем» Докторская диссертация MIT EECS. Август 1981.
    • Билл Корнфельд. «Комбинаторно имплозивные алгоритмы» CACM. 1982
    • Роберт Ковальский. «Ограничения логики» Труды четырнадцатой ежегодной конференции ACM 1986 года по информатике.
    • Роберт Ковальский. «Первые годы логического программирования» CACM, январь 1988 г.
    • Latombe, Жан-Клод (1976), «Искусственный интеллект в автоматизированном проектировании», CAD Systems , Северная Голландия .
    • Маккарти, Джон; Абрахамс, Павел; Эдвардс, Дэниел; Харт, Тимоти; Левин, Майкл (1962), Lisp 1.5 Programmer’s Manual , MIT Computing Center and Research Laboratory of Electronics .
    • Робинсон, Джон Алан (1965), «Машинно-ориентированная логика, основанная на принципе разрешения», Сообщения ACM , DOI: 10.1145 / 321250.321253 .
    • Джерри Сассман и Терри Виноград. Справочное руководство по микропланированию AI Memo No. 203, MIT Project MAC, июль 1970 г.
    • Терри Виноград. Процедуры как представление данных в компьютерной программе для понимания естественного языка MIT AI TR-235. Январь 1971 г.
    • Джерри Сассман, Терри Виноград и Юджин Чарняк. Справочное руководство Micro-Planner (обновление) AI Memo 203A, MIT AI Lab, декабрь 1971 г.
    • Карл Хьюитт. Описание и теоретический анализ (с использованием схем) Planner, языка для доказательства теорем и манипулирования моделями в роботизированном AI Memo No.251, MIT Project MAC, апрель 1972 г.
    • Евгений Чарняк. К модели понимания детских историй MIT AI TR-266. Декабрь 1972 г.,
    • Джулиан Дэвис. Справочное руководство Popler 1.6 Эдинбургский университет, Отчет ТПУ № 1, май 1973 г.
    • Джефф Рулифсон, Ян Дерксен и Ричард Уолдингер. «QA4, Процедурное исчисление для интуитивного мышления», Техническая записка 73 SRI AI Center, ноябрь 1973 г.
    • Скотт Фальман. «Система планирования для задач построения роботов» MIT AI TR-283.Июнь 1973
    • Джеймс Лайтхилл. «Искусственный интеллект: общий обзор Искусственный интеллект: бумажный симпозиум». Совет научных исследований Великобритании. 1973.
    • Джон Маккарти. «Обзор« Искусственный интеллект: общий обзор искусственного интеллекта: бумажный симпозиум ». Совет научных исследований Великобритании. 1973.
    • Роберт Ковальски «Логика предикатов как язык программирования», записка 70, факультет искусственного интеллекта, Эдинбургский университет. 1973
    • Пэт Хейс. Вычислительные и дедуктивные математические основы компьютерных наук: материалы симпозиума и летней школы, Штрбске Плесо, Высокие Татры, Чехословакия, 3–8 сентября 1973 г.
    • Карл Хьюитт, Питер Бишоп и Ричард Штайгер. «Универсальный модульный актерский формализм для искусственного интеллекта» IJCAI 1973 г.
    • Л. Торн Маккарти. «Размышления о TAXMAN: эксперимент по искусственному интеллекту и юридическому обоснованию» Harvard Law Review. Vol. 90, No. 5, March 1977
    • Дрю Макдермотт и Джерри Сассман. Справочное руководство Conniver MIT AI Memo 259A. Январь 1974 г.
    • Эрл Сакердоти и др. «QLISP — язык для интерактивной разработки сложных систем» AFIPS.1976
    • Сачердоти, Эрл (1977), Структура планов и поведения , Эльзевир Северная Голландия .
    • Уолдингер, Ричард; Левитт, Карл (1974), Рассуждения о программах искусственного интеллекта .

    Внешние ссылки []

    .

    Как пользоваться языковым планировщиком

    Существует так много возможных способов организовать изучение языка, что только этот этап может задержать вас еще до того, как вы начнете фактически изучать сам язык. Вместо этого постарайтесь максимально упростить себе задачу с помощью The Solo Language Learning Planner. Но как? Вот как пользоваться языковым планировщиком.

    Прежде чем мы перейдем к «как», вы вполне можете спросить «почему». Прежде чем мы перейдем к деталям, давайте разберемся с некоторыми преимуществами использования языкового планировщика.

    Отчетность

    Ответственность ОГРОМНАЯ в изучении языков. И это бывает во многих разных формах.

    Может случиться так, что рассказать кому-то — это лучший путь для вас. В этом случае использование чего-то вроде социальных сетей или присоединения к Clear The List творит чудеса для вас.

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

    Дать себе возможность ставить правильные цели в удобном для вас пространстве без необходимости трансляции — это именно то, что вам нужно для языкового планирования.

    Записывание целей поможет вам нести ответственность перед собой. Ууп!

    Прогресс

    Но одной цели недостаточно. Рецензирование — вот где действительно происходит волшебство.

    Если вы только ставите цели и не анализируете их, то вы оказываете себе медвежью услугу.

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

    Регулярно анализируйте, что вы изучаете и как вы это делаете, — это поможет вам добиться хороших успехов в изучении языка. Ура!

    Документирование

    У всех этих постановок целей и проверки есть дополнительное преимущество — вы документируете изучение языка и свой прогресс.

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

    Хорошо, вы готовы приступить к планированию со своим языковым планировщиком … но как, черт возьми, вы его вообще используете?

    В состав Solo Language Learner Planner входит 12 различных страниц планирования, разделенных на следующие группы: календари, постановка целей, обзор, ежедневник.

    Совершенно не обязательно использовать их все сразу. На самом деле, я бы посоветовал вам не делать этого! Вместо этого просмотрите и выберите страницы планирования, которые лучше всего подходят для вас прямо сейчас, чтобы помочь вам выполнить работу.Вот некоторые из них поближе…

    Разработчик проекта

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

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

    В любом случае, планировщик проекта для вас.

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

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

    И, поскольку это всего одна страница, она идеально помещается в передней части папки или наклеивается на стену.

    Целей первого впечатления

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

    Вы смотрите фильм на совершенно новом для вас языке или встречаете человека, говорящего на языке, о котором вы никогда не слышали.Ооо!

    Если вы не стремитесь к беглости, а просто выучите несколько слов, это идеальная простая страница планирования, которая поможет сохранить ваше вдохновение.

    Onion + цели

    На тот случай, когда простых страниц планирования цели первого впечатления недостаточно, в состав Solo Language Learner Planner входит Onion + Ladder Goals с примерами, показывающими, как их лучше всего использовать.

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

    Помимо примеров и пустых шаблонов для простой версии обеих целей Onion + Ladder, вы также получаете примеры и шаблоны для расширенных версий обеих. Расширенные версии учитывают различные аспекты изучения языка, на которых вы хотите сосредоточиться для достижения каждой цели.

    Так что принеси. Мое плохое, я перестану пытаться выполнить выборку.

    Учебная сессия или обзор проекта

    Как я уже упоминал выше, рецензирование так же важно, как и постановка целей для достижения реального последовательного прогресса.

    Страница обзора в The Solo Language Learner Planner — это всего лишь одна страница. Идеально подходит для быстрого и легкого просмотра. В конце концов, никто не хочет часами сидеть и анализировать каждый уголок своего обучения — мы хотим учиться!

    Чтобы ускорить процесс, но сохранить его полезность, на странице обзора есть флажки и легко отвечать на вопросы, оглядываясь назад и вперед, чтобы убедиться, что вы принимаете меры и продолжаете продвигаться.

    Запись урока

    Вы когда-нибудь заканчивали урок с репетитором и были слишком измотаны, чтобы вспомнить то, что вы только что изучили вместе, а потом … никогда не возвращайтесь к этому и не забывайте об этом в следующий раз?

    Ага.Я тоже.

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

    Смайлик с лицом ботаника. Не волнуйтесь, смайлики в стиле ботаников — самые крутые.

    Это лишь некоторые из страниц планирования, включенных в The Solo Language Learner Planner.Чтобы увидеть полный список, посмотрите прямо здесь.

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

    Как я уже упоминал выше, планировщик готов к печати, но также готов к цифровой печати, что означает, что, если вы предпочитаете, вы можете сохранить свой планировщик на своем компьютере и планировать вещи там, а не на бумаге. Ой, 21 век! Ха!

    Самое лучшее в планировщике то, что он стоит всего 15 долларов и работает вечно.Довольно воровство.

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

    Вы использовали программу Solo Language Learner Planner? Как это изменило ваше изучение языка? Делитесь в комментариях!

    Эй! Ты восхитителен.

    Присоединяйтесь к моему списку рассылки + получите бесплатный доступ к моей Маленькой языковой библиотеке.

    .

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *