Автор работы: Пользователь скрыл имя, 14 Мая 2013 в 21:25, реферат
В начале восьмидесятых годов в исследованиях по искусственному интеллекту сформировалось самостоятельное направление, получившее название "экспертные системы". Цель исследований по экспертных систем состоит в разработке программ, которые при решении задач, трудных для эксперта-человека, получают результаты, не уступающие по качеству и эффективности решениям, получаемым экспертом. Исследователи в области экспертных систем для названия своей дисциплины часто используют также термин "инженерия знаний", введенный Е. Фейгенбаумом как "привнесение принципов и инструментария исследований из области искусственного интеллекта в решение трудных прикладных проблем, требующих знаний экспертов".
№1 Введение в экспертные системы
В начале восьмидесятых годов в исследованиях по искусственному интеллекту сформировалось самостоятельное направление, получившее название "экспертные системы". Цель исследований по экспертных систем состоит в разработке программ, которые при решении задач, трудных для эксперта-человека, получают результаты, не уступающие по качеству и эффективности решениям, получаемым экспертом. Исследователи в области экспертных систем для названия своей дисциплины часто используют также термин "инженерия знаний", введенный Е. Фейгенбаумом как "привнесение принципов и инструментария исследований из области искусственного интеллекта в решение трудных прикладных проблем, требующих знаний экспертов".
Программные средства, базирующиеся на технологии экспертных систем, или инженерии знаний (в дальнейшем будем использовать их как синонимы), получили значительное распространение в мире. Важность экспертных систем состоит в следующем:
По мнению ведущих специалистов, в недалекой перспективе экспертные системы найдут следующее применение:
Экспертные системы предназначены для так называемых неформализованных задач, т.е. не отвергают и не заменяют традиционного подхода к разработке программ, ориентированного на решение формализованных задач, которые обладают одной или несколькими из следующих характеристик:
Следует подчеркнуть,
что неформализованные задачи представляют
большой и очень важный класс
задач.
Экспертные системы и системы искусственного
интеллекта отличаются от систем обработки
данных тем, что в них в основном используются
символьный (а не числовой) способ представления,
символьный вывод и эвристический поиск
решения (а не исполнение известного алгоритма).
По качеству и эффективности решения экспертные системы не уступают решениям эксперта-человека. Решения экспертных систем обладают "прозрачностью", т.е. могут быть объяснены пользователю на качественном уровне. Это качество экспертных систем обеспечивается их способностью рассуждать о своих знаниях и умозаключениях. Экспертные системы способны пополнять свои знания в ходе взаимодействия с экспертом.
Технология экспертных систем используется для решения различных типов задач: интерпретация, предсказание, диагностика, планирование, конструирование, контроль, отладка, инструктаж, управление. Применяется в самых разнообразных проблемных областях, таких, как финансы, нефтяная и газовая промышленность, энергетика, транспорт, фармацевтическое производство, космос, металлургия, горное дело, химия, образование, целлюлозно-бумажная промышленность, телекоммуникации и связь и др.
Коммерческие успехи к фирмам-разработчикам систем искусственного интеллекта (СИИ) пришли не сразу. На протяжении 1960 - 1985 гг. успехи ИИ касались в основном исследовательских разработок, которые демонстрировали пригодность СИИ для практического использования. Начиная примерно с 1985 г. (в массовом масштабе с 1988 - 1990 гг.), в первую очередь экспертные системы, а в последние годы системы, воспринимающие естественный язык (ЕЯ-системы), и нейронные сети стали активно использоваться в коммерческих приложениях.
Рисунок 1.1 отражает различные аспекты состояния рынка искусственного интелекта: инвестиции в разработку в области искусственного интелекта (США, Европа, Япония) (Рисунок 1.1, а); доля систем в информатике (программном обеспечении) (Рисунок 1.1, б); доходы от продаж традиционных языков программирования (Рисунок 1.1, в); инвестиции только в программное обеспечение (США) (Рисунок 1.1, г).
Надо отметить, что на заре появления экспертных систем специфика используемых в них языков, технологии разработки приложений и используемого специального оборудования (например, Lisp-машины) давала основания предполагать, что введение экспертных систем с традиционными, программными системами является сложной и, возможно, невыполнимой задачей при ограничениях, накладываемых реальными приложениями.
Рисунок 1.1 . Состояние и перспективы рынка искусственного интеллекта
Однако в настоящее время коммерческие инструментальные средства инструментальные средства для создания экспертных систем разрабатываются в полном соответствии с современными технологическими тенденциями традиционного программирования, что снимает проблемы, возникающие при создании интегрированных приложений.
Причины, приведшие СИИ к коммерческому успеху, следующие.
Интегрированность. Разработаны инструментальные средства искусственного интеллекта, легко интегрирующиеся с другими информационными технологиями и средствами (с CASE, СУБД, контроллерами, концентраторами данных и т.п.).
Открытость и переносимость. инструментальные средства искусственного интеллекта разрабатываются с соблюдением стандартов, обеспечивающих открытость и переносимость.
Использование языков традиционного программирования и рабочих станций. Переход от инструментальных средств искусственного интеллекта, реализованных на языках искусственного интеллекта (Lisp, Prolog и т.п.), к инструментальным средствам искусственного интеллекта, реализованным на языках традиционного программирования (С, C++ и т.п.), упростил обеспечение интегрированности, снизил требования приложений ИИ к быстродействию ЭВМ и объемам оперативной памяти. Использование рабочих станций (вместо ПК) резко увеличило круг приложений, которые могут быть выполнены на ЭВМ с использованием инструментальных средств искусственного интеллекта.
Архитектура клиент-сервер. Разработаны инструментальные средства искусственного интеллекта, поддерживающие распределенные вычисления по архитектуре клиент-сервер, что позволило: снизить стоимость оборудования, используемого в приложениях, децентрализовать приложения, повысить надежность и общую производительность (так как сокращается количество информации, пересылаемой между ЭВМ, и каждый модуль приложения выполняется на адекватном ему оборудовании).
Проблемно/предметно-
№2 Структура экспертных систем
Структура экспертных систем состоит из следующих основных компонентов: решателя (интерпретатора); рабочей памяти (РП), называемой также базой данных (БД); базы знаний (БЗ); компонентов приобретения знаний; объяснительного компонента; диалогового компонента.
База данных (рабочая память) предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по названию, но не по смыслу с термином, используемым в информационно-поисковых системах (ИПС) и системах управления базами данных (СУБД) для обозначения всех данных (в первую очередь долгосрочных), хранимых в системе.
Рисунок 1.2 Основные компоненты ЕС
База знаний (БЗ) в экспертных системах предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных этой области.
Решатель, используя исходные данные из рабочей памяти и знания из БЗ, формирует такую последовательность правил, которая приводит к решению задачи.
Компонент приобретения знаний автоматизирует процесс наполнения экспертных систем знаниями, осуществляемый пользователем-экспертом.
Объяснительный компонент объясняет, как система получила решение задачи (или почему она не получила решение) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.
Диалоговый компонент ориентирован на организацию дружественного общения с пользователем как в ходе решения задач, так и в процессе приобретения знаний и объяснения результатов работы.
В разработке экспертных систем участвуют представители следующих специальностей:
Необходимо отметить, что отсутствие среди участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания экспертных систем, либо значительно удлиняет его.
Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в экспертные системы знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы экспертных систем; осуществляет выбор того инструментального средства, которое наиболее подходит для данной проблемной области, и определяет способ представления знаний в этом инструментальных средств; выделяет и программирует (традиционными средствами) стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Программист разрабатывает инструментальные средства (если инструментальные средства разрабатывается заново), содержащее в пределе все основные компоненты экспертных систем, и осуществляет его сопряжение с той средой, в которой оно будет использовано.
Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме решения задачи (называемом также режимом консультации или режимом использования экспертных систем).
В режиме приобретения знаний общение с экспертными системами
осуществляет (через посредничество инженера
по знаниям) эксперт. В этом режиме эксперт,
используя компонент приобретения знаний,
наполняет систему знаниями, которые позволяют
экспертным системам в режиме решения
самостоятельно (без эксперта) решать
задачи из проблемной области. Эксперт
описывает проблемную область в виде совокупности
данных и правил. Данные определяют объекты,
их характеристики и значения, существующие
в области экспертизы. Правила определяют
способы манипулирования с данными, характерные
для рассматриваемой области.
Отметим, что режиму приобретения знаний
в традиционном подходе к разработке программ
соответствуют этапы алгоритмизации,
программирования и отладки, выполняемые
программистом. Таким образом, в отличие
от традиционного подхода в случае экспертных
систем разработку программ осуществляет
не программист, а эксперт (с помощью экспертных
систем), не владеющий программированием.
В режиме консультации общение с экспертными системами осуществляет конечный пользователь, которого интересует результат и (или) способ его получения. Необходимо отметить, что в зависимости от назначения экспертных систем пользователь может не быть специалистом в данной проблемной области (в этом случае он обращается к экспертным системам за результатом, не умея получить его сам), или быть специалистом (в этом случае пользователь может сам получить результат, но он обращается к экспертным системам с целью либо ускорить процесс получения результата, либо возложить на экспертную систему рутинную работу). В режиме консультации данные о задаче пользователя после обработки их диалоговым компонентом поступают в рабочую память. Решатель на основе входных данных из рабочей памяти, общих данных о проблемной области и правил из БЗ формирует решение задачи. Экспертные системы при решении задачи не только исполняет предписанную последовательность операции, но и предварительно формирует ее. Если реакция системы не понятна пользователю, то он может потребовать объяснения: "Почему система задает тот или иной вопрос?", "как ответ, собираемый системой, получен?".