Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

366

.pdf
Скачиваний:
1
Добавлен:
21.11.2023
Размер:
112.33 Кб
Скачать

Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

«Нижегородский государственный архитектурно-строительный университет»

А. Я. Лахов

ИНТЕЛЛЕКТУАЛЬНЫЕ СИСТЕМЫ И ТЕХНОЛОГИИ

Учебно-методическое пособие

по выполнению лабораторных работ для обучающихся по дисциплине «Интеллектуальные системы и технологии »

по направлению подготовки 09.03.02 Информационные системы и технологии, без профиля

Нижний Новгород

2016

Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

«Нижегородский государственный архитектурно-строительный университет»

А. Я. Лахов

ИНТЕЛЛЕКТУАЛЬНЫЕ СИСТЕМЫ И ТЕХНОЛОГИИ

Учебно-методическое пособие

по выполнению лабораторных работ для обучающихся по дисциплине «Интеллектуальные системы и технологии»

по направлению подготовки 09.03.02 Информационные системы и технологии, без профиля

Нижний Новгород ННГАСУ

2016

УДК 681.3 (075)

Лахов А. Я./ Интеллектуальные системы и технологии [Электронный ресурс]: учеб. – метод. пос./А. Я. Лахов; Нижегор. гос. архитектур. – строит. ун-т – Н. Новгород: ННГАСУ, 2016. - 16 с. 1 электрон.опт.диск (CD-R)

В методических указаниях представлены задания и пояснения к выполнению лабораторных работ в средах разработки LispWorks, Visual Prolog и CLIPS в рамках курса «Интеллектуальные системы и технологии ».

© А. Я. Лахов © ННГАСУ. 2016.

Введение

В настоящее время в области интеллектуальных систем и технологий развиваются направления функционального программирования, логического программирования и направление разработки экспертных систем. Функциональное программирование основывается на использовании языка программирования Lisp. Логическое программирование основывается на языке программирования Prolog. При разработке экспертных систем используются различные оболочки экспертных систем, например CLIPS.

Настоящие методические указания ориентированы на использование сред разработки LispWorks, Visual Prolog и оболочки экспертных систем продукционного типа CLIPS для операционной системы Windows.

Дополнительную информацию о данных средствах разработки интеллектуальных систем и технологий можно найти в технической документации к ним. Система LispWorks имеет версию Personal бесплатную для академических учреждений. Система Visual Prolog версию Personal бесплатную для академических учреждений. Оболочка экспертных систем CLIPS является freeware программой.

Требования к выполнению работ

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

уяснить номер, тему и цель лабораторной работы;

уяснить перечень заданий работы;

определить входные и выходные данные для каждого задания;

набрать и отладить разработанную программу;

получить результаты вычислений;

сдать работу преподавателю.

СЕМЕСТР № 6

ЛАБОРАТОРНАЯ РАБОТА № 1

Тема: Среда Коммон Лиспа. Составные части среды программирования.

Цель работы: Знакомство со средой LispWorks. Интегрированность и прозрачность. Редактирование программ. Тестирование программ. Прерывание вычислений.

Лабораторная работа состоит из следующих заданий.

1.Выполнить набор и интерпретацию конструкций Lisp диалоговом режиме.

2.Выполнить набор простейшей программы с использованием встроенного редактора. Сохранить файл. Скопировать программу в окно Listener и выполнить его интерпретацию.

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

ЛАБОРАТОРНАЯ РАБОТА № 2

Тема: Списки и рекурсия

Цель работы: Изучение функционального программирования. Применение рекурсии или итерации.

Лабораторная работа состоит из следующих заданий.

1.Записать арифметическое выражение в Lisp форме.

2.Определить, что является алгебраическим эквивалентом Lisp выражений.

3.Определить какие из заданных выражений являются S-выражениями.

4.Переписать на Lisp заданные выражения.

5.Заданы предложения Lisp. Определить их результаты.

6.Заданы выражения Lisp. Определить чему будет равна переменная

Alpha.

