3. Представление

Вид материалаОбзор
Подобный материал:
1   ...   11   12   13   14   15   16   17   18   ...   110

Рекомендуемая литература

В качестве наиболее доступного руководства по языку LISP я бы рекомендовал книгу Уинстона и Хорна [Winston and Horn, 1988], а в книгах Чарняка [Charniak et al., 1987] и Грехема [Graham, 1994] можно уточнить многие детали применения LISP для решения задач искусственного интеллекта.

В прекрасной книге Норвига [Norvig, 1992] подробно описан базовый диалект Common LISP, а в книге Рассела и Норвига [Russel and Norvig, 1995] основное внимание уделено программированию задач искусственного интеллекта.

В книге Кратко [Braico, 1990] читатель найдет обширный материал по использованию языка PROLOG для решения задач искусственного интеллекта. Кроме того, желающим изучить язык PROLOG я также рекомендую прочесть книгу Стерлинга и Шапиро [Sterling and Shapiro, 1994].

Упражнения

1. Что означает понятие "символ" применительно к проблематике искусственного интеллекта? Являются ли символами изображение и слово?

2. Что представляет собой гипотеза физической символической системы! Является ли она, по вашему мнению, правдоподобной?

3. Пусть L — список

(а (b) с ((d) е (f) g).

Какое значение вернет следующее выражение, состоящее из вложенных функций: first(first(rest(rest(rest(L))))).

Запишите приведенное выше выражение в синтаксисе примитивов LISP.

4. Пусть функция f определяется следующим образом:

f(X Y) = (ЛX)(if Y = 0 then 1, else X f(X, Y - 1)).

Какое значение будет иметь такое применение этой функции:

f(2 3) ?

Запишите приведенное выше выражение в синтаксисе примитивов LISP.

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

(lisp (a functional language)

(invented by (John mccarthy)))

соответствует образцу

(lisp (a ? language) (invented by (? mccarthy))),

но не соответствует образцу

(lisp (a ? language) (invented by (тагу ?))).

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

(? Variable-name),

и тогда образцу

(at (? X) (? Y))

будет соответствовать пример

(at robot room),

а программа должна вернуть подстановку

( (X robot) (Y room))

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

7. Скомбинируйте программы, разработанные в упр. 5 и 6, таким образом, чтобы результирующая программа могла обрабатывать вложенные списки и формировать подстановку. Эта программа должна быть способна, например, показать, что список (lisp (a functional language) (invented by (John mccarthy))) соответствует образцу

(lisp (a (? type) language)

(invented by ((? name) mccarthy))) ,

и вернуть подстановку

((type functional) (name John)) .

ГЛАВА 5. Системы, основанные на знаниях

5.1. Канонические системы

5.2. Системы порождающих правил для решения проблем

5.2.1. Синтаксис представления правил

5.2.2. Рабочая память

5.3. Управление функционированием интерпретатора

5.3.1. Разрешение конфликтов

5.3.2. Прямая и обратная цепочки рассуждений

5.3.3. Правила и метаправила

Рекомендуемая литература

Упражнения