Автор: Пользователь скрыл имя, 20 Марта 2011 в 14:02, реферат
Технология экспертных систем является одним из направлений новой области исследования, которая получила наименование искусственного интеллекта. Исследования в этой области сконцентрированы на разработке и внедрении компьютерных программ, способных имитировать, воспроизводить те области деятельности человека, которые требуют мышления, определенного мастерства и накопленного опыта.
Введение.
Глава 1. Введение в сущность экспертных систем. 4 ст.
1.1. История развития экспертных систем. 4 ст.
1.2. Определение экспертных систем. Главное достоинство и назначение
экспертных систем. 9 ст.
Глава 2. Инструментальные средства разработки. 13 ст.
2.1. Общая характеристика инструментальных средств для построения экспертных систем. 13 ст.
2.2. Оболочки экспертных систем. 15 ст.
2.3. Языки программирования высокого уровня. 18 ст.
2.3.1. Языки описания порождающих правил. 19 ст.
2.3.2. Объектно-ориентированные языки. 20 ст.
2.3.3. Языки логического программирования экспертных систем. 22 ст.
2.3.4. Многофункциональные программные среды. 23 ст.
Глава 3. Использование инструментальных средств. 25 ст.
3.1. Характерные сложности и способы их избежать. 25 ст.
3.2. Выбор подходящего инструментария для разработки экспертной
системы. 26 ст.
3.3. Практическое освоение инструментальных средств. 30 ст.
Заключение .
Список используемой литературы. 33 ст.
Глава 2.
Инструментальные средства разработки
2.1. Общая
характеристика
При разработке практически всех инструментальных средств за основу принимается методология автоматизации проектирования на базе использования прототипов. По отношению к программному обеспечению термин прототип означает "работающую модель программы, которая функционально эквивалентна подмножеству конечного продукта [Schach, 1993]. Идея состоит в том, чтобы на ранней стадии работы над проектом разработать упрощенную версию конечной программы, которая могла бы послужить доказательством продуктивности основных идей, положенных в основание проекта. Прототип должен быть способен решать какую-либо из нетривиальных задач, характерных для заданной области применения. На основе анализа опыта работы с прототипом разработчики могут уточнить требования к системе в целом и ее Основным функциональным характеристикам. Работоспособность прототипа может послужить очевидным доказательством возможности решения проблем с помощью создаваемой системы еще до того, как на ее разработку будут потрачены значительные средства.
После
всестороннего анализа прототип
откладывается в сторону и
начинается разработка рабочей версии
программы, которая должна решать весь
комплекс задач, определенных в спецификации
проекта. Процесс разработки экспертной
системы, как правило, состоит из
последовательности отдельных этапов,
на которых наращиваются возможности
системы, причем каждый из этапов подразделяется
на фазы проектирования, реализации, компоновки
и тестирования. В результате после
каждого этапа наращивания
Такая
методика проектирования несколько
отличается от методики разработки программ
других видов. При создании большинства
программных продуктов чаще используется
другая модель процесса— сначала
разрабатывается спецификация продукта,
затем выполняется
По своему назначению и функциональным возможностям инструментальные программы, применяемые при проектировании экспертных систем, можно разделить на четыре достаточно больших категории.
1.
Оболочки экспертных систем (expert
system shells). Системы этого типа создаются,
как правило, на основе какой-
2.
Языки программирования
3.
Среда программирования, поддерживающая
несколько парадигм (multiple-paradigm programming
environment). Средства этой категории
включают несколько
4.
Дополнительные модули. Средства
этой категории представляют
собой автономные программные
модули, предназначенные для
2.2. Оболочки
экспертных систем
Класс
программ, которые мы называем оболочкой
экспертной системы, создавался с целью
позволить непрограммистам
Совершенно
очевидно, что оболочки являются программами,
ориентированными на достаточно узкий
класс задач, хотя и более широкий,
чем та программа, на основе которой
была создана та или иная оболочка.
Автор системы EMYCIN Ван Мелле (van Melle)
одним из первых подчеркнул, что
оболочки отнюдь не являются универсальной
архитектурой для решения проблем.
Разработанная им система EMYCIN ориентирована
на те проблемы диагностирования с
большими объемами данных, которые
поддаются решению с помощью
дедуктивного подхода в предположении,
что пространство диагностических
категорий стационарно. Кленси (Clancey)
назвал класс подобных проблем "проблемами
эвристической классификации". Однако
этот подход значительно меньше подходит
для решения проблем
К
сожалению, нельзя слишком доверять
рекомендациям о возможности
использования оболочки для решения
конкретных проблем. Дело в том, что
мы еще не имеем настолько четкого
представления о классификации
задач, решаемых экспертными системами,
чтобы можно было точно представить,
к какому именно классу следует отнести
конкретную систему. Классификации
задач, пригодных для решения
экспертными системами, посвящено
довольно много работ, из которых
следует отметить сборник [Hayes-Roth et al,
1983] и статью [Chandrasekaran, 1984]. Может создаться
впечатление, что отличить задачу классификации
от задачи конструирования можно
и "невооруженным глазом", но это
впечатление обманчиво. Множество
проблем допускает решение
Мы еще остановимся на общем подходе к выбору инструментальных средств для построения конкретных экспертных систем. Но если речь идет конкретно об оболочках, то уже сейчас нужно отметить, что большинство коммерческих продуктов этого типа подходит только для тех проблем, в которых пространство поиска невелико. Как правило, в них применяется метод исчерпывающего поиска с построением обратной цепочки вывода и ограниченными возможностями управления процессом. Но некоторые современные оболочки, например М.4, как утверждают их создатели, могут применяться для решения широкого круга задач, поскольку они поддерживают множество функций представления знаний и управления, включая и моделирование прямой цепочки логического вывода, процедуры, передачу сообщений.
Простота языков представления знаний, применяемых в большинстве оболочек, является, с одной стороны, достоинством, а с другой — недостатком такого рода систем. На это обратила внимание Эйкинс в критическом замечании по поводу реализации экспертной системы PUFF на базе оболочки EMYCIN [Aikins, 1983].
Недостаточная структурированность набора порождающих правил в EMYCIN также затрудняет и восприятие новых знаний, поскольку добавление в базу знаний нового правила требует внесения изменений в различные компоненты системы. Например, нужно вносить изменения в таблицы знаний, содержащие информацию о медицинских параметрах. Это одна из проблем, решением которой гордятся создатели системы TEIRESIAS.
Основным методом формирования суждений в EMYCIN является построение обратной цепочки вывода. При этом используется множество правил мета- и объектного уровня. В результате очень сложно формировать исчерпывающее и понятное для пользователя пояснение. Как отмечал Кленси ([Clancey, 1983])те решения, которые принимаются на этапе программирования правил, в частности касающиеся порядка и количества выражений в антецедентной части, могут разительным образом повлиять на путь поиска в пространстве решений в процессе функционирования системы.
Другое
критическое замечание Эйкинс касается
не столько конкретной системы PUFF или
EMYCIN, сколько функциональных возможностей
систем, базирующихся на правилах, в
общем, а следовательно, и всех оболочек,
в которых порождающие правила
используются в качестве основного
языка представления знаний. Значительная
часть экс-пертности — это
знания о типовых случаях, т.е. довольно
часто встречающихся в
Последнее замечание по поводу использования оболочек касается механизма обработки неопределенности. Такие оболочки, как М.1, уже включают в себя определенный формальный механизм работы с неопределенностью, например основанный на использовании коэффициентов уверенности. Однако большинство, если не все использованные в оболочках механизмы такого рода, не согласуются с выводами теории вероятностей и обладают свойствами, которые с трудом поддаются анализу. Конечно, конкретному методу обработки неопределенности при решении конкретной задачи в данной предметной области можно дать прагматическое обоснование, как поступил, например, Шортлифф (Shortliffe) по отношению к схеме обработки коэффициентов уверенности в системе MYCIN. Но вряд ли оправданно распространять этот аппарат на другие области применения, встроив его в оболочку.
По
сравнению с первыми
2.3. Языки
программирования высокого
Языки высокого уровня являются в руках опытного программиста прекрасным средством быстрого создания прототипа экспертной системы, позволяют обеспечить гибкость процесса разработки при одновременном снижении материальных затрат и сокращении сроков выполнения проекта. Как правило, среда разработки таких языков обеспечивает совмещение интерфейса разработки и времени выполнения, что позволяет совместить вставку, редактирование и тестирование фрагментов программного кода. Но пользовательский интерфейс такой среды уступает интерфейсу оболочек по части "дружественности", что, правда, не мешает опытному программисту быстро ее освоить.
Языки
описания порождающих правил, объектно-ориентированные
языки и процедурные
Информация о работе Представление знаний в информационных системах