Информационная система

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 15.05.2014
Размер файла 43,2 K

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

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

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

Оглавление

Введение

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

1.1 Эвристическое программирование в экспертных системах

2. Формальное представление системы программирования Prolog, как языка предикатов математической логики

3. Оценка процедурной части программы «TreeFound»

Заключение

Список использованных источников

Введение

Данная работа носит актуальный характер благодаря высоким темпам развития инноваций отрасли Искусственного Интеллекта (в частности экспертных систем) и их огромного значения в управленческой сфере. Логическая основа программного обеспечения информационных систем в управлении - это связь информации, заложенной оператором с системами управления и процессами руководства.

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

В современных условиях важной областью стало информационное обеспечение, которое состоит в сборе и переработке информации, необходимой для принятия обоснованных управленческих решений. Цель данной курсовой работы -- использование дизъюнкции Хорна в анализе структуры информационных систем (экспертных систем), так как это фундамент эффективного управления предприятием. Использование для этого семантической системы языка Prolog, безусловно, наилучший путь. В международной конкуренции на первый план выходят экономические, рыночные критерии эффективности, повышаются требования к гибкости. Научно-технический прогресс и динамика внешней среды заставляют современные предприятия превращаться во все более сложные системы, для которых необходимы новые интеллектуальные методы для обеспечения управляемости. информационный эвристический программирование

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

Объектом исследования в данной курсовой работе являются логическая основа синтаксиса программных инструментов и его значение в принятии решений в управленческой деятельности посредством использования информационных интеллектуальных систем. Задача - рассмотреть в процессе представления работы критерии анализа структурного ядра ИС, и конструирующих его функционал математических формализмов. В частности, предметом исследования является программная реализация ИС «FoundTree», написанная на языке Prolog, в основу которого входит максима формализма предикатов первого порядка.

Необходимо проведение ряда исследований этого логического метода, интегрированного в структуру данной системы и результирующего взаимодействия рабочих элементов в управленческой деятельности. А также выведение закономерностей будущего развития данной отрасли, зависящей непосредственно от выработанных алгоритмов эволюции интеллектуальных навигаторов. Сейчас, в наше время Информационные Системы должны быть приспособлены к модернизации, развитию предприятий и расширению с учетом будущих перспектив. А что это за исторические перспективы, и каковы методы их достижения и есть основная проблематика данной работы.

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

Информационная система - это система, которая информируют пользователя системы о той или иной сфере жизнедеятельности человека. Например: информационная система "Зарплата по НИР", в которой содержится информация о сотрудниках разных кафедр, которые ведут научные исследования. Структуру информационной системы составляет совокупность отдельных ее частей, называемых подсистемами.

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

Главная цель программной части, используя семантические моделирование и эвристическое программирование вывести диалог человека с информационной системой на совершенный, инновационный уровень сольватации, называемый «интеллектуальной система» (экспертной системой).

Интеллектуальная система- это система искусственного интеллекта, предназначенная для решения плохо формализованных и слабо структурированных задач в определенных проблемных областях, на основе заложенных в ней знаний специалистов-экспертов.

По определению Комитета по Экспертным Системам Британского Компьютерного Общества, под экспертной системой понимается «воплощение в ЭВМ компонента опыта эксперта, основанного на знании, в такой форме, что машина может дать интеллектуальный совет или принять интеллектуальное решение относительно обрабатываемой функции».

Желательная дополнительная характеристика (которую многие считают главной) - способность системы по требованию объяснить ход своих рассуждений понятным для спрашивающего образом.

Итак, экспертная система способна вырабатывать рекомендации, какие бы дал эксперт-человек, запрашивая при необходимости дополнительную информацию. Экспертные системы могут работать на том же уровне что и эксперты, а в некоторых случаях они лучше, потому что в них вложен коллективный опыт их создателей.

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

