Анализ инструментальных средств проектирования интеллектуальных информационных систем

Интеллектуальные информационные системы: понятие, классификация, этапы проектирования. Анализ предметной области и методы приобретения знаний. Моделирование деятельности нотариальной конторы в программной среде AllFusion Process Modeler в стандарте IDEF0.

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

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

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

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

Оглавление

  • Введение
  • Глава 1. Интеллектуальные информационные системы
    • 1.1 Понятие «интеллектуальные информационные системы». Классификация ИИС
    • 1.2 Особенности и признаки интеллектуальности информационных систем
  • Глава 2. Разработка и проектирование интеллектуальных информационных систем
    • 2.1 Этапы проектирования интеллектуальных систем
    • 2.2 Анализ предметной области и методы приобретения знаний
    • 2.3 Инструментальные средства проектирования интеллектуальных информационных систем
      • 2.3.1 Анализ традиционных языков программирования и представления знаний
      • 2.3.2 Современные программные средства построения интеллектуальных информационных систем
  • Глава 3. Моделирование деятельности нотариальной конторы
    • 3.1 Понятие «нотариата»
    • 3.2 Краткая информация о нотариальной конторе
    • 3.3 Видение выполнения проекта и границы проекта
    • 3.4 Отчет об обследовании
    • 3.5 Формирование бизнес-процессов
    • 3.6 Спецификация настроек информационной системы
    • 3.7 Проектирование реализаций операций бизнес-процесса в информационной системе
    • 3.8 Моделирование бизнес-процессов в программной среде AllFusion Process Modeler (BPwin) в стандарте IDEF0
  • Заключение
  • Список использованной литературы
    • Приложения

Введение

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

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

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

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

· экономический анализ;

· обоснование стратегических решений;

· инвестиционное проектирование;

· планирование, реорганизация и мониторинг бизнес-процессов;

· адаптация корпоративных информационных систем;

· создание и организация доступа к корпоративной памяти (хранилищу знаний).

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

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

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

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

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

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

· управление производством;

· производственное и внутрифирменное планирование и прогнозирование;

· управление маркетингом и сбытом;

· финансовый менеджмент;

· риск-менеджмент;

· банковская сфера;

· торговля;

· фондовый рынок.

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

В ходе работы были поставлены следующие задачи:

- рассмотреть основные определения и понятия, связанные с интеллектуальными информационными системами;

- выявить классификацию интеллектуальных информационных систем;

- изучить этапы разработки и проектирования интеллектуальных информационных систем;

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

- моделирование деятельности нотариальной конторы.

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

Глава 1. Интеллектуальные информационные системы

1.1 Понятие «интеллектуальные информационные системы». Классификация ИИС

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

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

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

· решать задачи, описанные только в терминах мягких моделей, когда зависимости между основными показателями являются не вполне определенными или даже неизвестными в пределах некоторого класса;

· способность к работе с неопределенными или динамичными данными, изменяющимися в процессе обработки, позволяет использовать ИИС в условиях, когда методы обработки данных могут изменяться и уточняться по мере поступления новых данных;

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

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

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

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

Отличительные особенности ИИС по сравнению с обычными ИС состоят в следующем:

· интерфейс с пользователем на естественном языке с использованием бизнес-понятий, характерных для предметной области пользователя;

· способность объяснять свои действия и подсказывать пользователю, как правильно ввести экономические показатели и как выбрать подходящие к его задаче параметры экономической модели;

· представление модели экономического объекта и его окружения в виде базы знаний и средств дедуктивных и правдоподобных выводов в сочетании с возможностью работы с неполной или неточной информацией;

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

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

ИИС можно классифицировать по разным основаниям. Мы выберем в качестве оснований классификации следующие: предметная область в экономике, степень автономности от корпоративной ИС или базы данных, по способу и оперативности взаимодействия с объектом, адаптивности, модели знаний (рис. 1.). На рисунке для примера приведены ИИС из областей менеджмента, риск-менеджмента и инвестиций. [1, стр. 64]

Рис 1. Классификация интеллектуальных информационных систем

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

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

1.2 Особенности и признаки интеллектуальности информационных систем

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

Знание имеет двоякую природу: фактуальную и операционную.

Фактуальное знание - это осмысленные и понятые данные. Данные сами по себе - это специально организованные знаки на каком-либо носителе.

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

Часто фактуальное знание называют экстенсиональным (детализированным), а операционное знание - интенсиональным (обобщенным).

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

Программа = Алгоритм (Правила преобразования данных + Управляющая структура) + Структура данных. [3, стр. 18]

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

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

