ЛИСП
Категория реферата: Рефераты по информатике, программированию
Теги реферата: изложение с элементами сочинения, эффективность диплом
Добавил(а) на сайт: Kirillov.
Предыдущая страница реферата | 18 19 20 21 22 23 24 25 26 27 28 | Следующая страница реферата
(if (member (car выводы) *факты*) nil ;проверка - входит
«голова»
(progn (prin1 "Согласно правилу:") ;выводов в список фактов
(prin1 (prav-name правило))
(push (car выводы) *факты*)))
(setq выводы (cdr выводы)))) ;шаг изменения
Для проверки работоспособности программы необходимо выполнить следующую последовательность команд:
MuLisp-87.com Common.lsp - Загрузка системы
(load structur.lsp) - подключение приложения для работы со структурами
(load rash.lsp) - подключение расширения, которое мы рассмотрим позже
(load exsis.lsp) - подключение тестируемой программы
В начале работы с программой необходимо инициализировать список фактов
(SETQ *факты* ‘(начальные факты)) где начальные факты - условия из какого-либо правила
Пример2.
Пример представления знаний с помощью фреймов. В примере упоминаются
три фрейма - МЕРОПРИЯТИЕ, СОБРАНИЕ и СОБРАНИЕ1. Фрейм МЕРОПРИЯТИЕ -
наиболее общий, фрейм СОБРАНИЕ - более конкретный, описывающий вид
МЕРОПРИЯТИЯ, а фрейм СОБРАНИЕ1 - наиболее уточненный фрейм, описывающий
конкретное СОБРАНИЕ. Фрейм СОБРАНИЕ называется субфреймом фрейма
МЕРОПРИЯТИЕ, а СОБРАНИЕ1 - субфрейм фрейма СОБРАНИЕ.
(собрание имя фрейма
(разновидность (мероприятие)) имена и значения слотов
(время (среда 14.00)) (умалчиваемые значения
(место (зал заседаний)) наследуются субфреймами)
)
(собрание1
(разновидность (собрание))
(присутствуют ((Вася) (Петя) (Маша)))
)
Реализация фрейм-программы на Лиспе.
;EXSIS2 - реализация фрейм-программы на Лиспе.
(setf (get ‘собрание ‘разновидность) ‘мероприятие)
(setf (get ‘собрание ‘время) ‘(среда 14.00))
(setf (get ‘собрание ‘место) ‘(зал заседаний))
(setf (get ‘собрание1 ‘разновидность) ‘собрание)
(setf (get ‘собрание1 ‘присутствуют) ‘((Вася) (Петя) (Маша)))
;функция - определяющая наследуемые свойства
(defun наследование (фрейм имя_слота)
(cond ((get фрейм имя_слота)) ;имеется во фрейме данный слот?
;если да, то вернуть его значение.
(t (cond ((get фрейм ‘разновидность) ;иначе -
проверить наличие
;слота разновидность. В случае его присутствия - рекурсивно применить
;функцию к верхним фреймам
(наследование (get фрейм ‘разновидность) имя_слота))
(t nil)))))
4. Задания к лабораторной работе.
1.Переведите следующие списочные записи в точечные:
(w (x));
((w) x);
(nil nil nil);
(v (w) x (y z));
((v w) (x y) z);
(((v) w x) y z).
2. Переведите следующие точечные записи в списочные:
(a . (b . (c . nil)));
((a . nil) . nil);
(nil . (a . nil));
(a . ((b . (c . nil)) . ((d . (e . nil)) . nil)));
(a . (b . ((c . (d . ((e . nil) . (nil))) . nil)));
((a . (b . nil)) . (c . ((d . nil) . (e . nil)))).
3. Напишите функцию: от трех аргументов, аналог встроенной функции pairlis, которая строит список пар; от двух аргументов, аналог встроенной функции assoc, которая ищет пару, соответствующую ключу.
4. Напишите функцию, аналог функции putassoc которая физически изменяет а-список (putassoc1 ключ данные а-список).
5. Расширьте возможности программы EXSIS.LSP: напишите функцию, пополняющую базу знаний новыми знаниями; напишите функцию, удаляющую ненужные знания; расширьте базу знаний; напишите главную программу, к которой должны быть подключены все ранее написанные функции (и имеющиеся в EXSIS.LSP), и которая выполняла бы их в диалоговом режиме.
6. Подобным образом измените программу EXSIS1.LSP.
7. Разработайте базу знаний и правила базы знаний РАСПИСАНИЕ ЗАНЯТИЙ используя: формализм фреймов; формализм продукций.
5. Вопросы.
1. В чем особенности точечной нотации?
2. Назовите структурированные типы данных, их особенности?
3. Способы представления знаний?
4. Их достоинства и недостатки?
Лабораторная работа № 6.
Тема: Изучение учебной версии языка Лисп - dlisp. Расширение библиотеки функций dlisp.
Рекомендуем скачать другие рефераты по теме: реферат личность, курсовая работа по менеджменту.
Предыдущая страница реферата | 18 19 20 21 22 23 24 25 26 27 28 | Следующая страница реферата