Предметом теории экспертных систем служат методы и приемы конструирования систем, компетентных в некоторой узкоспециальной области. Эта компетентность состоит из знания конкретной области, понимания задач из этой области и из умения решать некоторые такие задачи. Знания, относящиеся к любой специальности, обычно существуют в двух видах: общедоступные и индивидуальные. Общедоступные знания - это факты, определения и теории, которые обычно изложены в учебниках и справочниках по данной области. Но, как правило, компетентность означает нечто большее, чем владение такими общедоступными сведениями.

Специалисты в большинстве случаев обладают ещё и индивидуальными знаниями, которые отсутствуют в опубликованной литературе. Эти личные знания в значительной степени состоят из эмпирических правил - эвристик, которые позволяют экспертам при необходимости выдвигать разумные предположения, находить перспективные подходы к задачам и эффективно работать при зашумленных или неполных данных. Центральной задачей при построении экспертных систем является выявление и воспроизведение таких знаний.

Экспертные системы предназначены для качественного решения задач в определенной разработчиками области, в редких случаях - областях. Экспертное знание - это сочетание теоретического понимания проблемы и практических навыков ее решения, эффективность которых доказана в результате практической деятельности экспертов в данной области.

Фундаментом экспертной системы любого типа является база знаний, которая составляется на основе экспертных знаний специалистов. Правильно выбранный эксперт и удачная формализация его знаний позволяет наделить экспертную систему уникальными и ценными знаниями. Врач, к примеру, хорошо диагностирует болезни и эффективно назначает лечение, не потому, что он обладает некими врожденными способностями, а потому что имеет качественное медицинское образование и большой опыт в лечении своих пациентов. Поэтому ценность всей экспертной системы как законченного продукта на 90% определяется качеством созданной базы знаний. Экспертная система - это не простая программа, которая пишется одним или несколькими программистами.

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

Далее эксперт раскрывает список симптомов, которые сопровождают каждое заболевание и в заключение рассказывает об известных ему методах лечения. Инженер по знаниям, формализует всю полученную информацию в виде базы знаний и помогает программисту в написании экспертной системы

1.1 Эвристическое программирование в экспертных системах

Экспемртная системма -- компьютерная программа, способная частично заменить специалиста-эксперта в разрешении проблемной ситуации. Современные ЭС начали разрабатываться исследователями искусственного интеллекта в 1970-х годах, а в 1980-х получили коммерческое подкрепление. Предтечи экспертных систем были предложены в 1832 году С. Н. Корсаковым, создавшим механические устройства, так называемые «интеллектуальные машины», позволявшие находить решения по заданным условиям, например определять наиболее подходящие лекарства по наблюдаемым у пациента симптомам заболевания.

В информатике экспертные системы рассматриваются совместно с базами знаний, как модели поведения экспертов в определенной области знаний с использованием процедур логического вывода и принятия решений.

База знаний - наиболее важная компонента экспертной системы, на которой основаны ее «интеллектуальные способности». В отличие от всех остальных компонент ЭС, база знаний- «переменная » часть системы, которая может пополняться и модифицироваться инженерами знаний и опыта использование ЭС, между консультациями (а в некоторых системах и в процессе консультации). Существует несколько способов представления знаний в ЭС, однако общим для всех них является то, что знания представлены в символьной форме (элементарными компонентами представления знаний являются тексты, списки и другие символьные структуры). Тем самым, в ЭС реализуется принцип символьной природы рассуждений, который заключается в том, что процесс рассуждения представляется как последовательность символьных преобразований.

Наиболее распространенный способ представления знаний - в виде конкретных фактов и правил, по которым из имеющихся фактов могут быть выведены новые. Факты представлены, например, в виде троек:

(АТРИБУТ ОБЪЕКТ ЗНАЧЕНИЕ).

Такой факт означает, что заданный объект имеет заданный атрибут (свойства) с заданным значением. Например, тройка (ТЕМПЕРАТУРА ПАЦИЕНТ1 37.5) представляет факт «температура больного, обозначаемого ПАЦИЕНТ1, равна 37.5». В более простых случаях факт выражается неконкретным значением атрибута, а каким либо простым утверждением, которое может быть истинным или ложным, например: «Небо покрыто тучами». В таких случаях факт можно обозначить каким-либо кратким именем (например, ТУЧИ) или использовать для представления факта сам текст соответствующей фразы.