7.Заданы списки. Определить из скольких элементов они состоят на верхнем уровне.

8.Разработать рекурсивную программу на языке Lisp для подсчета значения произведения через суммирование.

ЛАБОРАТОРНАЯ РАБОТА № 3

Тема: Функции.

Цель работы: Изучение создания и применения функций Lisp.

Лабораторная работа состоит из следующих заданий.

1.Задано определение функции Beta. Далее выполняется обращение к этой функции Beta(2 3). Чему будет равна эта функция.

2.Написать предложение Defun , которое определит функцию 7 аргументов, значением которой будет их сумма.

3.Определить значение заданного Lambda выражения.

4.Определить какие переменные в выражении являются связанными, а какие свободными.

5.Определить значения заданных выражений.

6.Определить функцию, которая будет возвращать (3 4) при применении к (1 2 3 4).

7.Определить функцию одного аргумента L, которая возвращает t если первый элемент L есть атом и NIL в противном случае.

8.Определить функцию суммирования для S=Ʃai.

ЛАБОРАТОРНАЯ РАБОТА № 4

Тема: Объединение функций.

Цель работы: Изучение средств создания составных операторов Prog. Изучение функции Cond.

Лабораторная работа состоит из следующих заданий.

1.Определить Prog выражение Ind с параметрами X и L, которое возвращает меньшее из целых чисел N, таких, что X встречается в качестве N-го элемента списка L или возвращает 0 , если X не встречается в L.

2.Напишите Prog выражение IndexMax, которое выдает индекс (номер) максимального числа в списке атомов-чисел, не имеющем подсписков.

ЛАБОРАТОРНАЯ РАБОТА № 5

Тема: Сопоставление с образцом.

Цель работы: Изучение сопоставления с образцом и распознавания образцов. Применяющие функционалы. Свойства символа.

Лабораторная работа состоит из следующих заданий.

1.Написать функцию Sopostav для сопоставления заданного образа с заданным образцом с использованием заменителей (? – произвольный символ, + - не пустая последовательность или сегмент, * - пустая последовательность или сегмент).

2.Добавить к функции Sopostav дополнительный заменитель (- – один произвольный символ или пустая последовательность).

ЛАБОРАТОРНАЯ РАБОТА № 6

Тема: Дифференцирование выражений.

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

Лабораторная работа состоит из следующих заданий.

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

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

ЛАБОРАТОРНАЯ РАБОТА № 7

Тема: Дифференцирование выражений.

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

Лабораторная работа состоит из следующих заданий.

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

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

ЛАБОРАТОРНАЯ РАБОТА № 8

Тема: Экспертная система продукционного типа.

Цель работы: Изучение методов разработки экспертных систем продукционного типа.

Лабораторная работа состоит из следующих заданий.

1.Создать Базу Знаний продукционного типа для классификации животных по внешним признакам с использованием структур Lisp.

2.Написать экспертную систему продукционного типа в виде функций

Provprav, Podmnog, Dobavvivod на языке Lisp.

3.Выполнить сеанс консультации с данной экспертной системой для проверки ее работы.

СЕМЕСТР № 8

ЛАБОРАТОРНАЯ РАБОТА № 1

Тема: База знаний на основе фактов.

Цель работы: Знакомство со средой Visual Prolog. Интегрированность и прозрачность. Редактирование программ. Тестирование программ. Прерывание вычислений.

Лабораторная работа состоит из следующих заданий.

1.Изучить структуру программы на Prolog (Domain, Clauses, Goal). Изучить типы данных (string, symbol, real, integer).

2.Создать Базу Знаний, описывающую семейные отношения, на основе фактов с использованием предикатов Prolog. Выполнить построение проекта. Запустить на выполнение.

3.Дополнить Базу Знаний правилами, описывающую семейные отношения. Выполнить тестирование цели.

ЛАБОРАТОРНАЯ РАБОТА № 2

Тема: База знаний с использованием правил.

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

Лабораторная работа состоит из следующих заданий.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]