Опубликован: 22.08.2012 | Уровень: для всех | Доступ: платный | ВУЗ: Московский государственный открытый университет им. В.С. Черномырдина
Лекция 11:

Интеллектуальные задачи в экономике

Продукционные системы

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

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

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

Широкое применение систем, основанных на правилах, обусловлено описанными ниже причинами.

  • Модульная организация. Благодаря такой организации упрощается представление знаний и расширение экспертной системы.
  • Наличие средств объяснения. Такие экспертные системы позволяют легко создавать средства объяснения с помощью правил, поскольку антецеденты правила точно указывают, что необходимо для активизации правила. Средство объяснения позволяет следить за тем, запуск каких правил был осуществлён, поэтому даёт возможность восстановить ход рассуждений, которые привели к определённому заключению.
  • Наличие аналогии с познавательным процессом человека. Согласно результатам, полученным Ньюэллом и Саймоном, правила представляют собой естественный способ моделирования процесса решения задач человеком. А при осуществлении попытки выявить знания, которыми обладают эксперты, проще объяснить экспертам структуру представления знаний, поскольку применяется простое представление правил IF-THEN.

Продукционные системы Поста

Продукционные системы были впервые использованы в символической логике Постом (Post), поэтому имя этого учёного вошло в название указанных систем. Пост доказал такой важный и неожиданный результат, что любая система математики или логики может быть оформлена в виде системы продукционных правил определённого типа. Этот результат показал огромные возможности применения продукционных правил для представления важных классов знаний, а это означает, что продукционные правила не сводятся к нескольким ограниченным типам. Кроме того, продукционные правила, обозначаемые термином правила подстановки, используются также в лингвистике как способ определения грамматики языка. Компьютерные языки обычно определяются с помощью формы продукционных правил, известной как нормальная форма Бэкуса-Наура (Backus-Naur FormBNF. Основная идея Поста заключалась в том, что любая математическая или логическая система представляет собой набор правил, который указывает, как преобразовать одну строку символов в другой последовательный набор символов. Это означает, что продукционное правило после получения входной строки (антецедента) способно выработать новую строку (консеквент). Такая идея является также действительной по отношению к программам и экспертным системам, в которых начальная строка символов представляет собой входные данные, а выходная строка становится результатом определённых преобразований, которым были подвергнуты входные данные.

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

антецедент —> консеквент

у пациента имеется высокая температура —> пациент должен принять аспирин

В этом правиле стрелка означает, что одна строка должна быть преобразована в другую. Указанное правило можно интерпретировать с помощью более знакомой системы обозначений IF-THEN следующим образом:

IF у пациента имеется высокая температура THEN пациент должен принять аспирин.

Rete – алгоритм

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

Решением этой проблемы является rete-алгоритм, разработанный Чарльзом Л. Форги (Charles L. Forgy) в университете Карнеги-Меллона в 1979 году в рамках диссертации по командному интерпретатору экспертной системы OPS (Official Production System — стандартная продукционная система) на получение степени доктора философии. Термин rete - алгоритм происходит от латинского слова rete (по-английски читается "рити", а по-русски — "реете"), которое означает сеть. Rete-алгоритм функционирует как сеть, которая предназначена для хранения большого объёма информации и обеспечивает значительное сокращение времени отклика. Кроме того, он обеспечивает повышение быстродействия при запуске правил по сравнению с большими группами правил IF-THEN, которые должны проверяться один за другим в обычной системе, основанной на правилах. Rete-алгоритм основан на использовании динамической структуры данных, подобной стандартному дереву В+, которая автоматически реорганизуется в целях оптимизации поиска.

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

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

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

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

На рис.11.19 показаны технологии, которые образуют фундамент современных экспертных систем, основанных на правилах.

Современные экспертные системы, основанные на правилах

Рис. 11.19. Современные экспертные системы, основанные на правилах
Пример разработки экспертной системы

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

  1. ЕСЛИ класс – бухгалтерские программы

    И форма конфигурирования системы должна быть жёсткой (пользователь не будет иметь возможности сам конфигурировать какие-либо входные или выходные документы)

    ТО лучше всего подходит бухгалтерская программа 1С версия 6.0.
  2. ЕСЛИ класс – бухгалтерские программы

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

    И программа разработана под оболочку DOS.

    ТО лучше всего подходит система бухгалтерских программ "Бест".
  3. ЕСЛИ класс – бухгалтерские программы

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

    И программа разработана под оболочку Windows95.

    И программа одноуровневая.

    ТО лучше всего подходит бухгалтерская программа "Инфо Бухгалтер".
  4. ЕСЛИ класс – бухгалтерские программы

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

    И программа разработана под оболочку Windows95.

    И программа не одноуровневая.

    ТО лучше всего подходит система бухгалтерских программ "Турбо Бухгалтер".
  5. ЕСЛИ тип – правовые системы

    И пополнение информационной базы происходит еженедельно (минимум), посредством курьера

    ТО лучше всего подходит правовая программа "Гарант".
  6. ЕСЛИ тип – правовые системы

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

    ТО лучше всего подходит правовая программа "Кодекс".
  7. ЕСЛИ тип – правовые системы

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

    ТО лучше всего подходит правовая программа "Эталон".
  8. ЕСЛИ тип – складские программы

    И форма конфигурирования системы должна быть жёсткой (пользователь не будет иметь возможности сам конфигурировать какие-либо входные или выходные документы)

    ТО лучше всего подходит правовая складская программа "Фолио".
  9. ЕСЛИ тип – складские программы.

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

    ТО лучше всего подходит правовая программа склад "1С версия 7.5".

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

ЭС: Какое программное обеспечение вы хотели бы приобрести? (правовое, бухгалтерское, складское).

Пользователь: Бухгалтерское

ЭС: Форма конфигурирования системы должна быть жёсткой (пользователь не будет иметь возможности сам конфигурировать какие-либо входные или выходные документы)? (да, нет).

Пользователь: Нет.

ЭС: Форма конфигурирования системы должна быть лояльной (т.е. пользователь может сам конфигурировать какие-либо входные или выходные документы)?

Пользователь: Да

ЭС: Программа должна быть разработана под оболочку Windows95?

Пользователь: Да.

ЭС: Программа должна быть одноуровневая? (да, нет).

Пользователь: Нет.

ЭС: Программа должна быть не одноуровневая?

Пользователь: Да

ЭС: Лучше всего для вас подходит система бухгалтерских программ "Турбо Бухгалтер".

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

Правила типа "если – то" для представления знаний

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

  • если предварительное условие P, то заключение (вывод) C;
  • если ситуация S, то действие A;
  • если выполнены условия C1 и C2, то не выполнено условие C.

"Если – то" - правила обычно оказываются весьма естественным выразительным средством представления знаний. Кроме того, они обладают следующими привлекательными свойствами:

  1. Модульность: каждое правило описывает небольшой, относительно независимый фрагмент знаний.
  2. Возможность инкрементного наращивания: добавление новых правил в базу знаний происходит относительно независимо от других правил.
  3. Удобство модификации (как следствие модульности): старые правила можно изменять и заменять на новые относительно независимо от других правил.
  4. Применение правил способствует "прозрачности системы".

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

  • Вопросы типа "как": Как вы пришли к этому выводу?
  • Вопросы типа "почему": Почему вас интересует эта информация?

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

если условие A, то заключение B с уверенностью F

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

Преимущества экспертных систем

Как описано ниже, экспертные системы обладают многими привлекательными особенностями.

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

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

Анна Нагель
Анна Нагель
Виталий Елин
Виталий Елин

Здравствуйте!
Объясните, пожалуйста, выдается ли диплом о профессиональной переподготовке?
Если - нет, то почему?

Здесь вначале говориться что выдается диплом, а внизу страницы сказано что нет
Цитата: "
диплом о профессиональной переподготовке MBA- больше не выдается
диплом о профессиональной переподготовке- больше не выдается
"

Евгений Зуев
Евгений Зуев
Россия, Москва, Московский технологический институт, 2013
Христина Носова
Христина Носова
Финансовый университет при Правительстве РФ