Правила в базе знаний имеют вид:

ЕСЛИ А ТО S, где А- условие; S- действие. Действие S исполняется, если А истинно. Наиболее часто действие S, так же, как и условие, представляет собой утверждение, которое может быть выведено системой (то есть становится ей известной), если истинно условие правила А.

Правила в базе знаний служат для представления эвристических знаний (эвристик), т.е. неформальных правил рассуждения, вырабатываемых экспертом на основе опыта его деятельности, что является важнейшей частью функционирования интеллектуальных экспертных систем. Обычная процедура построения моделей методом эвристического программирования строится следующим образом. Испытуемым предлагается решать некоторую задачу, сопровождая свои размышления устными комментариями хода своих рассуждений. Все высказывания испытуемых тщательно протоколируются. Затем протоколы подвергают анализу с целью выявления хода решения, характера применяемых операций, догадок, приемов и т.п. Полученный в ходе анализа материал используется при составлении компьютерной программы - модели данного вида поведения. Таким образом, программа является моделью не испытуемого, а протокола. Такая модель должна выполнять то, что делает испытуемый и так, как это делает он. Следующий этап процедуры связан с исследованием работы модели при решении задач того же типа, которые предлагались испытуемым. Если процесс решения отклоняется от зафиксированного в протоколе, программа дорабатывается. Для этого могут быть поставлены новые эксперименты с испытуемыми, получены новые протоколы и т. д. Использование описанной методики связано с рядом затруднений. При самоотчете испытуемый не в состоянии выделить и прокомментировать все без исключения шаги выполненного им решения, особенно если они связаны с догадками, не осознаваемыми заключениями и т.п. Соответственно такие шаги не попадают в протокол и исследователь должен самостоятельно заполнять разрывы, опираясь на собственные знания и догадки. Поэтому правильнее будет говорить, что окончательная программа моделирует гипотезу исследователя об изучаемом процессе гипотезу, основанную на протоколе и определенных данных из области психологии. Ряд трудностей заключается также в проведении анализа и интерпретации протокольных записей. Здесь необходима типизация приемов анализа и разработка мер, ограничивающих произвольность интерпретаций.

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

Экспертная система Dendral одной из первых использовала эвристические знания специалистов для достижения уровня эксперта в решении задач, однако методика современных экспертных систем связана с другой разработкой - Myсin. В ней использовались знания экспертов медицины для диагностики и лечения специального менингита и бактериальных инфекций крови. Экспертная система Mycin, разработанная в том же Стэнфорде в середине 1970-х г.г., одной из первых обратилась к проблеме принятия решений на основе ненадежной или недостаточной информации. Все рассуждения экспертной системы Mycin были основаны на принципах управляющей логики, соответствующих специфике предметной области. Многие методики разработки экспертных систем, использующиеся сегодня, были впервые разработаны в рамках проекта Mycin. На сегодняшний день создано уже большое количество экспертных систем. С помощью них решается широкий круг задач, но исключительно в узкоспециализированных предметных областях. Как правило, эти области хорошо изучены и располагают более менее четкими стратегиями принятия решений. Сейчас развитие экспертных систем несколько приостановилось, и этому есть ряд причин: Передача экспертным системам «глубоких» знаний о предметной области является большой проблемой. Как правило, это является следствием сложности формализации эвристических знаний экспертов. Экспертные системы неспособны предоставить осмысленные объяснения своих рассуждений, как это делает человек. Как правило, экспертные системы всего лишь описывают последовательность шагов, предпринятых в процессе поиска решения. Отладка и тестирование любой компьютерной программы является достаточно трудоемким делом, но проверять экспертные системы особенно тяжело. Это является серьезной проблемой, поскольку экспертные системы применяются в таких критичных областях, как управление воздушным и железнодорожным движением, системами оружия и в ядерной промышленности. Экспертные системы обладают еще одним большим недостатком: они неспособны к самообучению. Для того, чтобы поддерживать экспертные системы в актуальном состоянии необходимо постоянное вмешательство в базу знаний инженеров по знаниям. Экспертные системы, лишенные поддержки со стороны разработчиков, быстро теряют свою востребованность. В заключение стоит отметить, что несмотря на все эти ограничения и недостатки, экспертные системы уже доказали всю свою ценность и значимость во многих важных приложениях.

