Возможности языка и системы логического программирования Turbo Prolog - Реферат

бесплатно 0
4.5 120
Применение и описание системы логического программирования Turbo Prolog. Особенности, предназначение предикатов xpositive и xnegative. Специфика программы классификации животных по признакам, выбранным пользователем. Роль главного модуля do expert job.


Аннотация к работе
Цель исследований по ЭС состоит в разработке программ, которые при решении задач, трудных для человека, получают результаты, не уступающие по качеству и эффективности решениям, получаемым экспертом. В качестве темы курсовой работы была выбрана «Разработка базы знаний экспертной системы на тему «Классификация животных». Животные были классифицированы по следующим признакам: класс, отряд, цвет и по другим личностным характеристикам. Вот эти декларации: turbo prolog предикат животное database xpositive(symbol,symbol) xnegative(symbol,symbol) predicates do_expert_job do_consulting ask(symbol,symbol) animal_is(symbol) positive(symbol,symbol) negative(symbol,symbol) remember(symbol,symbol,symbol) clear_facts goal do_expert_job. Ниже приведено полное продукционное правило для медведя: animal_is("Медведь"):-positive(animal,"Отряд хищные"), positive(animal,"Любит мед"), positiv(animal,"Зимой впадает в спячку"), positive(animal,"Класс млекопитающие"),!.В качестве темы курсовой работы была выбрана «Разработка базы знаний экспертной системы на тему «Классификация животных».An Animal Expert "), nl,write(" "), nl,write(" Please answer the questions "yes" or "no"."), nl,write("---------------------------------------------------"), nl,nl, do_consulting, write("Press space bar."),nl, readchar(_), removewindow, exit. do_consulting:-animal_is(X),!,nl, write("Animal ",X,"."),nl, clear_facts. do_consulting:-nl,write("Sorry !"), clear_facts. ask(X,Y):-write(" expert> ",X," ",Y," ?"), readln(Reply), remember(X,Y,Reply). positive(X,Y):-xpositive(X,Y),!. positive(X,Y):-not(negative(X,Y)),!, ask(X,Y). negative(X,Y):-xnegative(X,Y),!. remember(X,Y,yes):-asserta(xpositive(X,Y)). remember(X,Y,no):-asserta(xnegative(X,Y)), fail. clear_facts:-retract(xpositive(_,_)), fail. clear_facts:-retract(xnegative(_,_)), fail. animal_is("Медведь"):-positive(animal,"Отряд хищные"), positive(animal,"Любит мед"), positive(animal,"Зимой впадает в спячку"), positive(animal,"Класс млекопитающие"),!. animal _is("Носорог"):-positive(animal,"Отряд непарнокопытные"), positive(animal,"Живет одиночно"), positive(animal,"Живет в Африке"), positive(animal,"Класс млекопитающие"),!. animal _is("Белка"):-positive(animal,"Отряд грызуны"), positive(animal,"Пушистый длинный хвост"), positive(animal,"Запасает орехи на зиму"), positive(animal,"Класс млекопитающие"),!. animal _is("Черепаха"):-positive(animal,"Отряд черепахи"), positive(animal,"Обитает в воде"), positive(animal, "Зеленого цвета" positive(animal,"Класс пресмыкающиеся"),!. animal _is("Ящерица"):-positive(animal,"Отряд чешуйчатые"), positive(animal,"Быстро бегает"), positive(animal,"Зеленого цвета"), positive(animal,"Класс пресмыкающиеся"),!. animal_is("Лягушка"):-positive(animal,"Отряд бесхвостые"), positive(animal,"Зеленого цвета"), positive(animal,"Прыгает"), positive(animal,"Класс земноводные"),!. animal _is("Человек"):-positive(animal,"Не животное"), positive(animal,"Класс млекопитающие"),!.

Вывод
Целью данной курсовой работы являлось изучение возможностей языка и системы логического программирования Turbo Prolog.

В качестве темы курсовой работы была выбрана «Разработка базы знаний экспертной системы на тему «Классификация животных». Животные были классифицированы по следующим признакам: класс, отряд, цвет и по другим личностным характеристикам.

При выполнении программа классифицирует животных по признакам, выбранных пользователем, а если животного с выбранными критериями нет в базе знаний, программа выдает сообщение “Sorry!”.

В ходе выполнения данной курсовой работы были закреплены и получены знания по созданию экспертных систем на языке логического программирования Turbo Prolog.
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?