Создание среды сопровождения жизненного цикла экспертных систем на базе пакетов Visual, SWI-Prolog

Общая характеристика и функциональные возможности языка логического программирования Prolog, а также систем SWI-Prolog и Visual Prolog. Формирование базы знаний относительно определения возможности трудоустройства студента и принципы реализации запросов.

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 07.10.2014
Размер файла 1,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Отчет по лабораторным работам

Создание среды сопровождения жизненного цикла экспертных систем на базе пакетов Visual, SWI-Prolog

Цель работы: Изучить функциональные возможности языка логического программирования Prolog и возможности систем SWI-Prolog и Visual Prolog. Установить системы (Visual и SWI-Prolog) и построить базу знаний относительно определения возможности трудоустройства студента и реализовать запросы по данному заданию.

Ход работы:

1. Параметры персональной рабочей платформы информатизации представлены на рисунке 1.

Рисунок 1. Параметры ноутбука

2. Для установки был выбран дистрибутив Visual Prolog 7.5 (http://www.ikasteko.ru/page/visual_prolog_5_2_free_download), как однозначно поддерживаемый системой и не требующий дополнительных библиотек сверх стандартных для ОС Windows.

3. На рисунках 2-7 представлена поэтапная установка системы Visual Prolog.

Рисунок 2. Начало установки

Рисунок 3. Лицензионное соглашение

Рисунок 4. Путь установки

Рисунок 5. Подтверждение начала установки

Рисунок 6. Процесс установки

Рисунок 7. Установка завершена

4. Построим базу знаний в системе Visual Prolog, описывающую отношения вида «родитель-ребенок» (рисунок 8).

Рисунок 8. Построенная база знаний

логический программирование prolog

5. Составим запрос для определения правильности утверждения: Марина является родителем Саши. (рисунок 9).

Запрос: parent («Marina», «Sasha»)

Рисунок 9. Результат выполнения запроса

6. Составим запрос для определения правильности утверждения: Алексей является родителем Ольги. (рисунок 10).

Запрос: parent («Alexei», «Olga»)

Рисунок 10. Результат выполнения запроса

7. Составим запрос для установления факта: кто является ребёнком Николая. (рисунок 11).

Запрос: parent («Nicolai», X).

Рисунок 11. Результат выполнения запроса

8. Составим запрос: кто является родителями Ивана. (рисунок 12).

Запрос: parent (X, «Ivan»), parent (Y, «Ivan»), X<>Y.

Рисунок 12. Результат выполнения запроса

9. Составим запрос для определения всех родителей и их детей. (рисунок 13).

Запрос: parent (X, Y).

Рисунок 13. Результат выполнения запроса

На этом выполнение заданий в рамках данного пакета заканчивается.

10. Для установки SWI-Prolog в соответствии с параметрами персональной рабочей платформы информатизации был выбран дистрибутив, доступный по ссылке с официального сайта (http://www.swi-prolog.org/download/stable/bin/w32pl666.exe). Данный дистрибутив предлагает установку SWI-Prolog версии 6.6.6.

11. На рисунках 14-18 поэтапно представлен процесс установки ПО:

Рисунок 14. Лицензионное соглашение

Рисунок 15. Выбор компонентов ПО

Рисунок 16. Выбор директории для установки

Рисунок 17. Настройка дополнительных параметров

Рисунок 18. Процесс установки

Рисунок 19. Завершение установки

12. В соответствии с заданием была построена база данных, отражающая информацию о студентах, их средних баллах, компаниях-работодателях и их требованиях, а также предикаты, отражающие логические связи между вышеописанными элементами (см. рисунок 20).

Рисунок 20. База данных

После этого было начато выполнение запросов к БД в соответствии с заданием.

13. Реализация запроса относительно получения стипендии студентом Поповым.

Запрос: stipendiya('Popov'). (рисунок 21).

Рисунок 21. Результат выполнения запроса

14. Реализация запроса относительно получения стипендии студентом Федоровым.

Запрос: stipendiya('Fedorov'). (рисунок 22).

Рисунок 22. Результат выполнения запроса

15. Реализация запроса относительно определения группы студентов, занесённых в базу знаний и получающих стипендию.

Запрос: stipendiya(Name). (рисунок 23).

Рисунок 23. Результат выполнения запроса

16. Реализация запроса относительно определения среднего балла для поступления на работу в корпорацию Microsoft.

Запрос: company ('Microsoft', SrBal). (рисунок 24).

Рисунок 24. Результат выполнения запроса

17. Реализация запроса относительно выяснения возможности трудоустройства студента Попова в корпорацию Microsoft.

Запрос: isAbleToWork ('Popov', 'Microsoft'). (рисунок 25).

Рисунок 25. Результат выполнения запроса

18. Реализация запроса относительно выяснения возможного перечня организаций для трудоустройства студента Федорова.

Запрос: isAbleToWork ('Fedorov', NameCompany). (рисунок 26).

Рисунок 26. Результат выполнения запроса

19. Реализация запроса относительно определения группы студентов, занесённых в базу знаний и получающих возможность трудоустройства в компанию Apple.

Запрос: isAbleToWork (NameStudent, 'Apple'). (рисунок 27).

Рисунок 27. Результат выполнения запроса

20. Реализация запроса определения группы студентов, занесённых в базу знаний и получающих возможность трудоустройства в компанию IBM.

Запрос: isAbleToWork (NameStudent, 'IBM') (рисунок 28).

Рисунок 28. Результат выполнения запроса

Вывод

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

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

2) Интерфейс пользователя. SWI-Prolog обладает более удобным интерфейсом, позволяя подгружать базы данных и предикаты из отдельных файлов, что дает возможность выполнять запросы из разных проектов без необходимости редактирования исходных файлов. В свою очередь, Visual Prolog требует значительно большего числа шагов для выполнения запросов.

3) Простота установки. Обе среды устанавливаются за несколько минут без необходимости тонкой настройки и не требуют дополнительных библиотек.