2. Формальное представление системы программирования Prolog, как языка предикатов математической логики

Смена поколений вычислительной техники приводится к очередной научно технической революции. С появлением нового поколения ЭВМ не только стал решаться принципиально новый класс задач во всех отраслях науки и техники, но и существенно расширяются возможности при решении прежних традиционных задач на новом, более качественном, уровне. Более высокий качественный уровень в решении задач предполагает обеспечение необходимой и достаточной интеллектуальной поддержкой. Интеллектуализация информационно-вычислительных систем это использование не только нового поколения инструментальных средств, но и нового поколения математического, алгоритмического и программного обеспечения для решения сложных задач.

Искусственный интеллект (ИИ) - это программная система, имитирующая на компьютере мышление человека. Для создания такой системы необходимо изучать процесс мышления человека, решающего определенные задачи или принимающего решения в конкретной области, выделить основные шаги этого процесса и разработать программные средства, воспроизводящие их на компьютере.

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

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

В отличие от специализированных систем ИИ экспертные системы могут быть отнесены к системам ИИ общего назначения - системам, которые не только исполняют заданные процедуры, но на основе мета процедур поиска генерируют и используют процедуры решения новых конкретных задач. Логические основы работы системы Пролог-Д. В последнее время к разработке экспертных систем все чаще стал привлекаться специализированный языка искусственного интеллекта Пролог. Свое название Пролог получил от сокращения «Программирование логики». Математической основой языка программирования Пролог являются исчисления предикатов преимущественно первого порядка, метод резолюции, теория рекурсивных функций. В настоящее время создано большое число различных по эффективности и мощности Пролог-систем, каждая из которых предлагает свой синтаксис языка и свой набор встроенных предикатов.

Математическая логика является теоретической основой логического программирования. Цель данного раздела определить начальные понятия математической логики, необходимые для изложения принципов работы с системой. Пролог-Д. Интерпретатор языка Пролог предназначен для проведения практикума на персональных компьютерах с базами знаний, экспертными системами и изучением принципов логического вывода в системах искусственного интеллекта.

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

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

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

Формализм исчисления предикатов первого порядка оказался удобным для описания постановки задачи на языке, близком к естественному. Таким образом, язык Пролог имеет четкую математическую основу. В основе языка лежит исчисление предикатов первого порядка, и в этом смысле язык является подмножеством формальной логики. Но Пролог включает не все формальное исчисление, а только некоторое его подмножество, представленное Хорновскими дизъюнктами.

Дадим несколько определений. Пусть имеется некоторое множество объектов, называемое предметной областью. Выражение P(X1, X2, …, Xn), где Xi, i=1,…,n - так называемые предметные переменные, а P принимает значения 0 или 1, называется логической функцией или предикатом. Предикат от n переменных называют n-местным.

Предикат P(X1, X2, …, Xn) задает отношение между элементами X1,X2,…,Xn и обозначает высказывание, что «X1,X2,…,Xn находятся между собой в отношении P». Например, если отношение родитель(X,Y) означает, что X является родителем для Y (но не наоборот!), то высказывание родитель(«царь Петр I», «царевич Алексей») является истинным, а отношение родитель («царь Петр I», «царевна Софья») - ложным. Важно понимать, что имена отношений и их размерность («арность») произвольны и зависят только от целей их использования.

Из подобного рода элементарных отношений с помощью логических связок образуют более сложные отношения, которые в свою очередь являются предикатами, то есть могут принимать те же значения - «истина» или «ложь». В качестве связок используются конъюнкция (логическое И), дизъюнкция (логическое ИЛИ), импликация (логическое следование), отрицание, эквивалентность.

Рассмотрим классический пример рассуждений с использованием логических связок. Пусть имеются следующие рассуждения на естественном языке (в данном случае - аксиомы):

