14. Источники информационной базы ИС, виды показателей и методики для выявления проблемных ситуаций в производстве
Источники информационной базы ИС, виды показателей и методики для выявления ПС.
В качестве информационной базы используются формы годовой отчетности, а также нормативные значения показателей, определяемые на основе средних значений по отрасли или группе аналогичных предприятий.
Наиболее распространенная форма выявления проблем с использованием технико-экономических показателей - сравнение их фактических величин с числовыми, нормативными или средними значениями и вычисление абсолютных и относительных отклонений.
Показателями, могущие использоваться для выявления проблем, касающихся финансового состояния предприятия и определения степени их критичности на основе анализа финансовых коэффициентов, результатов производственно-коммерческой деятельности и эффективности использования ресурсов могут выступать:
Можно также применять методики выявления ПС, базирующиеся на определенных аналитических соотношениях технико-экономических показателей, в состав которых входят следующие элементы:
индекс прибыли;
индекс амортизационных отчислений;
индекс затрат на заработную плату;
индекс оборотных средств;
индекс основных производственных фондов;
индекс численности работающих.
Выявление проблем осуществляется нахождением отклонения от определенных аналитических зависимостей между этими показателями и дальнейшей их интерпретации.
Например, если отмечается отставание темпа роста прибыли от темпа роста объемов производства, делается заключение об определенных проблемах в сфере маркетинговой деятельности предприятия, в частности, в области ценообразования.
Во многих случаях для определения пороговых значений объемов производства и сбыта, выручки от реализации целесообразно применять методику «анализ безубыточности», а именно расчет точки безубыточности и «запаса прочности» предприятия, выражающего (в процентах) соотношение текущего объема производства и объема, соответствующего точке безубыточности.
Для технико-экономических показателей, характеризующих проблемную ситуацию, которые могут быть представлены статистическими рядами данных, используются базовые статистические методы, например, расчет средних, стандартных отклонений, дисперсий.
На рис. 2.2 показан фрагмент «дерева причин», связанный со снижением объема производства и реализации услуг.
Рис. 2.2. Дерево причин проблемной ситуации «снижение объемов производства и реализации»
Итак, нам стало ясно, что в качестве основных причин возникновения ПС выступают состояния и изменения состояний элементов внутренней и внешней среды организации (ресурсы, структурные подразделения, виды продукции, виды затрат, поставщики, потребители).
Поэтому можно говорить о структуризации проблемы в соответствии не только с причинами ее возникновения, но и с элементами внешней и внутренней среды организации, а также характеризующими их показателями.
15. Граф концептуальной модели проблемной ситуации и его толкование
Построение логических правил для выбора действий и правил принятия решений.
После формирования дерева причин производят построение логических правил, используемых для выбора действий и правил принятия решений (ППР).
Первый элемент ППР - таблица условий - описание проблемной ситуации в виде определенной совокупности объектов, их параметров и отношений между ними.
Второй элемент ППР - перечень действий, которые могут быть приняты в той или иной проблемной ситуации. Для комплексного представления результата структуризации проблемы и методов ее решения можно использовать концептуальную модель (рис. 2.3). В соответствии с этой моделью проблема может быть представлена в виде графа с четырьмя видами вершин: X, Р, ДиС
Рис 2.3. Концептуальная модель проблемной ситуации
X - множество проблем.
Р - множество атрибутов описания проблем.
D - множество типовых решений проблем.
С - множество условий, разделяющих проблемы и решения, ориентированные дуги выражают множество отношений, описывающих взаимосвязь проблем.
Логический анализ проблем-причин на низших уровнях иерархии, показывает, что во многих случаях они позволяют сформулировать варианты решения проблем более высокого уровня. В общем случае в качестве вариантов решений можно использовать классы стратегий, предлагаемых в экономической литературе.
16. Особенности проектирования интеллектуальной экономической информационной системы
Проектирование ИИС начинается с обследования предметной области. Современные технологии такого обследования базируются на концепции и программных средствах реинжиниринга бизнес-процессов (BPR).
Реинжиниринг бизнес-процессов - это фундаментальное переосмысление и радикальное перепланирование критических бизнес-процессов в процессе внедрения средств информатизации, имеющее целью резко улучшить качество функционирования с точки зрения затрат, качества обслуживания и скорости выполнения.
Бизнес-процесс - это упорядоченное множество операций (видов) деятельности, реализуемых в организационной структуре в соответствии с ее миссией и целями, начинающихся с одной или более входных операций и заканчивающихся созданием продукции, необходимой клиенту.
Процесс - это систематически упорядоченная совокупность работ, заданий (активностей) во времени и в пространстве с указанием начала и конца и точным определением входов и выходов.
Ключевой элемент модели бизнеса - это описание архитектуры компании, т.е. описание ее наиболее важных статических и стабильных структур: отделений, отделов, а также продукции и материалов. Однако просто организационная схема плохо отражает суть функционирования компании, поэтому важны динамические структуры -это процессы и потоки событий. Кроме этого, необходимо описать процессы и потоки событий. Необходимо описать как входные данные, поступающие из внешнего мира, так и действия (операции) процесса, которые производятся над исходными данными, а также потребляемые ресурсы.
Субъект - это все то, что в окружении взаимодействует с бизнесом: клиенты, поставщики, партнеры.
Сценарий - совокупность транзакций в системе, выполняемых для реализации функций бизнеса.
Транзакция - неделимое множество действий, выполняемых или целиком, или не выполняемых вовсе, и в совокупности составляющих единое задание.
Объекты могут соответствовать задачам, видам продукции или сущностям.
Обычно разделяют следующие виды объектов:
объект-сущность,
управляющие объекты и
интерфейсные объекты.
Интерфейсные и управляющие объекты представляют задачи, а не типы ресурсов.
Интерфейсные объекты представляют в бизнесе операции, включающие взаимодействие с окружением бизнеса.
Управляющие объекты участвуют в управлении потоками при обработке продукции.
Объекты-сущности - это продукция и предметы, обрабатываемые бизнесом.
Могут быть выделены следующие разновидности отношений:
ссылки - связи, ведущие от одного экземпляра объекта к другому;
наследования - связывают два класса.
Агрегат объектов. Отношения включения: «состоит из» и «является частью» - представляют собою варианты отношения ссылки. Они используются для выражения того, что объект состоит из других объектов. Конструкция данного типа называется агрегатом.
Отношения коммуникации. Объекты должны иметь возможность обмениваться данными. Этот тип отношения выражается отношением коммуникации между двумя объектами. Направление отношения показывает направление передачи стимулов. Отношение коммуникации почти всегда является отношением между экземплярами.
Отношения наследования. Отношения наследования - это отношения между классами. При конкретизации последующего класса (потомка) его экземпляр получает все характеристики (атрибуты, операции и отношения), описанные в суперклассе.
Поведение. Изучая сценарии, в которых участвует объект, можно получить представление об обязательствах объекта по отношению к его окружению. Поведение объекта можно разделить на несколько последовательных действий, называемых операциями. Выполнение каждой такой операции инициируется определенным стимулом. Чтобы выполнить операцию, нужно знать определенные входные и выходные данные, называемые параметрами операции. Протокол класса устанавливает связь между посылаемыми объекту стимулами и реализуемыми объектом методами (операциями).
Атрибут. Характеристика объекта моделируется атрибутами объекта. Отношение «атрибут» имеет имя, описывающее роль, которую атрибут играет по отношению к объекту. Отношение также может иметь мощность, указывающую сколько экземпляров атрибута может быть ассоциировано с этим отношением. Отношение «атрибут» обычно связывает экземпляр класса объектов с экземпляром типа атрибут.
Состояния объектов. Объект может получать различные стимулы в зависимости от значения атрибутов и ранее выполненных операций, то есть объект может находиться в различных состояниях. Состояния объекта целесообразно описывать диаграммами состояний и переходов.
Взаимодействие объектов в сценарии. Взаимодействие объектов в сценарии отражает динамику объектной модели. Этот тип представления содержит (помимо объектов) отношения коммуникации, необходимые для выполнения сценария. Один и тот же объект может участвовать в нескольких сценариях, выступая в разных ролях.
Диаграммы взаимодействий. Если необходимо описать, как при выполнении потока событий взаимодействуют объекты модели, строится диаграмма взаимодействий, показывающая, как взаимодействующие объекты реализуют прецедент. При этом идентифицируются стимулы, передаваемые между объектами, и параметры этих стимулов, т.е. идентифицируются протоколы взаимодействия объектов, составляется полный перечень операций. Сценарий обычно содержит несколько вариантов хода событий, изображаемых разными диаграммами. Для больших систем вначале строят упрощенную модель, а затем вводят отношения расширения.
Описание сценария может быть довольно сложным для понимания, если оно содержит слишком много альтернативных, необязательных потоков событий, выполняемых при определенных условиях. Один из способов сделать описание «прозрачнее» - извлечь некоторые его фрагменты и рассматривать их как отдельный сценарий. Говорят, что этот новый сценарий расширяет первоначальный, отношение расширения можно рассматривать как способ структурирования потока событий.
Отношения использования. При описании сценариев можно обнаружить, что некоторые из них имеют общие фрагменты. Чтобы не описывать эти общие фрагменты более одного раза, их описывают в виде самостоятельного сценария. Его затем могут использовать остальные. Отношение использования позволяет избежать лишних описаний, позволяя повторно применять общие фрагменты потока событий. Отношения использования и отношения расширения можно рассматривать как вид наследования.
Подсистемы и сценарии. В большом бизнесе можно выделить много частей (подбизнесов). Подсистема включает функционально близкие объекты и (или) подсистемы.
В чем разница между сценариями и подсистемами? В подсистеме объекты собраны в соответствии с их функциями. Сценарий, наоборот, может выполняться объектами разных подсистем.
17. Основные компоненты и существенные черты ИИС
Существенные черты ИИС:
наличие знаний,
способности логического вывода и
особенно системы управления знаниями.
Способность производить выводы - принципиальная особенность современных информационных технологий.
Эта способность основывается на знаниях, причем знания различаются по форме, начиная от простых фактов, хранящихся в обычной базе данных, до сложных высказываний о реальном или моделируемом мире. С точки зрения логики, базу данных можно рассматривать как множество фактов, при этом запросы и ограничения целостности являются формулами, которые необходимо интерпретировать, используя семантическое определение истинности.
Формально базу данных можно рассматривать как теорию первого порядка, точнее, как множество аксиом в некоторой теории первого порядка. В свою очередь, база знаний есть множество теорем, которые могут быть получены из множества хранящихся аксиом использованием множества универсальных механизмов вывода.
На начальном этапе применения методов искусственного интеллекта к ИС наибольшее распространение получили экспертные системы (ЭС), т.е. компьютерные программы, имеющие дело с проблемами, для которых не существует непосредственно аналитических методов, но в которых они позволяют получить результаты. Первые экспертные системы разработаны для некоторых устоявшихся, хорошо определенных приложений, например, помощи химикам-органикам (ЭС ДЕНДРАЛ); в области медицины (например, MYCIN, INTERNIST/CADUCEUS, PUFF). На рис 3.3 представлена типичная организация экспертной системы.
Логические выводы, возможности получения логических следствий и возможности решения проблем обычно бывают встроены в машину вывода ЭС. В литературе по искусственному интеллекту термин «решение проблем» относится к методологии поиска пути из начального состояния в целевое состояние. Техника решения проблем включает общий решатель проблем и поисковый алгоритм. Некоторые из таких алгоритмов имеют имена (например, А* алгоритм).
Компонента синтеза объяснения - это тип выходной информации, используемой, чтобы оправдать некоторые выдаваемые системой заключения и предоставить пользователю некоторые пояснения в форме, подходящей для интерпретации лицом, принимающим решения.
Способность интеллигентного редактирования есть виртуальная необходимость для системы приобретения знаний.
Машинное обучение - это механизм для автоматического приобретения знаний. Системы машинного зрения могут быть использованы для распознавания информации с экранных форм и приобретения знаний.
Обработка естественного языка и системы распознавания речи могут быть эффективно использованы, чтобы обеспечить дружественный к пользователю интерфейс.
ЭС успешно применены в целом ряде областей, включая математику, геологию, проектирование и разработку систем. В последнее время ЭС стали очень широко применяться в области бизнеса, страхования и банковского дела. Основные составляющие ЭС:
База знаний. Служит для представления эвристической и фактологической информации, часто в форме фактов, утверждений и правил вывода.
Машина вывода. Механизм, играющий роль интерпретатора, применяющего знания подходящим образом, чтобы получить результат.
Система естественно-языкового интерфейса (СЕЯИ). Механизм, преобразующий запросы и выдающий ответы пользователю, иногда отыскивающий дополнительную информацию для машины вывода. Эта компонента включает средства, необходимые для взаимодействия ИИС с пользователем.
СЕЯИ, занимающая в этом арсенале средств особое место, позволяет пользователю общаться с ИС на естественном языке, т.е. реализует дружественный к пользователю интерфейс.
18. Схема ИИС
ИИС (рис. 3.4) функционирует, используя систему управления базой данных и базу знаний.
В ИИС интегрируются знания, поступающие от экспертов, относительно 5акономерностей конкретной предметной области наряду с фундаментальными (энциклопедическими знаниями), составляющими суть научных теорий и моделей. Эти знания хранятся в репозитарии знаний, а конкретные [) акты - B базе данных под управлением системы управления базой данных.
Рис. 3.4. Схема интеллектуальной информационной системы
Для хранения данных в ИИС используются либо реляционные, либо для гегрированного хранения данных и знаний - объектно-ориентированные базы данных. На рис. 3.5 показана схема интеграции базы данных и базы знаний.
Рис. 3.5. Интеграция базы данных и базы знаний
Базы данных обрабатывают то, что называется форматированными данными посредством описания структуры данных различных прикладных программ и единообразного описания их в единственной концептуальной схемебазы данных для всего предприятия. Концептуальная схема традиционных СУБД в очень малой степени затрагивает смысл данных. Поэтому непосредственно база данных только в ограниченном смысле может быть источником принятия решений на предприятии.
В современных моделях семантики обеспечивается механизм для моделирования динамического поведения и динамических ограничений: концепция истории и концепция события / триггер а. Часто, когда сущность изымается, необходимо сохранить факт, что сущность была частью класса для дальнейших ссылок. Концепция истории позволяет сохранить историю класса при помощи специального механизма, называемого историей класса.
Концепция события триггера используется для описания модификации азы данных, которое требует исполнителя дополнительных операций или которые зависят от предыдущих событий.
Событие зависит либо от условия операции, либо от условия времени, триггер описывает операцию, которая должна быть выполнена, если происходит связанное с ним событие. Акции (Actions) могут контролироваться выполнением некоторых событий, зависящих от определенных условий посредством отсрочки выполнения акций, пока не будет выполнено множество определенных событий.
Мы называем схему базы данных R объектно-ориентированной, если и только если для каждой схемы отношения R множество всех FD, относящихся к R эквивалентно одной единственной FD: К -> R, т.е. факт, что К есть уникальный ключ R. Атрибуты, которые являются (не являются частью) ключа, называются первичными (непервичными).
Объектно-ориентированная схема базы данных может быть записана как множество пар (Kj.Pi), где К; - множество первичных атрибутов; Pj - множество непервичных атрибутов реляционной схемы Rj. Такую схему базы данных можно рассматривать как множество объектов, идентифицированных их ключами.
В случае если множество ограничений С не содержит зависимости включения, С пополняется ID, которые вновь экстрагируются из словаря данных и знаний администратора базы данных. Зависимость включения Rj[x] с Rj[Y] называется основанной на ключе, если Y = К, т.е. Y есть ключ R. Зависимости включения формируют утверждения относительно зависимостей между классами объектов. Следовательно, они являются основой для генерации иерархии, агрегации, генерализации и группировки, которые определяют отношения между классами в ООБД. С другой стороны, неключевые зависимости включения устанавливают произвольные ограничения целостности, которые мы должны усилить пре- и постусловиями базовых действий, связанных с ООБД-классами объектов.
19. Характеристика базы знаний и особенности её конструирования. Компоненты баз знаний
Характеристика знаний
Таблица 3.2. Характеристики использования знаний приложениями ИИС
Большие объемы данных
Объемы знаний могут быть чрезвычайно велики вплоть до 1010 байт. Порядок этой величины больше емкости доступной виртуальной памяти
Постоянство
Время жизни знаний превышает время жизни конкретного приложения, которое использует знания
Совместное использование
Знания совместно используются многими приложениями, которые могут их одновременно считывать и записывать
Стратифицированность
Знания сегментируются на многие различные типы [факты, процедуры, ограничения, определения на многих уровнях (объект, мета, метамета…)]
Пространственно-временная семантика
Семантика пространства и времени является доминантой представления знаний как внутри, так и вне пользовательского интерфейса
Распределенность
Источники и/или пользователи знаний связаны слабо, и обеспечивается возможность для распределенной параллельной обработки
Интеллектуальность
Обработка является более сложной по сравнению с обычными функциями клерка и призвана обеспечить интеллектуальный совет и помощь в принятии решений
Предопределенность
Многие аспекты обработки являются предопределенными и изменяются медленно или вовсе не изменяются во время жизни приложения
Высокие показатели
Высокие показатели требуются для интеллектуальной обработки больших объемов за короткое время
Конструирование базы знаний
Для хранения, обновления и использования знаний применяются системы управления базами знаний, которые должны удовлетворять следующим требованиям.
Представление знаний. Подобно базам данных, представление знаний в ЭС, основанных на правилах, является сравнительно простым, состоящим из представления фактов и правил вывода. Знания, хранящиеся в ИИС, интегрируются в результате объединения знаний, поступивших от многих индивидуальных экспертов, и могут принимать такие формы, как базы данных и правила вывода. Часто элементы знаний выражаются на одном из этих языков. Они должны быть агрегированы в гибридное представление знаний в виде одного источника знаний, который может быть далее агрегирован в глобально совместную базу знаний. Важно иметь разнообразие выразительных средств для поддержания высокой степени совместности посредством механизма гибридного представления.
Организация знаний. Базы знаний могут быть организованы с использованием фундаментальных знаний, проблемно-ориентированных знаний, и знаний, необходимых для поддержания диалога. Знания, специфичные для диалога, должны иметь стандартизированную процедуру диалога, состоящую, из анализа пользовательских требований и запросов, интерпретации этих запросов по отношению к прикладной системе, основанной на знаниях и генерации ответа на основе кооперативного диалога.
Если база фактов становится большой или необходимо обеспечить доступ к внешним базам фактов, механизмы СУБД должны использоваться в ЭС. Обычно это предполагает наличие некоторого метазнания о схеме базы данных, ограничениях целостности, доступных интерфейсах, посредством которых факты выбираются и хранятся. Сложные средства оптимизации дедуктивных запросов требуются, чтобы обеспечить подходящее время реакции. Они могут использоваться в комбинации с другими стратегиями, которые обеспечивают контроль за применением правил.
Окружение. Это средства, доступные в рамках оболочки экспертной системы. В одной методологии (тесное связывание) доступ к базе данных скрыт от пользователя, насколько это возможно, в других (слабое связывание), пользователь будет загружать внешние данные эксплицитно до запуска диалога консультаций. Так, необходимо окружение, через которое различные базы знаний могут быть заполнены. Это аспект приобретения знаний или обучения, который частично может быть реализован экспертами в данной предметной области и лингвистами в сотрудничестве со специалистами по компьютерам.
Связывание. Помимо обеспечения доступа к внешним базам данных, экспертным системам часто необходимо установить связь с другими средствами информационных систем, таким как численные вычисления или графика.
Системы баз знаний должны содержать следующие компоненты:
язык представления знаний, который эффективно выражает структуру данного приложения;
средства организации знаний, которые позволяют сохранять и эффективно обрабатывать большие количества сложных структур знаний;
методологию и окружение, посредством которых многочисленные приложения баз знаний и других приложений эффективно взаимодействуют друг с другом.
20. Определение, назначение и области применения экспертных систем
1.1. Думать или вычислять?
В 1950 году английский математик Тьюринг поставил вопрос «могут ли машины думать?». В те времена предположение «да, через 50 лет» Тьюрингу показалось вполне осуществимым.
Стремительное развитие компьютеров и методов программирования, начиная со второй половины 20-го века, постоянно расширяет область применения вычислительной техники. Сейчас уже никого не удивляет стремление заменить человека машиной. Практически во всех областях деятельности, от простейших технологических операций на конвейерном производстве до экспертного анализа и принятия решений, автоматические системы работают не хуже средней руки специалиста. Более того, машина не подвержена так называемому «человеческому фактору» - допускаемыми людьми ошибкам, которые не возможно формализовать и предсказать.
Не исключением стала и интеллектуальная деятельность человека. С момента зарождения кибернетики разработчики компьютерных программ пытались воспроизвести механизм мышления человека или, иначе говоря, ставилась задача научить компьютер «думать». Начало исследованиям в области создания и использования интеллектуальных систем положили работы «отца кибернетики» Норберта Винера [1] и Г.С. Альтшуллера [2].
Первые попытки создания интеллектуальных систем сводились к разработке программ, решающих задачи с помощью разнообразных эвристических методов, основанных на свойственном человеческому мышлению обобщении, использованию универсальных подходов к решению различных задач. То есть усилия были направлены на создание универсальных программ. Результатами этой работы явились такие программы, как ЛОГИК-ТЕОРЕТИК, предназначенная для доказательства теорем в исчислении высказываний, и ОБЩИЙ РЕШАТЕЛЬ ЗАДАЧ, созданные Ньюэллом, Саймоном и Шоу, занимавшихся исследованием процессов решения различных задач [3]. Также следует отметить всевозможные игровые программы и вычислительные системы.
Так, например, были созданы кибернетические игрушки типа «электронной мыши» Клода Шеннона, которая управлялась сложной релейной схемой. Эта мышка могла «исследовать» лабиринт, и находить выход из него. Впоследствии, помещенная в уже известный ей лабиринт, она не пыталась искать выход заново, а, используя накопленную информацию, сразу же выходила из лабиринта, не заглядывая в тупиковые ходы.
Американский кибернетик А. Самуэль разработал программу, играющую в шашки. Причем в ходе игры машина обучалась, совершенствуя свою игру на основе накопленного опыта. В 1962 г. эта программа сразилась с Р. Нили, сильнейшим шашистом в США и победила. Такой высокий результат машине удалось достичь благодаря вычислению на каждом шагу игры некоторой оценочной функции, числового показателя, оценивающего качество хода. Эта функция была основана на сочетаниях (в виде линейной комбинации с экспериментально подбираемыми коэффициентами или более сложным образом) знаний о правилах игры, стратегиях и приемах выигрывания (например, как в шашках, и так и в шахматах обычно невыгодно терять свои фигуры, и, напротив, выгодно брать фигуры противника; подвижность фигур и право выбора ходов позволяет держать под боем большое число полей на доске и пр.), а также знаниях, относящихся к отдельным стадиям игры - дебюту, миттэндшпилю, эндшпилю. Сравнивая между собой показатели эффективности различных возможных на данном шаге ходов, машина выберет ход, соответствующий наибольшему показателю. Совершенствование игры состоит в подстройке параметров (коэффициентов) оценочной функции на основе анализа совершенных ходов и игр с учетом их исхода. Следует отметить, что все эти элементы интеллекта заложены в программу ее автором. И хотя машина и совершенствует свою стратегию игры в процессе самообучения, способность выигрывать основана на вычислительной мощности ее процессора. К примеру, компьютер фирмы IBM, победивший в шахматы мирового чемпиона Каспарова, имел 256 процессоров, каждый из которых имел 4 Гб дисковой памяти и 128 Мб оперативной. Весь этот комплекс мог просчитывать более 100000000 ходов в секунду.
Еще одним примером является программа американского математика Хао Ванга. Эта программа за 3 минуты работы IBM_704 вывела 220 относительно простых лемм и теорем из фундаментальной математической монографии, а затем за 8.5 минут выдала доказательства еще 130 более сложных теорем, часть их которых еще не была выведена математиками. Правда, до сих пор ни одна программа не вывела и не доказала ни одной теоремы, которая была бы принципиально новой.
Однако, несмотря на некоторые интересные достижения, попытки создания универсальных программ не привели к существенным открытиям и их промышленному использованию. Разработка таких программ оказалась слишком трудным и, в конечном счете, бесплодным делом. Чем шире класс задач, которые может решать одна программа, тем беднее оказываются ее возможности при решении конкретной частной проблемы.
Дальнейшие исследования в области искусственного интеллекта были сосредоточены не на универсальных алгоритмах решения задач, а на общих методах и приемах программирования, пригодных для создания специализированных программ. Разрабатывались методы представления задачи - способы формулирования проблемы таким образом, чтобы ее можно было легко решить, и методы поиска - эффективные алгоритмы управления ходом решения задачи. Однако значительного продвижения вперед удалось достигнуть в 70-х годах, когда специалисты начали понимать, что эффективность программы при решении задач зависит не только от формализмов и алгоритмов вывода решения, которые она использует, но в первую очередь от знаний, которые в нее заложены. Новая концепция построения интеллектуальных систем привела к развитию специализированных программ со сходной архитектурой, каждая из которых предназначена для решения задач в некоторой узкой предметной области. Эти программы получили название экспертные системы (ЭС).
Назначение экспертных систем
Экспертная система, прежде всего, является программным продуктом, и ее назначение - автоматизация деятельности человека. Однако принципиальным отличием ЭС от других программ является то, что она выступает не в роли «ассистента», выполняющего за человека часть работы, а в роли «компетентного партнера» - эксперта-консультанта в какой-либо конкретной предметной области. ЭС аккумулируют в себе и тиражируют опыт и знания высококвалифицированных специалистов, позволяют пользоваться этими знаниями пользователям «неспециалистам» в данной предметной области. То есть, ЭС не призваны заменить собою эксперта в его непосредственной деятельности, а, напротив, расширяют возможную сферу применения знаний авторитетных специалистов. Кроме того, способности ЭС решать поставленные перед ними задачи не ослабевают со временем и не забываются при отсутствии практики, легко распространяются, так как являются компьютерной программой, прекрасно документированы, а значит и аргументированы, при многократном решении одной и той же задачи ЭС выдают одно и тоже решение в отличие от человека, который подвержен эмоциональным факторам. Плюс ко всему эксплуатация ЭС значительно дешевле, чем оплата труда человека-эксперта.
Хотя указанные преимущества и очевидны, следует отметить, что ЭС не обладают интуицией и общими знаниями о мире, их ход и метод решения проблемы не может выйти за рамки тех знаний, что в них заложены. ЭС также будут бессильны при решении проблемы в изменяющихся условиях, например, при смене методики решения или появлении нового оборудования. Эксперты могут непосредственно воспринимать весь комплекс входной сенсорной информации, будь то визуальная, звуковая, осязательная или обонятельная. ЭС воспринимает только символы, которыми представлены знания. Поэтому сенсорную информацию необходимо проанализировать и преобразовать в символьную форму, пригодную для машинной обработки. При преобразовании человеком сенсорной информации неизбежно возникают искажения и потери, но классифицировать весь поток информации на значимое и второстепенное или абсурдное способен только человек. Так, например, любой человек сразу же выразит свое недоумение, если его попросят найти номер телефона Аристотеля, но едва ли найдется программа, которая скажет, что древнегреческие философы не пользовались телефонами.
Таким образом, назначением экспертных систем является консультирование по узкоспециальным вопросам при принятии решений человеком. То есть ЭС используются для усиления и расширения профессиональных возможностей их пользователей.
Традиционными областями применения экспертных систем являются следующие [4]:
Интерпретация данных. Это одна из традиционных задач для экспертных систем. Под интерпретацией понимается определение смысла данных, результаты которого должны быть согласованными и корректными. Обычно предусматривается многовариантный анализ данных.
Диагностика. Под диагностикой понимается обнаружение неисправности в некоторой системе. Неисправность - это отклонение от нормы. Такая трактовка позволяет с единых теоретических позиций рассматривать и неисправность оборудования в технических системах, и заболевания живых организмов, и всевозможные природные аномалии. Важной спецификой является необходимость понимания функциональной структуры («анатомии») диагностирующей системы.
Мониторинг. Основная задача мониторинга - непрерывная интерпретация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Главные проблемы - «пропуск» тревожной ситуации и инверсная задача «ложного» срабатывания. Сложность этих проблем в размытости симптомов тревожных ситуаций и необходимость учета временного контекста.
Проектирование. Проектирование состоит в подготовке спецификаций на создание «объектов» с заранее определенными свойствами. Под спецификацией понимается весь набор необходимых документов чертеж, пояснительная записка и т.д. Основные проблемы здесь - получение четкого структурного описания знаний об объекте и проблема «следа». Для организации эффективного проектирования и, в еще большей степени, перепроектирования необходимо формировать не только сами проектные решения, но и мотивы их принятия. Таким образом, в задачах проектирования тесно связываются два основных процесса, выполняемых в рамках соответствующей ЭС: процесс вывода решения и процесс объяснения.
Прогнозирование. Прогнозирующие системы логически выводят вероятные следствия из заданных ситуаций. В прогнозирующей системе обычно используется параметрическая динамическая модель, в которой значения параметров «подгоняются» под заданную ситуацию. Выводимые из этой модели следствия составляют основу для прогнозов с вероятностными оценками.
Планирование. Под планированием понимается нахождение планов действий, относящихся к объектам, способным выполнять некоторые функции. В таких ЭС используются модели поведения реальных объектов с тем, чтобы логически вывести последствия планируемой деятельности.
Обучение. Системы обучения диагностируют ошибки при изучении какой-либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Они аккумулируют знания о гипотетическом «ученике» и его характерных ошибках, затем в работе способны диагностировать слабости в знаниях обучаемых и находить соответствующие средства для их ликвидации. Кроме того, они способны планировать обучение ученика в зависимости от его успехов.
21. Структура и принцип работы экспертных систем. Схема обобщённой структуры БД
Все ЭС имеют сходную архитектуру. В основе этой архитектуры лежит разделение знаний, заложенных в систему, и алгоритмов их обработки. Так, например, программа решающая квадратное уравнение, несомненно, использует знание о том, как следует решать этот вид уравнений. Но это знание «зашито» в текст программы и его нельзя не прочитать, не изменить, если исходные тексты программы недоступны. Программы подобного класса весьма удобны для тех, кто решает квадратные уравнения целыми днями. Однако если пользователь хочет решить другой тип уравнения ему не обойтись без программиста, который сможет написать ему новую программу.
Теперь, предположим, задача поставлена несколько иначе: программа должна считывать при запуске тип уравнения и способ его решения из текстового файла, и пользователь должен иметь возможность самостоятельно вводить новые способы решения уравнений, например, чтобы сравнить их эффективность, точность и пр. Формат этого файла должен быть одинаково «понятен» как компьютеру, так и пользователю. Такой способ организации программы позволит изменять ее возможности без помощи программиста. Даже если пользователь решает только один тип уравнений новый подход предпочтительней прежнего хотя бы потому, что понять принцип решения уравнений, можно просто изучив входной текстовый файл. Данный пример, несмотря на свою простоту и нетипичность предметной области для применения технологии ЭС (для решения математических уравнений обычно используют специализированные пакеты программ, а не экспертные системы), хорошо иллюстрирует особенность архитектуры ЭС - наличие в ее структуре базы знаний, которую пользователь может просмотреть непосредственно или с помощью специального редактора.
Базу знаний можно также редактировать, что позволяет изменять работу ЭС без ее перепрограммирования.
Реальные ЭС могут иметь сложную, разветвленную структуру модулей, но для любой ЭС необходимо наличие следующих основных блоков (Рисунок 1-1. Обобщенная структура ЭС):
БЗ - база знаний - наиболее ценный компонент ядра ЭС, совокупность знаний о предметной области и способах решения задач, записанная в форме, понятной неспециалистам в программировании: эксперту, пользователю и др. Обычно знания в БЗ записываются в форме, приближенной к естественному языку. Форма записи знаний получила название язык представления знаний (ЯПЗ). В различных системах могут использоваться различные ЯПЗ. Параллельно такому «человеческому» представлению БЗ может существовать во внутреннем «машинном» представлении. Преобразование между различными формами представления БЗ должно осуществляться автоматически, так как редактирование БЗ не подразумевает участие программиста-разработчика.
МВ - машина вывода - блок, моделирующий ход рассуждений эксперта на основании знаний, заложенных в БЗ. Машина вывода является неизменной частью ЭС. Однако большинство реальных ЭС имеют встроенные средства управлением ходом логического вывода с помощью так называемых метаправил, записываемых в БЗ.
Р - редактор базы знаний - предназначен для разработчиков ЭС. С помощью этого редактора в БЗ добавляются новые знания или редактируются существующие.
И - интерфейс пользователя - блок, предназначенный для взаимодействия ЭС с пользователем, через который система запрашивает необходимые для ее работы данные, и выводит результат. Система может иметь «жесткий» интерфейс, ориентированный на определенный способ ввода и вывода информации, или может включать средства проектирования специализированных интерфейсов для более эффективного взаимодействия с пользователем.
Рисунок 1-1.Обобщенная структура ЭС
22. Характеристики базы знаний и машины вывода ЭС
С точки зрения изучения технологии экспертных систем наибольший интерес представляют база знаний и машина вывода, различные аспекты реализации которых будут рассмотрены ниже.
В процессе функционирования ЭС считывает информацию из своей базы знаний и пытается осуществить логический вывод решения поставленной перед ней задачи.
В базе знаний могут храниться два основных вида записей:
факты, описывающие состояние предметной области, составляющие ее объекты и их свойства, а также
правила, описывающие способы решения задачи.
Все правила БЗ имеют одинаковую форму записи и состоят из двух частей:
условие и
действие.
Предварительным этапом работы ЭС является сбор исходных фактов, описывающих проблему на языке представления знаний. Эти факты могут поступать в систему различными способами:
в режиме диалога через интерфейс пользователя,
посредством файлов или баз данных,
от внешних датчиков или приборов.
После считывания исходной информации машина вывода начинает просмотр базы знаний и последовательно сопоставляет описание задачи с записями БЗ, описывающими ход решения.
Если условие текущего правила БЗ подтверждается множеством исходных фактов, то система выполняет действие, записанное в данном правиле, добавляя в БЗ новые, производные факты.
На первый взгляд процесс вывода кажется достаточно простым - выполняются однотипные операции по перебору записей БЗ и сравнении их с имеющимися фактами, пока не будет найдено решение или некий целевой факт. Однако, управление процессом вывода, независящее от контекста проблемы не практике мало эффективно. При решении реальных задач человек крайне редко прибегает к перебору данных. Вместо этого, люди пользуются эвристическими правилами, которые значительно ограничивают пространство поиска решения и позволяет быстро и эффективно решать задачи. Эвристические знания имеют эмпирическую природу, то есть формируются на базе опыта и интуиции эксперта. Ярким примером превосходства эвристического подхода перед алгоритмическим (основанным на полном или частичном переборе) является игра в шахматы [5]. В начале игры «белые» имеют возможность сделать любой из 20 допустимых ходов, в ответ на который «черные» могут также совершить один из 20 ходов. Нетрудно посчитать, что следующий ход «белых» может быть выбран уже из 400 возможных различных состояний партии. Далее, по мере развития игры возникает неуправляемый комбинаторный взрыв. Особенно остро подобная проблема стоит в эндшпиле. Имея по нескольку фигур на доске, каждый из игроков располагает более чем 50 вариантами возможных ходов. Очевидно, шахматные мастера при всем желании не смогли бы осуществлять перебор ходов, для поиска лучшего варианта. Вместо этого они используют краткосрочные и долгосрочные стратегии. Каждая конкретная стратегия выбирается в соответствии с текущей ситуацией на игровой доске.
Другим более простым примером может служить способ строительства стен «сухим» методом. На первом этапе работы имеется большое количество камней различной формы, из которых нужно сложить ровную и устойчивую стену. Более того, камни могут подвозиться по мере необходимости, и осмотр всех камней в целях перебора может быть в принципе невозможен. Строитель вначале не знает, как и какие именно камни он будет выбирать. В процессе строительства время от времени он осматривает стену, определяет, какие камни остались, и выбирает краткосрочную стратегию, в частности, включающую возврат (удаление камней из стены). Имея один и тот же набор камней, он, возможно, никогда не построит дважды стену одинаково.
Существует два основных типа логического вывода: прямой и обратный.
Прямой вывод соответствует обычному ходу решения задачи - от исходных фактов к целевым. Примером прямого вывода является задача классификации. ЭС осуществляет постепенное обобщение исходных фактов, описывающих свойства исследуемого объекта, выявляя наиболее характерные признаки того или иного класса.
Обратный вывод соответствует, как следует из названия, обратной задаче - определить какие именно факты требуются для подтверждения данной цели.
Этот тип вывода соответствует противоположному ходу решения:
сначала машина вывода рассматривает те правила БЗ, действием которых является вывод целевого факта.
Затем выбираются новые подцели из условий этих правил, и
процесс продолжается от целевых фактов к исходным.
Можно сказать, что при обратном выводе происходит конкретизация свойств исследуемого объекта. Этот вид логического вывода наделяет ЭС новым фундаментальным свойством - способностью объяснить, как было получено решение, или что требуется, для того, чтобы имел место тот или иной факт.
В реальных системах, как правило, используется комбинация из прямого и обратного вывода. А для управления всем процессом логического вывода предназначены метаправила - специальный вид правил БЗ, представляющие собой директивы машины вывода.
Используя метаправила можно упорядочить применение знаний в зависимости от конкретных значений фактов и текущего состояния БЗ.
Продемонстрировать отличие мета правил от обычных правил можно на примере «игрушечной» ЭС. Пусть задачей этой ЭС является размещение мебели (столов, стульев, парт и пр.) в аудиториях университета с учетом требований эргономики, безопасности и т.д. На основании знаний:
об оборудовании помещения в зависимости от расположения и размеров аудитории,
от вида занятий (лекции, практика или лабораторные работы) и других параметров,
В БЗ заложены правила предписывающие тот или иной способ размещения мебели. Это обычный вид правил.
Но в данной предметной области может понадобиться уточнить способ решения задачи с помощью метаправил вида:
«Если имеет место свойство X, то сначала применить группу правил N».
Таким метаправилом может быть, например, следующее: «Если аудитория предназначена для лабораторных занятий, то сначала применить правила, касающиеся компьютеров и лабораторного оборудования, а затем мебели».
Если обычные правила БЗ представляют шаги решения задачи, то метаправила описывают стратегию получения решений.
Тот факт, что фактически изменяемой компонентой в архитектуре ЭС является БЗ, наталкивает на закономерный вопрос: «Можно ли взять готовую экспертную систему из одной предметной области, заложить в нее знания из другой предметной области, и получить новую ЭС?»
Для редактирования или даже при полной замене содержимого БЗ не требуется изменение кода ЭС и привлечение программистов, поэтому такой перенос готовых программных решений в принципе возможен. Исследования в этом направлении привели к созданию так называемых оболочек экспертных систем.
Оболочки ЭС включают машину вывода и интерпретатор ЯПЗ, развитый интерфейс разработчика, а также средства проектирования интерфейса пользователя. Наполнение БЗ оболочки позволяет получить ЭС для различных задач. Повторное использование разработанных компонентов ЭС значительно сокращает время разработки новых ЭС.
Однако, как показала практика применения оболочек ЭС, перенос методов решений и средств представления знаний из одной области знаний в другую не всегда возможен. Инструментальные средства, успешно применяемые для одного вида задач, оказываются неэффективными при попытке использовать их для решения других видов задач. Структура и методы описания знаний, в задачах медицинской диагностики и поиска неисправностей в электронных схемах, существенно отличаются от тех, что используются при проектировании технологических цепочек или выборе конфигурации компьютера.
Таким образом, возникло новое направление исследований - классификация экспертных задач, таких как медицинская диагностика, планирование, интерпретация сигналов, и т.п. Были предприняты попытки эвристической классификации методов описания знаний и решения проблем в зависимости от решаемой задачи. Такая классификация стала рассматриваться в качестве этапа, предваряющего выбор методов и инструментов решения задач.
23. Особенности технологии создания экспертных систем
Как уже было отмечено выше, архитектура различных ЭС, с точки зрения входящих в нее программных модулей, идентична практически для любых задач. Детали реализации модулей, конечно, могут сильно отличаются в различных проектах, но их базовый состав и взаимодействие четко определено. Таким образом, при создании ЭС основные усилия должны быть сконцентрированы на проектировании БЗ, в рамках которого выбирается:
язык представления знаний,
способы логического вывода и пр.
То есть, несмотря на то, что по своей сути ЭС это программный продукт, разработка новой ЭС сильно отличается от написания новой программы. В случае же если в качестве инструментального средства используется оболочка ЭС, этап программирования вообще исключается из процедуры создания ЭС.
Учитывая вышесказанное, технологию разработки ЭС можно представить схемой, включающей следующие этапы (Рисунок 1-2. Этапы разработки ЭС.):
Предварительный этап - этот этап включает деятельность предшествующую решению о разработке новой ЭС. В рамках этого этапа осуществляются конкретизация задачи, подбор экспертов в данной предметной области для совместной работы, выбор подходящих инструментальных средств. Главной особенностью этого этапа является то, что может быть принято решение о нецелесообразности разработки ЭС для выбранной задачи.
Этап прототипирования - в ходе этого этапа создается прототип ЭС, предназначенный проверки правильности выбранных средств и методов разработки новой ЭС. К прототипу системы не предъявляются высокие требования. Основная его задача состоит в иллюстрации возможностей будущей системы для специалистов, непосредственно участвующих в разработке, а также для потенциальных пользователей. На этом этапе может быть осуществлена корректировка проекта, уточнены время, стоимость и необходимые ресурсы для завершения работы.
Этап доработки - это по сути основной, наиболее рутинный и продолжительный этап работы над ЭС. Все компоненты многократно тестируются и доводятся до соответствия требованиям проекта. Наибольшую сложность вызывает доработка и доказательство адекватности и эффективности БЗ, так как количество записей в ней может быть на порядок больше, чем в прототипе.
На практике граница между этапами может быть размыта, а сам процесс проектирования является достаточно неформальным, так как связан с исследованием и попыткой копирования деятельности человека. Большое количество применяемых эвристик, интуитивный подход к решению задач экспертами делают процесс создания ЭС творческим. Впрочем, формализация технологии ЭС, разработка в ее рамках математических методов и алгоритмов формирования и обработки знаний - это и есть суть современной теории ЭС. Еще одной особенностью разработки ЭС является поэтапное ее внедрение. Первые версии новой ЭС начинают эксплуатироваться в ограниченном объеме уже на этапе прототипирования.
Рисунок 1-2.Этапы разработки ЭС
24. Нейронные сети как один из альтернативных подходов к решению интеллектуальных задач. Структура персептрона, принципы его работы
Нейронные сети
Технология создания структур, подобных структуре мозга, получила название нейрокибернетика. Физиологами давно установлено, что основой человеческого мозга является большое количество связанных между собой и нервных клеток - нейронов, взаимно влияющих друг на друга посредством электрических сигналов и способных менять свои характеристики. Поэтому усилия нейрокибернетики были сосредоточены на создании элементов, аналогичных нейронам, и их объединении в функционирующие системы. Эти системы принято называть нейронными сетями, или нейросетями.
Первые нейросети были созданы в конце 50-х гг. американскими учеными Г. Розенблаттом и П. Мак-Кигюком. Это были попытки создать системы, моделирующие человеческий глаз и его взаимодействие с мозгом. Устройство, созданное ими, получило название персептрона. Оно умело различать буквы алфавита, но было чувствительно к их написанию, например, буквы А, А и А для этого устройства были тремя разными знаками. Но главной особенностью этого устройства была способность к обучению. Перед началом работы устройству демонстрировались обучающие примеры символов, а затем, после завершения обучения, персептрон мог различать различные символы, которым его обучили.
Рисунок 5.3. Структура персептрона
В наиболее простом виде персептрон (Рисунок 5-3. Структура персептрона.) состоит из совокупности чувствительных (сенсорных) элементов (S_элементов), на которые поступают входные сигналы. S_элементы случайным образом связаны с совокупностью ассоциативных элементов (А-элементов), выход которых отличается от нуля только тогда, когда возбуждено достаточно большое число S_элементов, подающих сигналы на входы А-элемента.
А-элементы соединены с реагирующими элементами (R_элементами) связями, коэффициенты усиления (v) которых переменны и изменяются в процессе обучения.
Взвешенные комбинации выходов R_элементов составляют реакцию системы, которая указывает на принадлежность распознаваемого объекта определенному образу. Если распознаются только два образа, то в персептроне устанавливается только один R_элемент, который обладает двумя реакциями - положительной и отрицательной. Если образов больше двух, то для каждого образа устанавливают свой R_элемент, выходная реакция которого представляет линейную комбинацию связанных с ним выходов A-элементов:
где Rj- реакция j_го R_элемента; xi-реакция i_го A_элемента; нij-вес связи от i_го A_элемента к j_муR элементу; иj- порог j_го R_элемента.
Что такое искусственная нейронная сеть. Как работает нейронная сеть
Искусственная нейронная сеть (ИНС, нейронная сеть) - это набор нейронов, соединенных между собой. Как правило, передаточные функции всех нейронов в нейронной сети фиксированы, а веса являются параметрами нейронной сети и могут изменяться. Некоторые входы нейронов помечены как внешние входы нейронной сети, а некоторые выходы - как внешние выходы нейронной сети. Подавая любые числа на входы нейронной сети, мы получаем какой-то набор чисел на выходах нейронной сети. Таким образом, работа нейронной сети состоит в преобразовании входного вектора в выходной вектор, причем это преобразование задается весами нейронной сети.
Практически любую задачу можно свести к задаче, решаемой нейронной сетью. В этой таблице показано, каким образом следует сформулировать в терминах нейронной сети задачу распознавания рукописных букв.
Задача распознавания рукописных букв
Дано: растровое черно-белое изображение буквы размером 30x30 пикселов
Надо: определить, какая это буква (в алфавите 33 буквы)
Формулировка для нейронной сети:
Дано: входной вектор из 900 двоичных символов (900=30x30)
Надо: построить нейронную сеть с 900 входами и 33 выходами, которые помечены буквами. Если на входе нейронной сети изображение буквы «А», то максимальное значение выходного сигнала достигается на выходе «А». Аналогично нейронная сеть работает для всех 33 букв.
Поясним, зачем требуется выбирать выход нейронной сети с максимальным уровнем сигнала. Дело в том, что уровень выходного сигнала, как правило, может принимать любые значения из какого-то отрезка. Однако, в данной задаче нас интересует не аналоговый ответ, а всего лишь номер категории (номер буквы в алфавите). Поэтому используется следующий подход - каждой категории сопоставляется свой выход, а ответом нейронной сети считается та категория, на чьем выходе уровень сигнала максимален. В определенном смысле уровень сигнала на выходе «А» - это достоверность того, что на вход нейронной сети была подана рукописная буква «A». Задачи, в которых нужно отнести входные данные к одной из известных категорий, называются задачами классификации. Изложенный подход - стандартный способ классификации с помощью нейронных сетей.