В системах, основанных на обработке баз данных (СБД - Data Base Systems), происходит отделение фактуального и операционного знаний друг от друга. Первое организуется в виде базы данных, второе - в виде программ. Причем программа может автоматически генерироваться по запросу пользователя (например, реализация SQL или QBE запросов). В качестве посредника между программой и базой данных выступает программный инструмент доступа к данным - система управления базой данных (СУБД): СБД = Программа <=> СУБД <=> База данных.

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

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

Анализ структуры программы показывает возможность выделения из программы операционного знания (правил преобразования данных) в так называемую базу знаний, которая в декларативной форме хранит общие для различных задач единицы знаний. При этом управляющая структура приобретает характер универсального механизма решения задач (механизма вывода), который связывает единицы знаний в исполняемые цепочки (генерируемые алгоритмы) в зависимости от конкретной постановки задачи (сформулированной в запросе цели и исходных условий). Такие ИС становятся системами, основанными на обработке знаний (СБЗ - Knowledge Base (Based) Systems): СБЗ = База знаний <=> Управляющая структура <=> База данных. [2, стр. 24]

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

Глава 2. Разработка и проектирование интеллектуальных информационных систем

2.1 Этапы проектирования интеллектуальных систем

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

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

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

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

Процесс построения систем разделяется на пять этапов (рис. 2):

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

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

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

3. Выбор формализма представления знаний и определение механизма вывода решений. Эти компоненты моделирования в значительной степени влияют на успешное решение поставленной задачи по проектированию системы.

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

4. Выбор или разработка языка представления знаний. После того как правила сформулированы и представлены на выбранном языке представления, они заносятся инженером знаний в БЗ.

5. Тестирование системы.

Работоспособность системы определяется путем решения конкретных проверочных задач. При выявлении различных недостатков происходит обращение к тому или иному этапу разработки в зависимости от характера недостатков. При отсутствии каких-либо знаний в системе или их недостаточной определенности возвращаются к этапу 4 и по возможности вносят поправки. В случае если какие-либо знания, представленные экспертом практически невозможно представить в пределах формализма выбранной модели представления знаний, то возвращаются к этапу 3 и выбирают альтернативные модели или схемы представления знаний. Возможно, что причиной возврата может служить недостаточно адекватный базовый механизм логического вывода. Возникают ситуации, когда требуется переформулирование проблемы, так как исходная постановка задачи была неправильной. [1, стр. 73]

Рис. 2. Этапы проектирования ИИ [1, стр. 74]

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

· извлечение знаний из эксперта и передача их системе;

· выбор способа представления знаний в системе;

· выбор стратегии вывода (управления);

· выбор подсистемы объяснения;

· выбор подсистемы взаимодействия с пользователем;

· выбор адекватных средств реализации системы. Однако здесь, уже отсутствуют некоторые важные этапы, описанные выше.

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

1. Описание проблемной области: определение проблемной области, показывающее важность проблемы для всей организации; определение проблемных экспертов, желающих передать экспертизы (знания) базе знаний; подготовка и объявление плана развития.

2. Персонал: определение группы проектировщиков и соответствующих заданий; назначение квалифицированного руководителя проекта; установление и проведение в жизнь твердой линии управления.

3. Принятие проекта: проведение организационного заседания; обсуждение основного подхода к проблеме; подготовка специального плана развития; подготовка к монтажу необходимых технических средств и инструментария.

4. Прототип системы: развитие системного прототипа: тестирование; получение дополнительной информации о проблемной области по результатам тестирования.

5. Развитие полной системы: расширение базы знаний прототипа; оценивание структуры интерфейса пользователя; объединение средств обучения пользователей и документации.

6. Верификация системы: вовлечение в процесс проверки экспертов и потенциальных пользователей; обеспечение функционирования системы в соответствии с проектом.

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

8. Поддержка системы: обеспечение непрерывной поддержки системы; модернизация БЗ в случае поступления новой информации; сохранение ответственности за систему.

9. Документация: подготовка полной документации системы; подготовка руководства для пользователя; организация консультаций пользователям. [1, стр. 89]

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

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

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

Исследовательский прототип проектируется в течение 1,5-2 лет. На этой стадии развития системы ее БЗ уже содержит несколько сотен правил, которые достаточно адекватно описывают предметную область.

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

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

Коммерческая система предназначена в основном для продажи. Она является либо проблемно-ориентированной, либо проблемно-независимой.

2.2 Анализ предметной области и методы приобретения знаний

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

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

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

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

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

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

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

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

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

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

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

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

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

Чем выше способности компьютера к логическим выводам, тем меньше нагрузка на человека.

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

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

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

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