Все люди смертны.

Сократ - человек.

Теорема, логически вытекающая из этих двух аксиом:

Сократ смертен.

Эти аксиомы можно переписать так (в терминах исчисления предикатов):

Для всех X, если X - человек, то смертен X

И человек(Сократ )

Соответственно наш пример можно перевести на Пролог (пока еще без учета синтаксиса версии PDC Prolog):

смертен( Х) :- человек ( Х ).

человек(сократ).

Здесь собственное имя «Сократ», представляющее строковую константу, записано с маленькой буквы, поскольку во всех версиях Пролога с большой буквы записывается имя переменной. При работе этой небольшой программы можно задать системе вопрос: является ли Сократ смертным, и система ответит «Да»:

? смертен(сократ).

Да

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

Язык Пролог в 1980-х годах был включен в ряд советских вузовских и школьных учебников информатики для изучения элементов математической логики, принципов логического программирования и проектирования баз знаний и моделей экспертных систем. С этой целью на IBM PC и ряде советских школьных компьютеров были реализованы учебные русскоязычные интерпретаторы Пролога.

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

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

Интерес к Прологу поднимался и затихал несколько раз, энтузиазм сменялся жёстким неприятием. Наиболее высоко был поднят интерес к языку Пролог, как к языку будущего, во время разработок японской национальной программы компьютеров пятого поколения в 1980-х годах, когда разработчики надеялись, что с помощью Пролога можно будет сформулировать новые принципы, которые приведут к созданию компьютеров более высокого уровня интеллекта.

3.Оценка процедурной части программы «TreeFound»

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

Таким образом, экспертная система, базирующаяся на правилах (на Турбо-Прологе) содержит множество правил, которые вызываются посредством входных данных в момент сопоставления. Экспертная система также содержит интерпретатор в механизме вывода, который выбирает и активизирует различные модули системы.

Работу этого интерпретатора можно описать последовательностью трех шагов:

1. Интерпретатор сопоставляет образец правила с элементами данных в базе знаний.

2. Если можно вызвать более одного правила,то интерпретатор использует механизм разрешения конфликта для выбора правила.

3. Интерпретатор применяет выбранное правило , чтобы найти ответ на вопрос.

Этот трех шаговый процесс интерпретации является циклическим и называется циклом "распознавание-действие".

В системе, базирующейся на правилах, количество продукционных правил определяет размер базы знаний. Некоторые наиболее сложные системы имеют базы знаний с более чем 5000 продукционных правил.

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

2. Избегать противоречащих продукционных правил.

3. Конструировать правила, опираясь на структуру присущую предметной области.

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

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

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

Интерпретатор выполняет различные функции внутри системы на основе следующей схемы:

1. Система имеет предложения в базе знаний, которые управляют поиском и сопоставлением. Интерпретатор сопоставляет эти предложения с элементами данных в базе данных.

2. Если может быть вызвано более одного правила , то система использует возможности Турбо-Пролога для разрешения конфликта. Следовательно пользователю/программисту не нужно рассматривать потенциально возможные конфликты.

3. Система получает результаты унификационного процесса автоматически, поэтому они могут направляться на нужное устройство вывода информации.

Так же как и в системе, базирующейся на правилах, данный циклический процесс является процессом распознавание-действие.

Красота и большие возможности системы, основанной на логике, заключаются в том, что она отражает структуру самого Турбо-Пролога. Этим объясняется тот факт, что она очень эффективна в работе.

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

Структура базы знаний экспертной системы для выбора породы дерева.

Для идентификации породы внутри каждого подмножества можно использовать список атрибутов. Количество характеристик будет определять степень точности классификации. Различающей не обязательно является какая-нибудь единственная характеристика - все множество атрибутов используется для достижения целей в строящихся правилах.

Все перечисленные ниже атрибуты являются необходимыми, так как ни один из них не характерен для всех пород одновременно.

1) лиственная;

2) хвойная;

3) мягкая;

4) твердая;

5) очень твердая;

6) серо-коричневая;

7) светло-красная;

8) светлая;

