Лабораторный практикум пролог. Методические рекомендации по дисциплине Анализ данных
Скачать 311.21 Kb.
|
Table of Contents Лабораторный практикум в сред е Visual Prolog 1 ВВЕДЕНИЕ 3 1. ПРОЛОГ - язык логического программирования 5 1.1. Создание баз знаний в ПРОЛОГе 5 Краткие теоретические сведения 5 Пример 1. 8 Результат: 9 Результат: 9 Результат: 10 Пример 2 10 Пример 3 11 Решение: 11 Решение 12 1.2 Поиск с возвратом. Управление поиском 17 Краткие теоретические сведения 17 Пример 1. 17 Пример 3 21 Результат выполнения программы: 22 Пример 4 22 Результат выполнения программы: 22 Пример 5 22 Результат выполнения программы 23 Результат выполнения программы 23 Результат выполнения программы 24 Пример 6 24 Результат выполнения программы: 24 Пример 7 25 Результат выполнения программы: 25 1.3 Решение логических задач в ПРОЛОГе 27 Краткие теоретические сведения 27 Пример 1 27 Результат выполнения программы 29 Пример 2 29 Пример 3 30 Результат выполнения программы 30 Пример 4 30 Результат выполнения программы 31 1.4 Арифметические вычисления и рекурсия в ПРОЛОГе 31 Краткие теоретические сведения 31 Пример 1. 32 Результат выполнения программы: 32 Пример 2. 32 Результат выполнения программы: 33 Пример 3. 33 Результат выполнения программы: 33 Результат выполнения программы: 34 Пример 5 34 Результат выполнения программы: 35 1.5 Списки 35 Пример 1 36 Результат выполнения программы: 36 Пример 2 36 Результат выполнения программы: 37 Пример 3 37 Пример 4 37 Результат выполнения программы: 37 Пример 5 38 Результат выполнения программы: 38 Пример 6 38 Решение: 38 Результат выполнения программы: 38 Пример 7 39 Результат выполнения программы: 39 Пример 8 40 Результат выполнения программы: 40 1.6 Создание экспертных систем средствами ПРОЛОГа 40 Краткие теоретические сведения 40 Литература 50 assertz (no (Y)),fail. clear_from_database :- retract (yes(_)),fail. clear_from_database :- retract (no(_)),fail. fisM'^w сазан"):- otrajd("отряg карпообразные"), priznak("губы с 4 усиками"). fisM'^w плотва"):- otrajd("отряд карпообразные"), priznak("плавники с розовыми перьями"). fish^'arnc» лещ"):- otrajd("отряд карпообразные"), priznaM'^ рыбы желто-золотистый окрас"), priznaM'^ рыбы спинной плавник узкий"). fish("Данной рыбы в базе знаний не обнаружено"). otrajd("отряд карпообразные"):- vid("пресноводная рыба"), vid("костная рыба"), priznak("одиночный спинной лучевой плавник"), priznaM'^ рыбы нет зубов"). vid("костная рыба"):- priznaM'^ рыбы есть жаберные крышки"); priznaM'^ рыбы есть костный скелет"). vid("пресноводная рыба"):- priznak(«рыба плавает в реках или озерах»). ЗАДАНИЕ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ Реализуйте данную программу в среде Visual Prolog и протестируйте ее. Расширьте базу знаний экспертной системы, добавив следующие правила: ЕСЛИ у рыбы есть электрические органы И это отряд скаты ТО это электрический скат ЕСЛИ у рыбы на хвосте ядовитый шип И это отряд скаты ТО это скат-хвостокол ЕСЛИ у рыбы серо-коричневый окрас И у рыбы коническая морда И это отряд акулы ТО это гиганская акула ЕСЛИ это отряд акулы И рыба нападает на людей И у рыбы молотообразная морда ТО это рыба молот ЕСЛИ у рыбы нет хвостового плавника И у рыбы тонкий длинный хвост И это хрящевая рыба И это морская рыба ТО это отряд скаты ЕСЛИ это морская рыба И это хрящевая рыба И плавники не гибкие И хвост ассиметричный ТО это отряд акулы ЕСЛИ у рыбы нет плавательного пузыря ИЛИ у рыбы есть хрящевый скелет ТО это хрящевая рыба ЕСЛИ рыба плавает в морях ТО это морская рыба Протестируйте полученную экспертную систему. Литература Адаменко А., Кучуков А. Логическое программирование и Visual Prolog.- СПб, 2003 Братко И. Программирование на языке ПРОЛОГ для искусственного интеллекта.- М., 1990. Козырева Г.Ф. Практикум решения задач в среде Visual Prolog. Учебнометодическое пособие для студентов, обучающихся по специальности «информатика». - Армавир, АГПУ - 2005, 65с. Козырева Г.Ф. Учебно-методическое пособие «Контрольные работы по курсу «Интеллектуальные информационные системы»» для студентов заочной формы обучения. - Армавир, АГПУ. - 2009. - 34 с. Сергиевский Г. М. Функциональное и логическое программирование : учеб. пособие / Г. М. Сергиевский, Н. Г. Волченков. - М. : Академия, 2010. - 317 с. Сошников Д. В. Парадигма логического программирования / Д. В. Сошников. - М. : Вузовская книга, 2006. - 220 с. |