Аналогичная проблема - преобразование во внутренний формат советов, подсказок по решению задач. В этом заключается одна из центральных проблем искусственного интеллекта. Она, в частности, изучает преобразование советов, подсказок, рекомендаций, представленных в терминах проблемной области, в процедуры. [1, стр. 91]

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

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

2.3 Инструментальные средства проектирования интеллектуальных информационных систем

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

ИИС представляют собой некоторый программный комплекс, позволяющий решать производственный и экономические задачи на уровне человека - оператора или управленца (эксперта). Однако очевидно, что любую программу можно написать на машинно - ориентированном языке (ассемблере) или на универсальном языке высокого уровня (ПЛ/1, Си, Бейсик, Алгол, Ада, Фортран, Паскаль и т.д.). В этой связи возникает вполне справедливый вопрос: зачем рассматривать специализированные средства, для изучения которых требуется определенное время, если универсальным языком высокого уровня (либо языком ассемблера) владеет практически любой программист? Ответ на этот вопрос взят из практики: процесс программирования систем ИИ на специализированных средствах занимает в 2-3 раза меньше времени, чем на универсальных. Однако следует всегда помнить, что параметры эффективности (объем памяти и быстродействие) ИИС, реализованных на базе специализированных средств, в большинстве случаев ниже, чем при реализации ИИС на универсальных средствах.

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

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

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

2.3.1 Анализ традиционных языков программирования и представления знаний

Одним из самых популярных языков программирования в системах ИИ является язык LISP. Этот язык был создан в 60-х годах американским ученым Дж. Маккарти и его учениками. На сегодняшний день существует около 20 диалектов этого языка. Наиболее известными являются INTERLISP, FRANZLISP, QLISP, COMMONLISP. На языке LISP написаны многие экспертные системы (MYCIN, INTERNIST, KEE и др.), системы естественно-языкового общения (MARGIE, SHRDLU, ДИЛОС и др.), интеллектуальные операционные системы (FLEX).

Популярность языка LISP в первую очередь объясняется тем, что он с помощью довольно простых конструкций позволяет писать сложные и изящные системы обработки символьной информации. К сожалению, почти все существующие LISP - системы имеют низкую вычислительную эффективность. Именно это не дает возможность языку LISP выйти за рамки «академических» экспериментальных систем. Однако бурное повышение производительности современных компьютеров, а также разработка LISP - машин типа С/330, SYMBOLICS и т.д. вселяет оптимизм в отношении будущего языка.

Язык LISP имеет очень простой синтаксис, поскольку возможны только две его конструкции: атом и список.

Атом - элементарная конструкция языка LISP, характеризуемая своим именем и значением. В некоторых LISP - системах с атомом связывается также определенный список свойств. Примерами атомов могут служить: А, В, А1, ВРЕМЯ ВЫЛЕТА, ВЫПУСК, АИ-93 и т.д.

Список - конструкция LISP, состоящая из множества атомов и подсписков. В LISP принята скобочная нотация описания списков. Примеры списков (А1, А2,…,АК), (А,В) (ВРЕМЯ ВЫЛЕТА, 15_40) (ВЫПУСК АИ-93).

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

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

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

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

Одним из известных языков представления знаний является язык FRL (Frame Representation Language), относящийся к классу фрейм - ориентированных. Основная единица знания в таких языках - фрейм, представляющий собой информационную модель (или описание) некоторой стереотипной ситуации. «Стереотипная ситуация», является обобщением таких понятий, как действия, процессы, события, объекты, свойства, модификаторы и т.д.

Фрейм в FRL - это совокупность поименованных, ассоциативных списков, содержащая до пяти уровней подструктур. Подструктурами фреймов могут быть слоты, аспекты, данные, комментарии и сообщения. Основной структурной единицей во фрейме являются слоты, отражающие взаимосвязи между понятиями предметной области. Слот характеризуется своим именем и значением. Имена слотов назначаются проектировщиками БЗ. Однако FRL имеет также и зарезервированные имена слотов: АКО, INSTANSE, CLAS SIFICATON. В качестве значения слотов могут выступать числа, символы, имена других фреймов, имена процедур.

Важным свойством FRL является наличие в нем встроенного механизма «наследования свойств». Суть этого механизма заключается в следующем. Все понятия предметной области в БЗ организовываются в виде иерархической классификационной системы, где каждое понятие связывается с помощью специальных отложений с более конкретными. Для реализации этих отложений существуют слоты АКО и INSTANSE. Слот АКО связывает понятие с более общим (родовым). Слот INSTANSE связывает понятие с более конкретным (видом). Свойства присущие всему классу, описывают только во фрейме класса, а остальные фреймы этого класса могут наследовать это свойство в случае надобности.

