Создание программы базы знаний семейных отношений на языке Prolog
Автор: Alexandr Gellert • Апрель 4, 2019 • Лабораторная работа • 345 Слов (2 Страниц) • 489 Просмотры
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН
КАРАГАНДИНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра ИТБ
Лабораторная работа №3
По дисциплине: «Экспертные и интеллектуальные системы»
Тема: «Создание программы базы знаний семейных отношений на языке Prolog»
Выполнил: студентка
группы ФИТ-15-1
Панкина.К
А-(90) Вл. Яв. Проверил: Яворский В.В.
Караганда 2018 г.
Цель: Разработать программу семейных отношений на языке Prolog (пролог)
Ход работы:
Язык программирования пролог – логических язык программирования, появившийся в 80-х годах. Основные понятия Prolog’а – предикаты, кляузы, цель, факты и правила. Для каждого интерпретатора существуют собственные правила синтаксиса при написании программ. Также в зависимости от интерпретатора цель может вестись в виде диалога с операциями булевой алгебры true и false, так и задана явно с помощью термина goal.
Интерпретатор, на котором была выполнена программа - SWI-Prolog. SWI-prolog поддерживает диалог с пользователем. В данном интерпретаторе ключевые слова predicates и clauses опускаются по синтаксису. Для того чтобы начать диалог, необходимо выбрать в меню «Компиляция» - «Скомпилировать буфер», что показано на рисунке 1.
[pic 1]
Рис.1 - Компиляция кода
Способ задания фактов показан на рисунке 2. На естественном языке это звучит как «Отец Светланы – Геннадий»
[pic 2]
Рис. 2 - Задание фактов
Правила состоят из указанных ранее фактов и логических условий, связанных с ними (рисунок 3)
[pic 3]
Рис. 3 - Задание правил
После компиляции кода с программой можно вести диалог, задавая вопросы, на которые можно ответить как «Правда/Ложь» (true/false).
Как можно заметить, программа успешно отвечает на вопросы как о фактах (мать), так и о правилах (дядя, бабушка) (рисунок 4):
...