9) темная;

10) смолистая;

11) очень смолистая;

12) Крупная текстура;

13) Мелкая текстура.

Каждая характеристика для конкретной породы либо верна, либо не верна.

Для каждой породы справедливы следующие характеристики:

Порода Характеристики

Дуб 1,4,6,13

Бук 1,4,7,12

Осина 1,3,8,13

Тис 1,5,9

Ель 2,3,8,10

Сосна 2,3,8,11

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

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

Сначала необходимо сделать декларации базы данных. База данных будет хранить ответы пользователя на вопросы системы пользовательского интерфейса (СПИ). Эти данные являются утвердительными или отрицательными ответами.

Далее нужно объявить предикаты для выполнения вывода (машина вывода) и для взаимодействия с пользователем (система пользовательского интерфейса).

Все вместе это следующие декларации:

database

xpositive(symbol,symbol)

xnegative(symbol,symbol)

predicates

do_expert_job

do_consulting

ask(symbol,symbol)

dog_is(symbol)

it_is(symbol)

positive(symbol,symbol)

negative(symbol,symbol)

remember(symbol,symbol,symbol)

clear_facts

Предикаты базы данных xpositive и xnegative используются для хранения утвердительных и отрицательных ответов пользователя. Первые четыре предиката нужны для взаимодействия с пользователем, а остальные шесть - для механизма вывода.

Должны быть составлены восемь продукционных правил : по одному для каждой породы. Каждое правило должно идентифицировать породу по признаку принадлежности к группе. Правило it_is производит эту идентификацию. Затем правило positive идентифицирует характеристики собаки в каждом случае.

И it_is и positive используются механизмом вывода. Ниже приведено полное продукционное правило для дуба:

tree_is("Дуб"):-

positive(tree,"Лиственная"),

positive(tree,"Твердая"),

positive(tree,"Серо_Коричневая"),

positive(tree,"Мелкая_текстура"),!.

Механизм вывода должен иметь правила для управления данными вводимыми пользователем, для сопоставления их с продукционными правилами и сохранения "трассы" (или запоминания) отрицательных и утвердительных ответов. Правила positive и negative используются для сопоставления данных пользователя с данными в продукционных правилах. Правило remember (запоминание) производит добавление предложений с ответами yes (да) и no (нет), для использования при сопоставлении с образцом:

negative(X,Y) :-

xnegative(X,Y),!.

remember(X,Y,yes) :-

asserta(xpositive(X,Y)).

remember(X,Y,no) :-

asserta(xnegative(X,Y)),

fail.

Назначение системы пользовательского интерфейса (СПИ) - связь вводимых пользователем данных с системой логического вывода. Главный модуль do_expert_job (выполни экспертную работу) и модуль do_consulting (выполни консультацию) осуществляют эту связь. Модуль ask(X,Y) (спроси) запрашивает данные у пользователя и сохраняет ответы в базе знаний. Кроме того, окно обеспечивает дополнительное удобство во время консультации. Система пользовательского интерфейса частично приведена ниже:

do_expert_job :-

setup_window,

do_consulting,

write("Press space bar."),nl,

readch(_),

removewindow,

exit.

Заметьте, что главный модуль do_expert_job вызывает модули setup_window (установи окно) и do_consulting (выполни консультацию).

Консультирующий модуль имеет две альтернативные формы. Первая взаимодействует с механизмом вывода; если результат цикла "распознавание - действие" положительный, то результат сообщается пользователю. Вторая форма сообщает о негативном результате. Теперь можно соединить отдельные компоненты и сформировать полную экспертную систему на правилах для выбора породы дерева.

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

Заключение

В результате моей работы, мною было выявлено следующее: Информационные Системы с фрагментарным либо полным внедрением кода языков логики - это новый этап становления информационных технологий и информатизации в мире. Анализ структурной части ИС дал огромную базу сравнительной части по языку Prolog, как решающему элементу максимы предикатов первого порядка.

Однако перед тем, как осуществлять проект внедрения ИС нужно максимально формализовать его цели и понять алгоритм синхронизации запросов пользователей с экспертной базой данных.

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