4) Применимость. Обе среды способны справляться с необходимыми задачами. Следует, однако, отметить, что в некоторых случаях SWI-Prolog может неожиданно завершить работу. При работе с Visual Prolog такого замечено не было.

Размещено на Allbest.ru


Подобные документы

  • Основы языка Visual Prolog. Введение в логическое программирование. Особенности составления прологов, синтаксис логики предикатов. Программы на Visual Prolog. Унификация и поиск с возвратом. Использование нескольких значений как единого целого.

    лекция [120,5 K], добавлен 28.05.2010

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

    курсовая работа [19,0 K], добавлен 24.05.2012

  • Понятие экспертных систем, их классификация, виды и структура. Построение продукционной модели экспертной системы прогнозирования результатов сессии на основании анализа успеваемости, ее реализация в языке логического программирования Visual Prolog.

    дипломная работа [1,6 M], добавлен 25.01.2011

  • Разработка программы для поиска пути в лабиринте с возможностью задания входа и выхода, наглядное представление решений. Использование языка логического программирования Prolog. Данные и методы решения. Пользовательский интерфейс, листинг программы.

    реферат [14,3 K], добавлен 15.10.2012

  • Механізм функціонування Visual Prolog, яка має предикати для безпосереднього доступу до операційної системи. Розгляд предикатів, які дозволяють звертатися до ОС, предикатів побітової обробки чисел та підтримки низькорівневого режиму роботи з пам'яттю.

    контрольная работа [21,4 K], добавлен 02.07.2011

  • Нечеткая лингвистическая переменная. Конструктивное описание лингвистической переменной. Структура управляющей логики в виде вычислений с откатами. Наиболее заметные тенденции в истории развития языка программирования Prolog, основные элементы синтаксиса.

    контрольная работа [38,8 K], добавлен 17.05.2011

  • Применение грамматических правил на языке Prolog. Использование грамматики для формирования лингвистической информации. Классификация грамматических формальных систем по их порождающей способности. Преобразование правил DCG интерпретатором Prolog.

    презентация [72,5 K], добавлен 17.10.2013

  • История возникновения и развития языка Prolog. Рассмотрение императивных и декларативных языков программирования. Элементы экспертной системы: база знаний, механизм вывода и система пользовательского интерфейса. Описание предикатов и предложений.

    дипломная работа [44,0 K], добавлен 11.05.2014

  • Знакомство с основами логического программирования на примере языка Prolog. Синтаксис его основных команд. Генеалогическое дерево с использованием предикатов. Хорновская логическая программа. Основные синтаксические объекты: атомы, константы и переменные.

    практическая работа [832,7 K], добавлен 20.11.2015

  • Рассмотрение экспертных систем: классификация, назначение, общие принципы построения и функционирования. Среда разработки данных систем: BorlandC++ Builder 6.0 и AMZI! Prolog. Описание процесса разработки экспертной системы "Выбор спортивного инвентаря".

    курсовая работа [426,9 K], добавлен 19.08.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.