Процедуры обработки FRL подразделяются на независимые и присоединенные. Независимо от типа эти процедуры пишутся обычно на языке реализации самого FRL. На сегодняшний день большинство FRL - систем написаны на LISP.

В последнее время к разработке ЭС все чаще стал привлекаться язык программирования Пролог. Свое наименование Пролог получил от сокращения «Программирование логики» (PRogramming in LOGic). Математической основой Пролога являются исчисление предикатов преимущественно первого порядка, метод резолюции Робинсона, теория рекурсивных функций.

Основной конструкцией языка (в форме, принятой для Пролога), является импликация:

А< В1, В2, …., Вn, называемая правилом, где А1,В1,В2….,Вn - предикаты.

Смысл ее таков «А истинно, если истинно В1 и истинно В2 и … и истинно Вn».

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

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

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

2.3.2 Современные программные средства построения интеллектуальных информационных систем

Visual Basic язык поддерживающий событийно-управляемое программирование (event-driven programming): визуальное проектирование и элементы объектно-ориентированного программирования. Выпустив в 1991 г. первую версию VB, Microsoft достаточно скромно оценивала возможности этой системы, ориентируя ее, прежде всего, на категорию начинающих и непрофессиональных программистов. Основной задачей тогда было выпустить на рынок простой и удобный инструмент разработки в тогда еще довольно новой среде Windows, программирование в которой представляло проблему и для опытных специалистов,

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

1996-97 гг. была выпущена пятая версия; В VB5 было много усовершенствований, он обеспечивал заметно более высокую производительность и предлагал долгожданный компилятор, преобразующий программу во внутренний машинный код.

В 1998 г. появился Visual Basic 6.

В течение нескольких лет идут постоянные дебаты о том, может ли Visual Basic считаться языком объектно-ориентированного программирования (ООП). С одной стороны, элементы ООП в нем были всегда, и их число росло от версии к версии. С другой -- многих нужных возможностей ООП в Visual Basic не было. Появление Visual Basic.NET должно положить конец всем этим дискуссиям, так как в нем будут реализованы все необходимые атрибуты ООП. Напомним, что модель ООП подразумевает наличие трех обязательных механизмов: инкапсуляции, полиморфизма и наследования. Первые два были реализованы в предыдущих версиях и получили развитие в новой, а последний появится в ней впервые.

Visual Basic наконец-то стал полноценным объектно-ориентированным языком. Безусловно, Visual Basic.NET серьезно прибавил в мощности средств, но работать с ним будет сложнее. Ведь объектно-ориентированные методы программирования предъявляют более серьезные требования к квалификации разработчика, на которою перекладываются многие проблемы обеспечения работоспособности программы.

Дадим также описание некоторых новых элементов языка на концептуальном уровне.

Web Services - это некая принципиально новая платформно-независимая технология, связанная с использованием стандарта XML и протокола SOAP (Simple Object Access Protocol - протокол доступа к простым объектам), которая будет широко интегрирована в средства разработки. Ключевая идея состоит в создании компонентов уровня бизнес-логики, которые взаимодействуют с внешними объектами с помощью стандартных Web-протоколов.

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

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

Inheritance (Наследование). Это одно из ключевых понятий объектно-ориентированного программирования возможность использования (в том числе расширения) поведения чужого объекта. Упрощенно говоря, можно создать объект Продукт, а затем на его основе объекты Программный Продукт и Технический Продукт. Оба новых объекта будут наследовать свойства и методы объекта Продукт, и при этом вы сможете изменить поведение наследующего объекта. Visual Basic-разработчики теперь могут использовать ключевое слово Inherits для подключения процедур уже существующего класса:

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

Polymorphism (Полиморфизм). Возможность иметь несколько объектов разного типа, но с одинаковыми методами. Это позволяет писать код, вызывающий тот метод, который нужен в зависимости от используемого в данный момент объекта.

Visual Basic позволяет создавать различные приложения для работы с базами данных - от простейших локальных баз данных до многоуровневой архитектуры клиент/сервер, а также приложений для работы в intranet и Internet с использованием таких передовых технологий, как DHTML, XML и ASP.

Также очень важны вопросы проектирования реляционных баз данных и использования языка SQL. Язык структурированных запросов является стандартным средством для работы с базами данных и может использоваться как для интерактивной работы с базами данных, так и включаться в языки программирования. Применительно к Visual Basic SQL позволяет:

· создавать, модифицировать или удалять таблицы в базе данных Access;

· вставлять, удалять или модифицировать записи таблиц;

· получать сводную информацию о данных в таблице;


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

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