Нужно старательно подходить к выбору самих ИС, так как ошибки дорого обходятся; стараться посмотреть как можно больше систем, и посмотреть их "живьем", а не по маркетинговым материалам разработчиков. Не стоит пытаться разрабатывать систему силами своих программистов. Готовые системы разрабатываются специализированными коллективами на протяжении многих лет и имеют реальную себестоимость гораздо выше продажной цены - известный парадокс характерный для программных и интеллектуальных продуктов;

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

Нужно создать среди всех сотрудников предприятия атмосферу неотвратимости внедрения и стараться организационными мерами повысить темп освоения новых технологий интеллектуальных систем;

Созданная ранее система информационных связей в ИС перестала в полной мере соответствовать современным требованиям. Это объясняется, прежде всего, тем, что переход страны к рыночной экономике потребовал нового подхода к информационной и информационно-аналитической поддержке в сфере государственного управления. Информация стала рассматриваться как ресурс, без которого нельзя использовать современные технологии и методы управления. В связи с этим информационная система государственного управления постоянно видоизменяется, совершенствуется, приобретает новое качество.

Прежде всего, это достигается за счет использования современных автоматических информационных систем управления, новой компьютерной техники и других средств коммуникации. Распространение получают комбинированные информационные системы, сочетающие механические средства ручного обращения с информацией, электронно-вычислительную технику и человеческий разум. Есть несколько направлений деятельности по формированию таких систем. Одно - чисто технико-технологическое, решаемое кибернетиками и другими специалистами в области электронно-вычислительной техники и информатики. Другое - непосредственно управленческое - состоит в стандартизации и унификации управленческой информации, и продвижение по нему идет пока медленно. В результате существуют как бы две подсистемы в управлении, недостаточно связанные между собой: подсистема управленческой информации, которая обрабатывается в ручную, передается обычными почтовыми, телеграфными и телефонными средствами, выражается часто в произвольной форме и субъективистски ориентированным содержанием; другая же приспособлена к условиям и требованиям электронно-вычислительной техники, обрабатывается и передается ею. Информатика как новая механизированная технология сбора, передачи, переработки и использования информации, основанная на новейших ЭВМ и периферийных устройствах, средствах коммуникации и взаимосвязях человека с информацией, занимает незначительное место в информационном обеспечении государственного управления. Третье направление связано с тем, что информация в государственном управлении при обработке и хранении ее любыми средствами во многом имеет правовой характер, основана на правовых нормах и часто служит юридическим основанием для принятия управленческих решений. Сегодня имеется возможность не только давать информацию на обработку машинам и потом пользоваться подготовленными ими материалами, а через информационную систему, точнее, через средства информатики вырабатывать и реализовывать целеполагающие, организующие и регулирующие воздействия, получать и оценивать отчетную, учетную и контрольную информацию, вести прямой разговор с иными управляющими и управляемыми компонентами. Для этого надо юридически решить вопросы о непосредственном сочленении информационной системы и системы государственного управления, а также о полномочиях должностных лиц совершать юридически значимые действия путем введения соответствующей информации в информационную систему. Многие споры вокруг проблемы создания искусственного интеллекта имеют эмоциональную подоплеку. Признание возможности искусственного разума представляется чем-то унижающим человеческое достоинство. Однако нельзя смешивать вопросы возможностей искусственного разума с вопросом о развитии и совершенствовании человеческого разума. Повсеместное использование ИИ создаёт предпосылки для перехода на качественно новую ступень прогресса, даёт толчок новому витку автоматизации производства, а значит и повышению производительности труда. Разумеется, искусственный разум может быть использован в негодных целях, однако это проблема не научная, а скорее морально-этическая.

Список использованных источников

1. Джонсон Дж.Л., Корт Д.М. Информационные системы и их роль в мировом IT-пространстве: учеб. пособие. М.:Ника, 2008. 368 с.

2. Искусственный интеллект и интеллектуальные системы управления:

И.М. Макаров, В. М. Лохин, С. В. Манько, М. П. Романов -- Санкт-Петербург, Наука, 2006 г.- 336 с.

3. Щанкина Н.С. Особенности образа другого человека у учащихся с интеллектуальной недостаточностью: Дис. … канд. психол. наук. - Н.Новгород, 2004. - 188 с.

4. Холодная М.А. Психология интеллекта. Парадоксы исследования. - 2-е изд., перераб.и доп. - СПб.: Питер, 2002. - 264 с.

5. Тэйс А. и др. Логический подход к искусственному интеллекту. От классической логики к логическому программированию: Пер. с фр. М.:Мир, 1990, 429 с.

6. Complex Problem Solving / Под ред. Н. Н. Куссуль. -- 4-е изд -- М.: Вильямс, 2005. -- 864 с. -- 2000 экз. -- ISBN 5-8459-0437-4 9. Девятков В. В. Системы искусственного интеллекта / Гл. ред. И. Б. Фёдоров. -- М.: Изд-во МГТУ им. Н. Э. Баумана, 2001. -- 352 с.

7.Адаменко А.Н., Кучуков А.М. Логическое программирование и Visual Prolog.-СПб.:БХВ-Петербург, 2003.-992 с.

8. Шихов Е. Варианты реализации искусственного интеллекта - ресурс [Электрон. ресурс] [сайт]. [2010]. URL: http://neural.narod.ru/ (дата обращения: 12.12.2012).

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

...

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

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

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

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

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

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

    лабораторная работа [1,3 M], добавлен 07.10.2014

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

    курс лекций [1,1 M], добавлен 14.01.2011

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

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

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

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

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

    курс лекций [538,1 K], добавлен 16.06.2012

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

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

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

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

  • История развития искусственного интеллекта. Экспертные системы: их типы, назначение и особенности, знания и их представление. Структура идеальной и инструменты построения экспертных систем. Управление системой продукции. Семантические сети и фреймы.

    реферат [85,7 K], добавлен 20.12.2011

  • Понятие искусственного интеллекта как свойства автоматических систем брать на себя отдельные функции интеллекта человека. Экспертные системы в области медицины. Различные подходы к построению систем искусственного интеллекта. Создание нейронных сетей.

    презентация [3,0 M], добавлен 28.05.2015

  • Организационно-штатная структура конструкторского отдела систем управления технологическим оборудованием предприятия. Обоснование технологии разработки автоматизированной системы программирования логики промышленных роботов. Моделирование данных.

    дипломная работа [7,8 M], добавлен 23.06.2012

  • Эволюция систем искусственного интеллекта. Направления развития систем искусственного интеллекта. Представление знаний - основная проблема систем искусственного интеллекта. Что такое функция принадлежности и где она используется?

    реферат [49,0 K], добавлен 19.05.2006

  • Определение экспертных систем, их достоинство и назначение. Классификация экспертных систем и их отличие от традиционных программ. Структура, этапы разработки и области применения. Классификация инструментальных средств и технология разработки систем.

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

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

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

  • Обзор методов реализации алгоритмов искусственного интеллекта. Примеры интеллектуальных систем, основанных на алгоритмах самообучения и кластеризации данных. Создание общей структурной схемы. Выбор языков программирования и инструментальных средств.

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

  • Классификация экспертных систем и программного обеспечения для их разработки. Практическое применение искусственного интеллекта на машиностроительных предприятиях и в экономике. Составление дерева решения. Язык функционального программирования LISP.

    курсовая работа [542,6 K], добавлен 12.12.2013

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

    реферат [260,9 K], добавлен 25.06.2015

  • Инструментальные средства проектирования интеллектуальных систем. Анализ традиционных языков программирования и представления знаний. Использование интегрированной инструментальной среды G2 для создания интеллектуальных систем реального времени.

    контрольная работа [548,3 K], добавлен 18.05.2019

  • Обзор образовательных стандартов педагогического образования в области искусственного интеллекта. Построение модели предметной области в виде семантических сетей. Характеристика проблемного обучения. Основные средства языка программирования Пролог.

    дипломная работа [387,8 K], добавлен 01.10.2013

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