Справочник от Автор24
Поделись лекцией за скидку на Автор24

Методы и системы принятия решений

  • ⌛ 2016 год
  • 👀 540 просмотров
  • 📌 514 загрузок
  • 🏢️ СФУ
Выбери формат для чтения
Загружаем конспект в формате doc
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Конспект лекции по дисциплине «Методы и системы принятия решений» doc
Министерство образования и науки Российской Федерации ФГБОУ ВПО «Сибирский федеральный университет» Г.А. Доррер МЕТОДЫ И СИСТЕМЫ ПРИНЯТИЯ РЕШЕНИЙ Допущено Учебно-методическим объединением вузов по университетскому политехническому образованию в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлению подготовки бакалавров 09.03.01 Информатика и вычислительная техника 2016 УДК 681.3.06 Доррер, Г.А. Методы и системы принятия решений: учебное пособие для студентов направления 09.03.01 Информатика и вычислительная техника / Г.А. Доррер. – Красноярск: СФУ, 2016. – 230 с. Учебное пособие предназначено для студентов, обучающихся по направлениям подготовки бакалавров 09.03.01 Информатика и вычислительная техника при изучении дисциплины «Методы и системы принятия решений». Кроме того, книга может быть полезной студентам и аспирантам других направлений и специальностей при ознакомлении с основами системного анализа и теории принятия решений. Приводятся основные понятия и термины системного анализа и теории принятия решений: лицо, принимающее решения, порядок подготовки решения (регламент), цели, ресурсы, риски и неопределенности, критерии оценки решения. Отмечается роль математического моделирования как способа формирования множества альтернатив решения, дается классификация используемых при этом математических моделей и приводятся примеры их применения при принятии решений. Описаны методы выбора альтернатив решений, основанные на знаниях. Рассмотрены когнитивные модели знаний, экспертные оценки, онтологии, продукционные модели. Рассмотрены методы поддержки принятия решений на основе теорииоптимизации, цепей Маркова, сетей Петри, ГЕРТ-сетей, имитационного моделирования. В качестве примеров действующих систем поддержки принятия решенийописаныдве системы, актуальные для Сибирского региона: экспертная система по ликвидации аварий ЭСПЛА и система космического мониторинга состояния лесов ИСДМ-Рослесхоз. Рецензенты: д-р. техн. наук, проф. М.Н. Фаворская (СибГАУ им.М.Ф. Решетнева); д-р. Техн. наук, проф. Л.Ф. Ноженкова (ИВМ СО РАН) ©Доррер г.а., 2016 ©«Сибирский федеральный университет», 2016 Оглавление Предисловие 4 Введение 5 Глава 1 Общие сведения о теории принятия решений 11 1.1 Понятия, связанные с принятием решений 11 1.2 Определенность результатов принимаемых решений 13 1.3 Критерии оценки решения 16 1.4 Системы поддержки принятия решения 18 1.5 Математическое моделирование при принятии решений 21 1.6 Классификация математических моделей структурированных систем 28 1.7 Задачи моделирования на различных уровнях принятия решений 31 Глава 2 Системы поддержки принятия решений, основанные на знаниях 35 2.1 Способы описания знаний 35 2.2 Когнитивные модели 37 2.3 Онтологические модели процесса принятия решений 44 2.4 Экспертный подход к принятию решений 49 2.5 Продукционные модели знаний 56 Глава 3 Методы оптимизации в задачах принятия решений 67 3.1 Принятие решений на основе методов линейного программирования 68 3.2 Математическая модель планирования производства 70 3.3 Задачи оптимального планирования производства 72 3.4 Транспортная задача 78 3.5 Задачи об упаковке 81 3.6 Задачи о замене оборудования 84 3.7 Многокритериальные задачи принятия решений 90 Глава 4 Вероятностные модели формирования и выбора альтернатив решений 97 4.1 Моделирование систем на основе формализма цепей Маркова 97 4.2 Модель процесса обучения как цепь Маркова 107 4.3 Система обслуживания заявок с очередью и отказами 110 4.4 Модель динамики информационных ресурсов 113 4.5 Принятие решений об оптимизации инвестиционного портфеля 119 4.6 Имитационное моделирование при принятии решений 123 Глава 5 Сетевые модели поддержки принятия решений 134 5.1 Обыкновенные сети Петри 135 5.2 Раскрашенные (цветные) сети Петри (CPN) 151 5.3 Моделирование дискретных систем 164 5.4 ГЕРТ-сети 185 Глава 6 Примеры систем поддержки принятия решений 200 6.1 Система ЭСПЛА 200 6.2 Информационная система дистанционного мониторинга лесных пожаров Федерального агентства лесного хозяйства РФ 208 Заключение 226 Библиографический список 227 Предисловие Учебное пособие написано на основе лекций, которые автор читал в Институте космических и информационных технологий Сибирского федерального университета в 2012 – 2015 годах. В настоящее время теория принятия решений – актуальное направление научных исследований и прикладных разработок, специфика которых зависит от предметной области. Автор в рамках односеместрового курса основное внимание уделил методам принятия решений в областях, связанных с профилем подготовки бакалавров. Пособие ставит целью приобретение студентами компетенций, предусмотренных ГОС ВПО для программ бакалавриата по направлению подготовки 09.03.01 Информатика и вычислительная техника. Выпускник должен обладать, в частности, следующими компетенциями: • способностью решать стандартные задачи профессиональной деятельности на основе информационной и библиографической культуры с применением информационно-коммуникационных технологий и с учетом основных требований информационной безопасности (ОПК-5); • способностью разрабатывать компоненты аппаратно-программных комплексов и баз данных, используя современные инструментальные средства и технологии программирования (ПК-2). Кроме того, в работе учтены требования профессиональных стандартов в области информационных технологий, разработанных в рамках Национальной системы компетенций и квалификаций. В пособии помимо общих понятий теории принятия решений и традиционных методов оптимизации показана роль моделей знаний, включающих когнитивные модели, экспертные оценки и продукционные модели при принятии решений в слабоструктурированных системах. Также рассмотрены модели, базирующиеся на формализме сетей Петри, и вероятностные модели, основанные на теории конечных цепей маркова и теории GERT-сетей, позволяющие определять вероятностные характеристики сложных процессов. Ограниченный объем книги не позволил рассмотреть ряд других методов, используемых в задачах принятия решений, в частности, методы нечеткой логики, нейронных сетей, теории игр. Изложение ведется по возможности неформально, на «инженерном» уровне строгости и сопровождается численными примерами. В конце каждой главы содержится набор вопросов, задач и упражнений для самостоятельной работы. Кроме того, по материалам пособия предусмотрен цикл лабораторных работ, который издается отдельно. Автор благодарен коллегам по работе и рецензентам: д-ру техн. наук, проф. М.Н. Фаворской (СибГАУ им. М.Ф. Решетнева), д-ру техн. наук, проф. Л.Ф. Ноженковой (ИВЦ СОРАН) Введение Процессы принятия решений лежат в основе любой целенаправленной деятельности – в технике, экономике, политике, социальной сфере, обеспечении безопасности. Научным обслуживанием этих процессов, т.е. изучением и развитием методов принятия решений, первоначально занималась такая научная дисциплина, как «Исследование операций», вошедшая затем в направление, названное «Системным анализом». Исторически системный анализ представляет собой совокупность методов исследования систем, методик выработки и принятия решений при проектировании, конструировании и управлении сложными объектами различной природы. Ключевая особенность системного анализа – учет системного эффекта, когда совокупность объектов, объединенных в систему, приводит к появлению новых свойств. При этом для понимания поведения системы необходимы теоретические знания различных дисциплин, а для исследования должны применяться не только формализованные методы, но и неформальные процедуры. Эта теория получила широкое распространение при решении проблем, возникающих в различных областях. В качестве примера можно привести список (далеко не полный) организационно-технических систем, где методы системного анализа играют важную роль [2, 4, 23, 26, 34]: • прогнозирование процессов в различных областях, • управление финансами, • информационные технологии, • управление трудовыми ресурсами, • управление социальными системами, • планирование производства, • управление запасами, • управление процессами обучения, • транспортные системы, • военные системы, • управление чрезвычайными ситуациями, • электроэнергетические системы, • производственные и технологические процессы, • организация досуга (туризм, спорт, развлечения). Математическим аппаратом дисциплины «Системный анализ» традиционно служат различные методы прикладной математики: прогнозирование, оптимизация, теория вероятностей и математическая статистика, теория массового обслуживания, структурный анализ и другие. Со временем практика управления потребовала вовлечения в процесс принятия решений не только формальных методов, но и учета качественных, слабоструктурированных факторов. К последним относятся знания специалистов, которые невозможно формализовать. Это, прежде всего, опыт, интуиция, приверженность к тем или иным взглядам лиц, принимающих решения. Отсюда появилось новое комплексное научное направление «Теория принятия решений» – ТПР, которое использует не только формальные методы дисциплин, входящих в направление системного анализа, но и методы экспертных оценок, так называемые «мягкое» моделирование ситуаций, достижения в области информационных технологий и искусственного интеллекта. В числе последних особенно важными являются интеллектуальные системы, способные к воспроизведению таких антропоморфных (человеческих) свойств, как опыт и интуиция, а также имитации убеждений, желаний, замыслов и обязательств. Для помощи персоналу, занятому подготовкой решений, созданы специализированные информационно-управляющие системы, называемые системами поддержки принятия решений–СППР. Близкие по смыслу и назначению задачи решает теория управления, ведь управление – это последовательность принимаемых решений. Однако традиционно теория управления сосредотачивается на изучении методов управления динамическими системами различной природы, информация о которых имеет достаточно структурированный вид. Терминология системного анализа В качестве введения, необходимого для понимания дальнейшего материала, мы рассмотрим важнейшие термины и понятия системного анализа [31]. Элемент – это минимальный неделимый объект. Элемент можно использовать только как целое, поэтому недопустимо говорить о половине или четверти элемента. Неделимость элемента — это, прежде всего, удобное понятие, но не физическое свойство. Оперируя понятием «элемент», исследователь оставляет за собой право перейти на другой уровень рассмотрения вопросов и говорить о том, из чего состоит элемент, а это свидетельствует о физической разложимости последнего. Таким образом, объекты называются элементами по соглашению, принимаемому с целью дать ответ на определенные вопросы, стоящие перед исследо-вателями. Изменение вопросов может потребовать разложения элементов на составные части или объединения нескольких элементов в один. Система – это совокупность связанных элементов, объединенных в одно целое для достижения определенной цели. Здесь под целью понимается совокупность результатов, определяемых назначением системы. Наличие цели и заставляет связывать элементы в систему. Целостность — наиболее важное свойство системы. Элемент принадлежит системе потому, что он связан с другими ее элементами, так что множество элементов, составляющих систему, невозможно разбить на два и более несвязанных подмножества. Удаление из системы элемента или совокупности элементов непременно изменяет ее свойства в направлении, отличном от цели. В ряде случаев система существует в некоторой внешней среде, тогда можно говорить о границе между системой и остальной средой. Искусственные (инженерные) системы описывают путем определения их функций и структур. Функция системы – это правило получения результатов, предписанных целью (назначением) системы. Определяя функцию системы, ее поведение описывают с использованием некоторой системы понятий — отношений между переменными, векторами, множествами и т.п. Функция устанавливает, что делает система для достижения поставленной цели безотносительно к физическим средствам (элементам, связям), составляющим саму систему, и не определяет, как устроена система. Системы изучают на разных уровнях абстракции, с использованием различных подходов, каждый из которых дает ответ на определенные вопросы. В связи с этим функции системы могут описываться с разной степенью детализации. Для описания функций систем используются различные теории: теория множеств, теория алгоритмов, теория случайных процессов, теория информации и другие. Функционировать – значит реализовать функцию, т.е. получать результаты, предписанные назначением системы. Обратная связь – воздействие результатов функционирования системы на характер этого функционирования. Различают положительную и отрицательную обратную связь. Структура системы – это фиксированная совокупность элементов и связей между ними. В общей теории систем под структурой принято понимать только множество связей между элементами, т.е. структура понимается как картина, отображающая только конфигурацию системы безотносительно к составляющим ее элементам. Такое толкование ее понятия удобно при структурном подходе к изучению свойств различных систем — систем с параллельными, последовательными, иерархическими структурами, обратными связями и т.п. На практике в понятие «структура» включают не только множество связей, но и множество элементов, между которыми существуют связи. Этот смысл отражен в данном определении структуры. Наиболее часто структура системы изображается в форме графа: элементы системы представляются вершинами графа, а связи – дугами (ребрами) графа. Граф – это математическая форма отображения структур. Инженерной формой изображения структур систем являются схемы. Схема и граф – понятия, адекватные по содержанию, но различные по форме. В схемах элементы и связи обозначаются любыми фигурами, удобными для инженерных (производственных) применений. Организация – это способ реализации определенных функций в системах, состоящих из большого числа элементов. Обычно к одной и той же цели можно прийти различными способами, исходя из различных принципов организации систем. Каждый принцип организации задает определенный способ построения множества систем, аналогичных по назначению, но различных по функциям и структурам. Конкретная система представляет собой лишь пример реализации некоторого способа организации. Например, подавляющее большинство современных ЭВМ строится на основе одного принципа организации – принципа программного управления реализацией алгоритма на основе команд, имеющих операционно-адресную структуру. Таким образом, организация – понятие более высокого ранга, чем функция и структура; организация – это модель, на основе которой могут строиться многие конкретные системы. Если речь идет о способе порождения функций, достаточных для достижения определенной цели (определенных результатов), то используется термин функциональная организация. Если же речь идет о наборе элементов и способе их соединения в структуру, обеспечивающую реализацию функций определенного класса, то используется термин структурная организация. Определяя некоторый способ функциональной организации, выявляют класс функций, присущих системам определенного назначения (безотносительно к средствам, необходимым для реализации этих функций), а определяя способ структурной организации, выявляют правило построения структур, реализующих некоторый класс функций, т.е. отвечающих некоторому назначению. Целостность системы – ее относительная независимость от среды и других аналогичных систем. Эмерджентность – свойство несводимости системы к свойствам элементов системы. Это означает, что элементы, соединенные в систему, приобретают новые свойства. Анализ – это процесс определения свойств, присущих системе. Типичная задача анализа состоит в следующем. Известны функции и характеристики элементов, входящих в состав системы, и определена структура системы. Необходимо определить функции или характеристики, присущие совокупности элементов в целом. Синтез – это процесс порождения функций и структур, необходимых и достаточных для получения определенных результатов. Выявляя функции, реализуемые системой, определяют некоторую абстрактную систему, о которой известно только то, что она будет делать. В связи с этим этап синтеза функций называется абстрактным синтезом, а этап порождения структуры, реализующей заданные функции, — структурным синтезом. Эффективность – это степень соответствия системы своему назначению. Из двух систем более эффективной считается та, которая лучше соответствует своему назначению. Оценка эффективности системы — одна из задач анализа систем. Показатель эффективности (качества) – это мера одного свойства (характеристики) системы. Показатель эффективности всегда имеет количественный смысл, т. е. является измерением некоторого свойства. По этой причине использование некоторого показателя эффективности предполагает наличие способа измерения (оценки) значения этого показателя. Для оценок эффективности систем могут применяться, например, такие показатели, как производительность, стоимость, надежность, габариты и т. п. Критерий эффективности – это мера эффективности системы. Критерий эффективности имеет количественный смысл и измеряет степень эффективности системы, обобщая все ее свойства в одной оценке — значении критерия эффективности. Эффективность систем, создаваемых для одной цели, оценивается на основе одного критерия, общего для этого класса систем. Различие в назначениях систем предполагает, что для оценки эффективности таких систем используются различные критерии. Если при увеличении эффективности значение критерия возрастает, то критерий называется прямым; если значение критерия уменьшается, то инверсным. Из двух систем более эффективной считается та, которой соответствует большее значение прямого критерия (меньшее значение инверсного критерия). Вопросы и задания для самостоятельного изучения 1. Как идентифицировать границу между системой и внешней средой? Является ли граница частью системы? 2. Чем система отличается от совокупности различных элементов? 3. Приведите примеры проявления эмерджентности в системах. 4. Может ли социальная система состоять из одного человека или требуются как минимум двое? 5. Рассматривая процесс обучения в вузе как систему, выделите в нем и охарактеризуйте перечисленные выше термины: элемент, система, функция, структура, организация (функциональная и структурная), эффективность, обратная связь, показатель эффективности, критерий эффективности, анализ и синтез системы. 6. Обязательно ли система должна иметь цель? 7. По мнению некоторых ученых, социальной системой является любая группа, не обязательно состоящая из людей, например, рой пчел, стая птиц. Является ли в таком случае социальной системой сеть компьютеров? Глава 1 Общие сведения о теории принятия решений 1.1 Понятия, связанные с принятием решений Прежде всего, отметим, что принятие решений всегда есть ничто иное, как выбор. Принять решение – значит выбрать конкретный вариант действий из некоторого множества, которые принято называть альтернативами [26, 35]. Однако первоначально у нас может не быть множества альтернатив, из которых предстоит делать выбор. Тогда, прежде всего, придется заняться рассмотрением возможных вариантов решения. Это и есть первый этап решения проблемы, который называют «формирование множества альтернатив». Первоначально множество альтернатив чаще всего аморфно, т.е. не имеет структуры. Точнее говоря, часто мы не можем эти альтернативы четко сформулировать, а также сказать, какая альтернатива лучше, а какая хуже. Следовательно, задачу выбора можно решить, если каким-либо образом структурировать множество альтернатив. Далее заметим, что в теории принятия решений есть слово поддержка. Это означает, что речь пойдет не собственно о принятии решений, а о подготовке рекомендаций для того лица (тех лиц), которому (которым) нужно решение принимать. В теории принятия решений есть специальный термин – Лицо, Принимающее Решения, сокращенно ЛПР. Это тот (или те), на ком лежит ответственность за принятое решение, кто подписывает приказ или иной документ, в котором выражено решение. Это может быть генеральный директор или председатель правления фирмы, главный конструктор проекта, командир воинской части, мэр города и т.п., словом – ответственный работник. Но иногда действует коллективный ЛПР, например, Совет директоров некоторой фирмы, Съезд партии или Государственная Дума Российской Федерации. Проект решения готовят специалисты, как говорят, «команда ЛПР», часто вместе с сотрудниками иных организаций. Если ЛПР доверяет своим помощникам, то может даже не читать текст, а просто подписать его. Но ответственность все равно лежит на ЛПР, а не на тех, кто участвовал в подготовке решения. При практической работе важно четко отделять этап дискуссий, когда рассматриваются различные варианты решения, от этапа принятия решения, после которого надо решение выполнять, а не обсуждать. Порядок подготовки решения (регламент). При подготовке решения большую роль играет разграничение сфер ответственности – кто за что отвечает, кто какие решения готовит. Поэтому очень важны регламенты, определяющие порядок работы. Недаром работу любого предприятия или общественного объединения начинают с утверждения его устава, а любое собрание принято начинать с утверждения председательствующего и повестки заседания, а также сопровождать ведением протокола собрания. Кроме того, процедура подготовки и принятия решения очень зависит от рассматриваемой предметной области (экономика, менеджмент, политика, техническое проектирование, борьба с чрезвычайными ситуациями, военные действия и т.д.) Цели. Каждое решение должно быть направлено на достижение одной или нескольких целей. Например, можно желать: • создать эффективно работающую информационную систему; • продолжать выполнять миссию организации; • получить максимально возможную прибыль (в условиях неопределенности будущей финансово-экономической ситуации); • избежать значительных убытков; • максимально быстро ликвидировать чрезвычайную ситуацию; • выиграть сражение; • выиграть выборы в законодательный орган и т.д. Несколько целей можно достичь одновременно. Однако так бывает не всегда. Например, иногда встречается формулировка «добиться максимума прибыли при минимуме затрат», которая с точки зрения классической теории оптимизации ошибочна. В самом деле, минимум затрат равен нулю, когда работа не проводится, но и прибыль тогда тоже равна нулю. Если же прибыль велика, то и затраты велики, поскольку и то, и другое связано с объемом производства. Можно либо максимизировать прибыль при фиксированных затратах, либо минимизировать затраты при заданной прибыли, но невозможно добиться «максимума прибыли при минимуме затрат». Однако если рассматривать эту задачу с точки зрения многокритериальной оптимизации, то решение будет состоять в поиске компромисса между этими противоречивыми критериями. Так и поступают на практике. Ресурсы. Каждое решение предполагает использование тех или иных ресурсов. При практической работе над проектом решения важно все время повторять: «Чего мы хотим достичь? Какие ресурсы мы готовы использовать для этого?» Таким образом, в процедуре принятия решений наличие ресурсов всегда выступает в качестве ограничения. Ограничения могут быть материальными, финансовыми, кадровыми, моральными и другими. Риски и неопределенности. Многие решения принимаются в условиях риска, то есть при наличии опасности потерь. Связано это с разнообразными неопределенностями, окружающими нас. Предвидение рисков является одним из важнейших показателей квалификации персонала, готовящего решения. Кроме отрицательных неожиданностей бывают положительные – их называют удачами. ЛПР стараются застраховаться от потерь и не пропустить удачу. Аналогично рассмотренной выше формулировке, внутренне противоречива и формулировка: «максимум прибыли и минимум риска». Обычно при возрастании прибыли возрастает и риск – возможность многое или все потерять. Поэтому при принятии решений снова возникает задача оптимизации по двум критериям – обеспечить компромисс между величиной прибыли и уровнем риска. К рискам относится также учет возможных отклонений исходных данных, и это нужно предусматривать в используемой математической модели с тем, чтобы оценить зону неопределенности при принятии решений. 1.2 Определенность результатов принимаемых решений По степени определенности ожидаемые результаты принятия решений могут значительно отличаться. До 60-х годов XX века предполагалось, что есть два класса процессов. К первому классу относились процессы, которые описываются динамическими системами, где будущее однозначно определяется прошлым (детерминированные системы). Детерминированные системы – это системы, в которых все данные и все взаимосвязи определены точно и однозначно, а результат принятия решения может быть просчитан заранее с необходимой точностью. Иначе говоря, для таких систем имеется полная предсказуемость, и мы можем заглянуть как угодно далеко в будущее и как угодно далеко в прошлое. На практике к детерминированным системам близки системы с хорошо изученными процессами, например, в машиностроении, когда технические характеристики создаваемой машины можно достаточно точно просчитать при проектировании. Второй класс процессов – это процессы, где будущее не полностью зависит от прошлого и определяется случайными факторами (вероятностные или стохастические системы). Системы с вероятностным поведением – это системы, в которых часть параметров или взаимосвязей точно не определена, но известны вероятностные законы, которым они подчиняются. При принятии решения о поведении таких систем мы не можем точно указать, какими будут результаты, но можем гарантированно определить диапазон возможных значений и их вероятности. Примером такой системы может служить самолет, летящий в турбулентной атмосфере. Аэродинамика самолета обычно известна достаточно точно, а характеристики атмосферы могут быть описаны только на языке теории случайных процессов, в результате чего и динамика самолета будет описана вероятностно. В 70-е годы прошлого века стало понятно, что есть третий класс процессов, которые формально описываются динамическими системами, но при этом их поведение может быть предсказано только на небольшом интервале времени. Были пересмотрены взгляды на принципиальную возможность предсказуемости. В 1963 году был введен термин горизонт прогноза или предел предсказуемости. Для существования горизонта прогноза не нужно, чтобы «Бог играл в кости», как писал Альберт Эйнштейн, добавляя в уравнения, описывающие реальность, случайные члены. Оказалось, что объекты, поведение которых невозможно предсказать на достаточно большие времена, могут быть очень простыми. Было показано, что чувствительность системы к начальным данным может вести к хаосу. Это явление получило название эффекта бабочки (по рассказу Рея Бредбери), который связан с тем, что малые причины могут привести к большим последствиям. Так, например, несмотря на совершенствование в течение десятков лет математических моделей, использование сверхмощных компьютеров, разработку новых численных методов и совершенствование систем наземного, воздушного и космического мониторинга за состоянием погоды, не удалось разработать эффективную методику ее среднесрочного (на 2-3 недели вперед) прогноза для конкретных географических точек земной поверхности. Горизонт прогноза для состояния океана эксперты оценивают в месяц. В этих случаях «взмах бабочки» в конкретной точке в некоторый момент времени может привести к ураганам и изменению погоды в огромном регионе. Экономические прогнозы, опирающиеся на представления о хаосе, стали бурно развивающейся областью деятельности, однако и они не смогли предсказать финансовые кризисы 2008 и 2015 годов. Одно из новых направлений исследования сложных динамических систем связано с предсказанием редких катастрофических событий. Оказалось, что самые разные катастрофические события могут развиваться по близким законам, например, фондовый рынок и тектонический разлом – незадолго перед катастрофой. В обоих случаях есть быстрый катастрофический рост, на который накладываются ускоряющиеся колебания. Это так называемые режимы с обострением, когда одна или несколько величин, характеризующих систему, за конечное время вырастает до бесконечности. Проведенный анализ статистики катастроф XX века показал, что статистика землетрясений, наводнений, ураганов, биржевых крахов, ущерба от утечки конфиденциальной информации и многих других подчиняется степенным распределениям. Из свойств этих распределений следует, что вероятность появления катастрофических событий значительно выше, чем это следует из нормального закона распределения вероятностей, который до недавнего времени использовался при анализе рисков катастрофически неблагоприятных исходов. Из нормального закона следует, например, что вероятность отклонения случайной величины от среднего значения более чем на три среднеквадратичных отклонений составляет менее 0,001, и параметры катастрофического события практически невозможны. Однако фактическая частота появления катастрофических событий показывает, что это не так. Распределение вероятностей описанных выше событий качественно отличается от нормального распределения, имеют место распределения с так называемыми хвостами, когда вероятность больших отклонений от среднего значения не является пренебрежимо малой величиной. Еще одно направление исследований в области прогнозирования динамических систем связано с искусственными нейронными сетями, которые оказались эффективным инструментом обработки информации для описания систем, для которых традиционные методы прогнозирования неэффективны. 1.3 Критерии оценки решения Для выбора наилучшего варианта решения можно использовать различные критерии. Рассмотрим их кратко [26]. 1 Пессимистический подход. Можно исходить из наихудшего случая, рассматривая внешний (для организации) мир как врага, который всячески будет стараться уменьшить ее прибыль или увеличить убытки. Такой подход хорош при рассмотрении совершенно бескомпромиссного противостояния двух противников, имеющих противоположные интересы, например, двух армий воюющих между собой государств. Существует раздел науки об исследовании операций – теория игр, в которой рассматриваются методы оптимального поведения в условиях антагонистического или иного конфликта, например, минимизация максимально возможного ущерба. В большинстве случаев это позиция крайнего пессимизма, поскольку часто нет оснований считать внешний мир активным сознательным противником организации. 2 Подход оптимиста прямо противоположен предыдущему подходу. Предлагается исходить из самого благоприятного стечения обстоятельств. Внешний мир в этом случае – друг, а не враг. И надо сказать, что для такой позиции могут быть основания. С точки зрения теории планирования такой подход можно взять за основу, добавив возможности коррекции плана в случае неблагоприятных обстоятельств. Здесь мы приходим к необходимости гибкого планирования, которое обеспечило бы свободу управления в зависимости от складывающейся ситуации. С чисто логической точки зрения оптимизм не менее и не более оправдан, чем пессимизм. Люди вообще и менеджеры, в частности, делятся на два типа – оптимистов и пессимистов. Особенно четко различие проявляется при вложении капитала, поскольку, как правило, увеличение прибыли связано с увеличением риска. Одни люди предпочтут твердый доход (да еще и застрахуются), отказавшись от соблазнительных, но рискованных предложений. Другой тип людей – оптимисты и авантюристы, они уверены, что им повезет. Задача, связанная с оценкой рисков при вложении капитала, рассмотрена в нашем курсе (раздел 3.5). 3 Непрерывное принятие решений. Такой подход является развитием предыдущего, он фактически предполагает, что придется много раз принимать решения по аналогичным вопросам. При этом рассчитывается средний доход за весь период планирования. Такой подход вполне обоснован, когда решения принимаются достаточно часто, например, каждую неделю или каждый день. Если события происходят много раз, то для принятия решений естественно использовать методы вероятностного моделирования, добиваясь максимума среднего дохода. 4 Подход, основанный на понятии упущенной выгоды. При таком подходе рассматривается уменьшение прибыли в случае, когда фактическая ситуация оказывается более благоприятной, чем было принято в решении. Этот критерий в общем случае противоречат пессимистическому подходу. В каждом конкретном случае ЛПР приходится решать, какой из критериев для него важнее, либо находить компромисс между критериями. В этом случае мы имеем дело с задачами многокритериальной оптимизации. При решении экономических задач может оказаться полезной хорошо разработанная и имеющая развитый математический аппарат теория полезности, в частности, так называемая«маржинальная полезность» в теории поведения потребителя. 5 Реальные процедуры принятия управленческих решений. Эти процедуры сильно зависят от предметной области, в которой принимаются решения. Например, при ликвидации чрезвычайных ситуаций важным критерием является скорость принятия решения, поскольку времени на подробное обсуждение и согласование вариантов действий просто нет. В то же время в организационных системах решения обычно принимаются в несколько этапов. Предложения оформляются в виде документов – приказов, планов, графиков и т.п., направляемых в подчиненные структуры или в другие организации. Обычно сотрудники команды ЛПР – назовем их Исполнителями – готовят первоначальный вариант документа. Он размножается и рассылается на отзыв заинтересованным в нем сотрудникам, а иногда и в другие организации. Исполнители составляют сводку отзывов, с одними из замечаний соглашаются, против других высказывают возражения. Затем собирают так называемое «согласительное совещание», на которое приглашают всех тех, с чьим мнением Исполнители не согласны. В результате дискуссии по ряду позиций достигается компромисс, и возражения снимаются. Окончательное решение по проекту документа с учетом оставшихся возражений принимает ЛПР, например, генеральный директор или Совет директоров, т.е. высшая инстанция в данной организации. Именно такова процедура подготовки Законов РФ, Государственных стандартов и иных ответственных документов. Во многих случаях эта процедура упрощается, и отзывы заменяются визированием, при котором свое согласие менеджеры выражают, накладывая на документ визу, т.е. подписывая (иногда добавляя несколько слов по затрагиваемой проблеме). Например, подготовленное для отправки в другую организацию письмо или приказ по организации визируют руководители нескольких отделов, и генеральный директор его подписывает от имени фирмы, не вникая в суть (поскольку каждый день он подписывает десятки писем и приказов, то вникать некогда). Адресату уходит письмо, на обратной стороне которого указаны фамилия и телефон Исполнителя (поскольку адресат тоже хорошо знаком с процедурой подготовки документов, он понимает, что по конкретным вопросам надо обращаться к Исполнителю, а не к генеральному директору). В архиве фирмы остается письмо с визами, так что в случае необходимости легко выяснить, кто составил и одобрил документ. Схема деятельности по подготовке и принятию решения приведена на рисунке 1.1. 1.4 Системы поддержки принятия решения В настоящее время команда ЛПР может использовать при принятии решения различные математические и компьютерные средства [4, 7, 26, 35]. В памяти компьютеров содержится масса информации, организованной с помощью баз данных и баз знаний, а также других программных продуктов, позволяющих оперативно использовать эту информацию. Модели позволяют просчитывать последствия тех или иных решений, прогнозировать развитие событий. Методы экспертных оценок также основаны на математической обработке мнений экспертов с помощью специальных программных средств. Часто используются оптимизационные модели принятия решений. Их общий смысл таков: известен один или несколько числовых критериев, характеризующих решение, и набор управляющих параметров, которые могут иметь различную природу – число, вектор, множество и другие. Цель ЛПР– минимизировать (или максимизировать) целевые критерии, выбрав соответствующие управляющие параметры, учитывая наложенные на них ограничения. Тем самым определяется наилучшее решение. В случае, когда одновременно учитывается множество критериев, возникает задача нахождения компромиссов между требованиями этих критериев. Рис. 1.1 Схема деятельности по принятию решения Ряд примеров оптимизационных задач при принятии решений приведен в последующих главах. Как уже отмечалось, практика управления потребовала вовлечения в процесс принятия решений не только формальных методов, но и качественных, слабоструктурированных факторов. Отсюда появилось новое направление «Системы поддержки принятия решений» – СППР, которое использует не только традиционные методы дисциплины «Исследование операций», но и достижения в области новых информационных технологий. Самое общее определение выглядит так: Система поддержки принятия решений (СППР, Decision Support System, DSS) – это компьютерная автоматизированная система, целью которой является помощь людям, принимающим решение в сложных условиях, при проведении полного и объективного анализа предметной деятельности и альтернатив решений [26, 35]. Для анализа и выработки предложений в СППР используются различные методы [7]. Это могут быть: • информационный поиск, • решение задач оптимизации, • обработка экспертных оценок, • интеллектуальный анализ данных, • рассуждение на основе прецедентов, • имитационное моделирование, • эволюционные вычисления и генетические алгоритмы, • нейронные сети, • ситуационный анализ, • когнитивное моделирование, • методы геоинформатики и другие. Если в основе работы СППР лежат методы искусственного интеллекта, то говорят об интеллектуальной СППР, или ИСППР. Если решение проблем связано с пространственными данными и может быть отображено на электронных картах, то говорят о ГИС-ориентированной СППР. Итак, мы видим, что дать строгое определение СППР достаточно трудно, поскольку конструкция и функции СППР существенно зависят от характера задач, для решения которых она разрабатывается, от доступных данных, информации и знаний, а также от пользователей системы. Можно привести, тем не менее, некоторые элементы и характеристики, общепризнанные как части СППР. Как правило, СППР должна быть способна вырабатывать и рекомендовать эффективные варианты решений, не заменяя ЛПР при окончательном принятии решения. Современные СППР представляют собой системы, максимально приспособленные к решению задач повседневной управленческой деятельности. В большинстве случаев СППР – интерактивная автоматизированная система, которая помогает пользователю (ЛПР и его команде) применять данные и модели для идентификации ситуаций,анализа альтернатив и принятия решений. Система должна обладать возможностью интерактивной работы с помощью достаточно простых запросов. В завершающей части нашего курса мы рассмотрим примеры реализованных систем поддержки принятия решений. 1.5 Математическое моделирование при принятии решений В большинстве случаев решения принимаются на основе анализа ситуации в рассматриваемой области, которое невозможно без математического моделирования соответствующих процессов. Таким образом, моделирование – это неотъемлемая часть процесса подготовки и принятия решений. Поэтому методам моделирования в нашем курсе будет уделено значительное внимание [3, 11, 18, 27, 32, 40, 42]. Моделирование – это способ отображения реальной действительности, при котором применяются специально построенные модели, воспроизводящие существенные свойства и характеристики исследуемых объектов и процессов управления. Как мы уже отмечали, при создании СППР использование моделей объектов является обязательным. Объект моделирования может быть либо реальным, либо воображаемым. С воображаемыми объектами в инженерной практике мы имеем дело на ранних этапах проектирования систем. Создание информационных систем с целью поддержки принятия решений в какой-либо сфере позволяет лицу, занимающемуся этой деятельностью, взаимодействовать не с реальными объектами предметной области системы, а с информационной системой, не покидая своего рабочего места. Такой подход позволяет получать сведения о состоянии сущностей и процессов предметной области СППР не путем непосредственных измерений (наблюдений) в реальном мире, а используя информационную модель. Достоинство модельного подхода состоит в том, что он предоставляет возможности для анализа и оценки последствий различных управленческих решений без проведения натурного эксперимента. В теории принятия решений математические модели используются для выбора и анализа альтернатив решения. Можно выделить несколько целей, ради которых создаются модели и исследования, проводимые с их помощью [11]. • Модель как средство осмысления помогает выявить взаимозависимости переменных, характер их изменения во времени, найти существующие закономерности. При составлении модели становится более понятной структура исследуемого объекта, вскрываются важные причинно-следственные связи. • Модель как средство прогнозирования позволяет предсказывать поведение объекта и управлять им, испытывая на модели различные варианты воздействия, поскольку экспериментировать с реальным объектом часто бывает либо физически невозможно, либо опасно, либо просто неудобно. • Модель как средство оптимизации позволяет построенные модели использовать для нахождения оптимальных соотношений параметров, исследования особых (критических) режимов работы. • Модель как средство обучения, например, в качестве тренажера при подготовке персонала к последующей работе в реальной обстановке или в качестве исследуемого объекта в виртуальной лаборатории. Модели, реализованные в виде программных модулей, применяются и как имитаторы объектов управления при стендовых испытаниях систем управления, и на ранних стадиях проектирования заменяют сами будущие аппаратно реализуемые системы управления. Применительно к системам поддержки принятия решений можно выделить дополнительную функцию моделирования: • Модель как средство исследования, синтеза и проектирования систем поддержки принятия решений, их подсистем и взаимодействия между ними, с учетом оценки их эффективности [7]. Рассмотрим некоторые особенности моделей, используемых при поддержке принятия решений (рисунок 1.2). В СППР, как и в любых информационных системах, выделяются определенные функциональные компоненты, и функции моделирования обеспечиваются взаимодействием этих компонентов, в частности, информационных ресурсов и прикладной логикой. Различают статические и динамические модели. Статические модели описывают состояние моделируемых объектов без учета фактора времени, а в динамических (темпоральных) моделях рассматриваются процессы, протекающие во времени. Во всех используемых классах моделей информационные ресурсы системы представляют статическую модель предметной области, характеризуя ее текущее состояние. Следует заметить, что с элементами коллекции информационных ресурсов, представляющих статическую модель предметной области, могут ассоциироваться некоторые отметки времени, но эти временные характеристики могут воспринимать только пользователи. Такие отметки времени принято называть временем, определяемым пользователем. Например, документы в системе текстового поиска могут быть датированными. Но система воспринимает указанную дату как один из атрибутов документа. Классификация методов моделирование реальности в СППР По информационным ресурсам По степени структурированности данных По уровню абстракции Статические Структурированные Формальные Интенсиональные Темпоральные Слабо-структурированные Неструктурированные Экстенсиональные Рис. 1.2 Классификация моделей, используемых в СППР Точно так же, как обстоит дело с характеристиками времени, во всех распространенных классах моделей, за исключением объектных: информационные ресурсы не моделируют поведенческие аспекты предметной области. Эта функция выполняется компонентами приложения информационных систем. Темпоральные (динамические) базы данных позволяют представлять динамику предметной области – изменение ее состояния во времени. В таких случаях приложение фактически интегрируются с информационной системой, и трудно провести разделяющие их границы. Природа моделей предметной области, поддерживаемых в СППР, может быть различной. С технологической точки зрения наиболее существенны различия подходов к моделированию предметной области по степени структурированности ее представлений, которую они обеспечивают (рисунок 1.2). Используемые в настоящее время подходы к моделированию предметной области охватывают широкий спектр возможностей, которые мы кратко рассмотрим. Структурированные модели. Модели такого рода основаны на выявлении регулярной структуры предметной области. Для конструирования таких моделей нужно типизировать сущности предметной области, относя их к одному типу сущности с одинаковым набором свойств. Аналогичным образом типизируются связи между сущностями. Связи определяются на множествах типов сущностей и могут иметь различную арность. Например, связи могут быть бинарными или n-арными. Представление предметной области, сконструированное с помощью рассматриваемого подхода, также называется структурированным. Одной из разновидностей рассматриваемого подхода к моделированию предметной области является объектный (или объектно-ориентированный) подход, который дает возможность моделировать не только структуру предметной области, но и поведение экземпляров сущностей, относящихся к каждому определенному типу [5]. С этой целью определение каждого типа сущностей включает определения допустимых на его экземплярах операций (или методов). При использовании структурированных моделей представление предметной области имеет два уровня абстракции. Представление более высокого уровня абстракции – это модель предметной области, отображающая ее свойства, инвариантные во времени. Эта модель представляется в терминах типов сущностей предметной области и типов связей между ними. Такую модель называют интенсионалом предметной области. Второй, более конкретный, уровень моделирует состояние предметной области в зависимости от времени. Модель этого уровня представляется в терминах конкретных экземпляров сущностей и связей определенных типов между ними. Эту модель называют экстенсионалом предметной области. На структурированных моделях предметной области с регулярной структурой основаны системы баз данных. В этом случае интенсионал предметной области называют схемой базы данных. Естественно называть информационные ресурсы систем баз данных структурированными данными. Слабоструктурированные модели. При создании некоторых СППР применяется подход к моделированию предметной области, при котором регулярная ее структура не определена, или она не существует в рассматриваемом случае. Такой подход используется, например, в системах, основанных на языках разметки. В рассматриваемом подходе не предусматривается строгая типизация сущностей предметной области и связей между сущностями. Представление предметной области обычно является одноуровневым. Поддерживается экстенсионал предметной области – ее представление в терминах конкретных экземпляров сущностей и связей между ними. Иногда предпринимается попытка некоторой типизации сущностей и связей. Но не гарантируется, что свойства типов обязательно присущи всем относящимся к ним экземплярам. Определенный в таком случае интенсионал, по аналогии с системами баз данных иногда называемый схемой, не играет директивной роли. Конкретные экземпляры сущностей и связей, свойства которых не соответствуют схеме, системой не отвергаются. Такого рода представления предметной области называют слабоструктурированными. Информационные ресурсы систем, основанных на рассматриваемом подходе, называют слабоструктурированными данными. К числу слабоструктурированных моделей также относятся так называемые «мягкие» модели, позволяющие описывать поведение систем, в которых важную роль играет человеческий фактор [30]. Модели таких систем могут иметь вид так называемых когнитивных карт, описывающих взаимодействие элементов системы. «Мягкому» моделированию посвящен раздел в следующей главе. Известной информационной технологией, в которой поддерживается слабоструктурированное представление предметной области, является глобальная Web-технология, базирующаяся на языке разметок HTML. Формирующийся в настоящее время Web нового поколения, основанный на технологической платформе XML, позволяет поддерживать не только слабоструктурированные, но и структурированные представления предметной области. Формальные модели. Такие модели связаны с подходом к моделированию предметной области, основанным на использовании формальных языков. Как и в случае структурированных моделей, здесь определена регулярная структура предметной области, но для модельного ее представления используются формальные языки. Формальное представление предметной области, как и в случае структурированных моделей, является двухуровневым. Оно включает интенсионал и экстенсионал предметной области. Интенсионал представляет собой набор аксиом, описывающий соотношения между его элементами – типами сущностей и связей. В данном контексте они представляются как предметные переменные. Экстенсионал предметной области представляется в данном случае в виде совокупности фактов. Для создания формальных моделей обычно используются различные языки представления знаний, чаще всего языки логики первого порядка. В последнее время стала применяться их разновидность – языки логик описаний. Рассматриваемый подход позволяет осуществлять логический вывод, и пользователь может получать при обращении к системе новые факты, которые непосредственно в явном виде в ней не были представлены. Такие интеллектуальные информационные системы являются представителями класса СППР, основанных на знаниях. Они весьма близки по своим возможностям к системам баз знаний, экспертным системам и т.д. Неструктурированные модели. К этой категории относятся вербальные модели, то есть модели, описывающие реальность в виде текстов на естественном языке. В таких моделях явным образом не представляется структура предметной области – множество сущностей, их свойств, различного рода связей между этими сущностями, интересующих пользователя системы. Эта структура может быть реконструирована на основе анализа содержания заданных текстов, однако, не всегда однозначным образом. Автоматизация такого анализа – достаточно сложная задача, связанная с технологиями обработки естественного языка. Существует широкий спектр методов моделирования, имеющих дело с неструктурированными моделями предметной области. В простейших из них задачи анализа и понимания естественного языка возлагаются на пользователя. В продвинутых системах большая часть нагрузки, связанной с решением этих задач, возлагается на систему. В системах рассматриваемого класса интенсионал предметной области может быть материализован в форме тезауруса, описания онтологии предметной области и других инструментов, которые относятся к средствам лингвистической поддержки системы. В простейших системах он явно не представлен в системе и ей не доступен, а существует только в интеллектуальном багаже пользователя. Что касается упоминавшихся продвинутых систем, то их возможности по работе с содержанием поддерживаемых в системе документов основаны именно на интенсиональной модели предметной области, явным образом представленной в системе. Представления предметной области в вербальных моделях можно назвать неструктурированными. Информационные ресурсы таких систем часто называют неструктурированными данными. К числу СППР, использующих вербальные модели предметной области, относятся системы текстового поиска. Модели данных. Для создания структурированных и слабоструктурированных представлений предметной области и выполнения операций в терминах таких представлений служат разнообразные реализованные в программных средствах инструменты моделирования, которые называют моделями данных. Концепция модели данных родилась в области разработки баз данных и приобрела в ней фундаментальное значение. Не случайно за работы в этой области одной из самых престижных наград в информатике – Тьюринговской премии – были удостоены в разное время идеолог сетевой модели данных CODASYL Чарльз Бахман (1973) и создатель реляционной модели Эдгар Кодд (1981). В использовании понятия «модель данных» все еще существует путаница между инструментами и результатами моделирования. В современном понимании модель данных – это не результат, а инструмент моделирования, то есть совокупность правил структурирования данных, допустимых операций над ними и видов ограничений целостности, которым они должны удовлетворять. Если перефразировать это определение для случая объектного подхода, то можно сказать, что модель данных – этонекоторая система типов данных. Как мы уже видели, в системах поддержки принятия решений приходится иметь дело с моделями различных уровней абстракции. С этой точки зрения можно рассматривать модель данных как метамодель для описания интенсиональных моделей предметной области в среде выбранной СУБД или других средств управления данными. Операционные средства модели используются для выполнения различных операций над элементами экстенсиональной модели предметной области – экземплярами данных и связей между ними в базе данных или для формулировки. В системах баз данных интенсиональная модель предметной области, выраженная с помощью дескриптивных средств модели данных, которая реализована в используемой СУБД, называется схемой базы данных.Именно на основе той или иной модели данных конструируются механизмы управления данными каждой СУБД. Онтологии. В настоящее время функции систем поддержки принятия решений значительно расширяются: помимо традиционных информационных процессов, связанных с хранением, поиском, представ-лением информации, требуется более глубокая семантическая обработка информации. Этот новый этап развития информационных процессов тесно связан с понятиями искусственного интеллекта и онтологии. К рассмотрению онтологических моделей процессов принятия решений мы вернемся во второй главе. Материализация моделей предметной области. Возникает естественный вопрос, в каком виде «материализуются» модели предметной области в СППР. Экстенсиональные модели материализуются в виде совокупности информационных ресурсов системы. Что касается интен-сиональных моделей, то они материализуются средствами метаданных в виде некоторой спецификации на языке определении данных, формальном языке и т.д., в зависимости от класса системы. Кроме того, в текстовых системах некоторые элементы интенсиональных моделей материализуются в виде средств лингвистической поддержки – тезаурусов, лексических словарей и др. 1.6 Классификация математических моделей структурированных систем Рассмотрим теперь проблему моделирования структурированных систем. В настоящее время здесь установилась классификация моделей по характеру допущений о моделируемом объекте и по виду используемого математического аппарата. Эта классификация относится к широкому кругу систем, в том числе и к системам принятия решений. Следуя классификации [31], рассмотрим следующие виды моделей систем. Непрерывно-детерминированные модели (D-схемы). В этом виде моделей в качестве рабочего аппарата используются дифференциальные уравнения – либо обыкновенные, либо дифференциальные уравнения в частных производных. Процессы, происходящие в моделях данного типа, зависят от непрерывного (физического) времени. При этом все параметры уравнений предполагаются точно известными (детерминированными). Это же относится и к воздействиям, влияющим на систему – они также рассматриваются в виде детерминированных сигналов. Наибольшее распространение этот вид моделей получил в теоретической механике, механике сплошных сред, а также в классической теории автоматического управления. Дискретно-детерминированные модели (F – схемы).В этом виде моделейвремя предполагается дискретным, т.е. все процессы, происходящие в системе, привязываются к последовательности временных шагов, или тактов. Функции состояния системы определяются на множестве моментов дискретного времени. Рабочим аппаратом таких моделей служат разностные уравнения, определяющие состояние системы в определенный момент времени на основе информации о состояниях в предыдущие моменты дискретного времени. Все параметры системы и все входные воздействия, как и в предыдущем случае, предполагаются детер-минированными. К этому классу моделей относят также важный класс схем, определяемых как конечные автоматы (F–автоматы). Конечный автомат при своей работе по определенному закону переходит из одного состояния в другое в зависимости от внешних воздействий и собственного состояния в данный и предыдущие моменты дискретного времени. Поведение таких систем изучает теория конечных автоматов. Наиболее широкая область применения теории конечных автоматов – моделиро-вание цифровых и других дискретных устройств. К данному виду моделей можно отнести также сети Петри которые будут рассмотрены ниже. Дискретно-стохастические модели (P – схемы).В моделях данного вида, в отличие от предыдущих моделей , переход из одного состояния в другое происходит случайным образом. При этом уже невозможно говорить о том, в каком конкретно состоянии находится система, речь идет о распределении вероятностей пребывания в том или ином состоянии. К таким моделям относят вероятностные автоматы (P–автоматы). Вероятностный конечный автомат при своей работе с определенной вероятностью переходит из одного состояния в другое в зависимости от внешних воздействий и собственного состояния в данный и предыдущие моменты дискретного времени. Примером таких автоматов могут служить модели, построенные на формализме цепей Маркова, а также сети Петри с вероятностным поведением. Непрерывно-стохастические модели (Q – схемы). Модели данного типа рассматриваются в непрерывном времени, но их поведение носит случайный характер. Наиболее известный класс таких моделей представляют собой системы массового обслуживания. Как правило, рассматриваются случайные потоки заявок, поступающие в систему, их обработка системой. Определяются, например, такие параметры, как время обслуживания заявок, длина очереди на обслуживание и другие, связанные с обслуживанием. В терминах систем массового обслуживания удается описывать многие технологические и экономические процессы, системы передачи данных, компьютерные сети. Сетевые модели (N – схемы). Такие модели используются для описания сложных систем, состоящих из самостоятельно работающих и взаимодействующих подсистем. Наиболее известными моделями данного вида являются сети Петри различных модификаций. Кроме того, к сетевым моделям можно отнести различные структурные модели, используемые при разработке бизнес-систем такие как IDEFX и DFD-модели, структурные модели стандарта ARIS и ряд других. Комбинированные модели (A – схемы) реализуют комбинированный подход к формальному описанию систем, включающий все ранее рассмотренные виды моделей. A – схема должна одновременно выполнять несколько функций: являться адекватным математическим описанием объекта моделирования, служить основанием для построения алгоритмов и программ при машинной реализации модели, производить численные расчеты и, желательно, аналитические исследования поведения моделируемой системы. Современные системы моделирования, как правило, реализуют комбинированный подход. Они позволяют в визуальном режиме описывать моделируемый объект в любой удобной для исследователя форме (непрерывной, дискретной, детерминированной, случайной, сетевой), а затем производить в интерактивном режиме сложные исследования его поведения, получая информацию в наглядной графической, табличной или текстовой форме. Примерами систем моделирования, реализующих комбинированный подход, являются MatLab, MVS, AnyLogic. Ниже рассмотрен ряд примеров этих классов моделей применительно к системам принятия решений. 1.7 Задачи моделирования на различных уровнях принятия решений Процесс моделирования должен соответствовать функциям управления и принятия решений на стратегическом, тактическом и оперативном уровнях управления. Рассмотрим эти уровни [7, 22]. Стратегический уровень управления ориентирован на высшее руководство организации или предприятия, и его основными целями являются: • выработка генеральной стратегии развития предприятия на основе долгосрочного планирования; • объективная оценка всех видов ресурсов; • анализ и оценка перспективных направлений развития предприятия и уровня управления на основе внедрения новых технологий; • выбор методов, технологий и средств, необходимых для реализации поставленных стратегических задач. Моделирование процессов принятия решений стратегического уровня позволяет выбирать оптимальный вариант для составления перспективных долгосрочных прогнозов и определять пути достижения поставленных целей. Модели управления высшего уровня, ориентированные на использование СППР, должны учитывать: • международный опыт развития бизнеса и информационных технологий в области управления; • особенности развития экономических отношений внутри государства, региона, территории, а также межведомственные и корпоративные связи; • перспективные виды развития продукции и услуг по профилю деятельности организации или предприятия, которые могут использовать информационные технологии управления. Тактический уровень управления ориентирован на менеджмент среднего звена и связан с перспективами функционирования и развития деятельности организации или предприятия на определенный период времени. Управление на этом уровне основывается на автоматизированной обработке данных и обеспечении принятия индивидуальных или коллективных управленческих решений. Основными задачами тактического уровня управления следует считать: • обеспечение устойчивого управления предприятием или организацией с учетом перспектив их дальнейшего развития; • уточнение и корректировка планов информационного развития на основе эффективного использования имеющихся сил и средств; • создание потенциала и резерва для реализации управленческих задач; • мониторинг, анализ и контроль результатов тактического планирования и управления; • использование современных программных продуктов, информационных технологий, актуализированных баз данных и систем поддержки принятия управленческих решений для моделирования процессов и технологий. Моделирование тактического уровня управления должно отражать реальные условия функционирования предприятия или организации. Модели поддержки принятия решений тактического уровня используют информационные технологии для многовариантного анализа развития процессов. Основными особенностями таких моделей управления являются: • возможность использования апробированных способов моделирования и анализа; • создание моделей принятия решений на основе анализа различных сценариев развития ситуации; • возможность получения достоверных результатов на основе использования массивов ретроспективных данных; • использование взаимосвязи процессов прогнозирования и моделирования для координации и принятия управленческих решений. Оперативный уровень управления характеризуется большим объемом динамической информации, ограниченным временем принятия обоснованных решений на основе установленных в организации алгоритмов. Моделирование оперативного уровня управления в наибольшей степени использует возможности СППР. При оперативном моделировании процессов управления решаются следующие задачи: • реализация задач стратегического и тактического уровня управления; • внесение корректировок и уточнений во все модели управления; • систематизация и анализ отклонений реальных процессов от запланированных; • использование резервного потенциала высших уровней управления; • использование баз данных в режиме реального времени. Эффективность оперативного уровня управления отражается на качестве функционирования и выполнении планов предприятия. Особенностями оперативного управления являются: • выполнение процессов на основе принятых в СППР алгоритмов и программных продуктов; • использование ограниченного количества функций управления; • использование технических и программных средств для защиты информации от несанкционированного доступа; • систематическая актуализация баз данных; • организация и хранение информации и отчетной документации Итак, в первой главе рассмотрены общие вопросы, связанные с принятием решений, ролью в этой процедуре лиц, принимающих решение, значением методологий и методов моделирования, а также специализированных систем, поддерживающих процесс принятия решений – СППР. В последующих главах будут подробнее рассмотрены различные математические модели, с помощью которых осуществляется генерация и выбор альтернатив решения, а также алгоритмы и соответствующие программные средства. При этом мы будем следовать классификации моделей, изложенной в разделе 1.5. В первую очередь будут рассмотрены методы принятия решений, основанные на знаниях, затем детерминированные, вероятностные и сетевые модели. Вопросы и задания для самостоятельного изучения 1. Как происходит согласование решений на различных уровнях управления? Приведите примеры. 2. Кто определяет качество решения и успешность его выполнения? Обязано ли ЛПР участвовать в реализации решения? 3. Как выглядела процедура принятия решения об оставлении Москвы в 1812 году, описанная Л.Н. Толстым в романе «Война и мир»? 4. Опишите процедуры принятия решения в одной из следующих систем: - Государственная дума, - Министерство (ведомство), - корпорация, - предоставление кредита, - планирование работы промышленного предприятия, - управление проектами, - ликвидация чрезвычайных ситуаций, - военная операция. 5. Кто в перечисленных выше системах является ЛПР? Из кого состоит персонал, готовящий проект решения? 6. Опишите процедуры принятия решений, касающихся студентов, в Вашем учебном заведении (альтернативы, критерии, ЛПР, персонал и так далее) в соответствии со схемой на рис.1.1 по следующим вопросам: - зачисление в вуз, - начисление стипендии, - допуск к сессии, - перевод на следующий курс, - отчисление из вуза, - присвоение квалификации. Глава 2 Системы поддержки принятия решений, основанные на знаниях Как отмечалось в первой главе, для поддержки принятия решений используется большое число различных методов – как основанных на решении вычислительных задач, так и на принципиально другом подходе – использовании знаний. Такие системы, реализованные с помощью ЭВМ, называют также системами искусственного интеллекта (ИИ). Эти системы позволяют собирать, структурировать и представлять по запросам пользователей накопленные людьми знания, а также на их основе генерировать новые знания. В настоящей главе мы кратко рассмотрим некоторые методы поддержки принятия решений, относящиеся к данному направлению. 2.1 Способы описания знаний Знания представляют собой совокупность сведений (имеющихся у индивидуума, общества или системы искусственного интеллекта) о мире (конкретной предметной области, совокупности объектов или объекте), включающее в себя информацию о свойствах объектов, закономерностях процессов и явлений, правилах использования этой информации для принятия решений [37]. Знания могут быть формализованными и неформализованными. В последнем случае они могут быть представлены лицу, принимающему решение, в произвольной форме – текстовой, графической или устной. Однако в последнее время все большее применение в системах поддержки принятия решений получает представление знаний, ориентированное на использование в информационных системах (ИС). Представление знаний в информационной системе — это выражение на некотором формальном языке, называемом языком представления знаний, свойств различных объектов и закономерностей, важных для решения прикладных задач и организации взаимодействия пользователя с ЭВМ. Тот факт, что язык, на котором записываются знания, является формальным, обеспечивает однозначность интерпретации записанного. Совокупность знаний, хранящихся в ИС и необходимых для решения комплекса прикладных программ конечным пользователем, называется системой знаний. Сведения о том, какими знаниями владеет система, могут потребоваться пользователю (и он должен иметь возможность их получить), однако в первую очередь организованные знания необходимы информационной системе для того, чтобы поддерживать процесс взаимодействия с пользователем и решать требуемые задачи. Иными словами, знания обеспечивают функционирование системы. В интеллектуальных системах знания хранятся в специальном программном или программно-аппаратном блоке, называемом базой знаний (БЗ). Перечислим ряд особенностей, присущих представлениям знаний в системах поддержки принятия решений. • Внутренняя интерпретируемость. Каждая информационная единица должна иметь уникальное имя, по которому информационная система находит ее, а также отвечает на запросы, в которых это имя упомянуто. • Структурированность. Информационные единицы должны обладать гибкой структурой, для них должен выполняться «принцип матрешки», т. е. рекурсивная вложенность одних информационных единиц в другие. • Связность. В информационной базе между информационными единицами должна быть предусмотрена возможность установления связей произвольного типа. • Семантическая метрика. На множестве информационных единиц в некоторых случаях полезно задавать отношения, характеризующие ситуационную близость информационных единиц, т.е. силу ассоциативной связи между информационными единицами. • Активность. Выполнение программы в информационной системе должно инициироваться текущим состоянием информационной базы. Появление в базе фактов или описание событий, установление связей может стать источником активности системы. Наиболее известными моделями представления знаний являются следующие [32], [35]: • когнитивные модели • онтологические модели, • методы экспертных оценок, • логические модели, • сетевые модели, • фреймовые модели, • продукционные модели. Не имея возможности рассмотреть все модели представления знаний, мы ограничимся краткими сведениями о когнитивных, онтологических моделях, экспертных оценках и продукционных моделях. 2.2 Когнитивные модели В практике принятия решений часто возникают ситуации, когда поведение лиц, принимающих решения не регламентировано жестко, например, при обсуждении проблемных ситуаций. В этом случае мы имеем дело с системами, которые принято называть «мягкими». Под «мягкой» системой обычно понимают сложную систему – либо вовсе не структурированную, либо слабоструктурированную систему социального типа, в которой главную роль играют взаимоотношения между людьми. Методология их описания и принятия решений существенно отличается от традиционного системного мышления, которое невольно навязывает рассмотрение объекта в четких системных терминах (структура – функции, цели – средства – оптимизация). Поэтому мы в настоящей главе уделим внимание и методам описания и анализа «мягких», или когнитивных систем, основанных на неформализованных знаниях. Такие методы были разработаны Черчменом (C.W.Cherchman). Акоффом (R.L.Ackoff), Чеклендом (P.B. Checland), В.В. Подиновским и другими учеными [22, 29, 38, 39]. Рассмотрим кратко предпосылки создания методологии «мягких» систем и соответствующих моделей. Популярные в 60-70-х годах XX века подходы к изучению сложных, в том числе социальных систем, основанные на принципах классического системного анализа, нередко заканчивались неудачей. Традиционный «жесткий» системный подход оказался неадекватным при изучении общественных явлений, потому что социальные системы в качестве активных элементов включают в себя индивидов и группы, которые отличаются сложным поведением, имеют собственные цели, взгляды, установки, определяющие выбор решений и действий. Развитию методологии «мягких» систем (ММС) способствовало помимо упомянутого выше разочарования результатами «жесткого» моделирования социальных систем также изменение характера бизнес-процессов. Происходит переход от стандартизованного производства к выпуску продукции по индивидуальным заказам. Резко возрастают объемы информации, с переработкой которой не справляются даже компьютеры. Персонал организации становится все более образованным и склонным к самостоятельному принятию решений, норовит не всегда сообщать наверх полную и достоверную информацию, более того, иногда игнорирует указания начальства. Цели подсистем все чаще не совпадают с целями системы в целом. В этих условиях модель управления организацией должна принципиально измениться, она должна стать «социосистемной». В первую очередь организация должна стать демократической – это означает, что в принятии решений, особенно касающихся вопросов планирования работы организации, должны иметь возможность участвовать все заинтересованные лица. При этом сам процесс планирования нередко более важен, чем его результат. Если кого-то не удается включить в число участников планирования, то его следует привлечь в качестве консультанта, но при этом важно соблюдать принцип добровольного участия. Идеи ММС широко используются при принятии решений в управленческом консультировании, теории управления (менеджмента), в социологии организаций и социологии управления. Красной нитью через все методологии «мягких» систем проходят требования учета мнений всех заинтересованных сторон. Действительно, взгляды, точки зрения, картины мира могут различаться. При этом взаимопонимание – понимание различий картин мира можно существенно облегчить и углубить, если удастся их визуализировать – представить в простой и наглядной форме. Черчмен [40] формулирует следующие базовые тезисы нового системного подхода к принятию решений, которые можно назвать «мягкими». Системный подход начинается, когда вы первый раз смотрите на мир глазами другого человека. Системный подход показывает, что картина мира каждого индивида весьма ограничена. В системном подходе нет более квалифицированных и менее квалифицированных участников. Имеется в виду, что у включенных в данную проблемную ситуацию людей могут быть разные взгляды. Могут, например, затрагиваться вопросы морали, в которых трудно быть экспертом. Принятие решения требует гарантированного участия представителей всех заинтересованных сторон. Согласование их интересов – сложный процесс, который никогда не заканчивается, но усилия разработчиков не пропадут, так как системный подход позволит им прийти к верному решению. Этот же автор утверждает, что к успеху проекта ведет тщательное выполнение следующих основных принципов. ◦ Оппонирование – в слабоструктурированных проблемах можно разобраться, если рассматривать их с различных точек зрения. ◦ Участие – в процессе принятия решений должны участвовать представители всех заинтересованных сторон. ◦ Интегративность – в процессе обсуждения различные точки зрения должны синтезироваться на более высоком уровне, что приводит к выработке общего согласованного решения. ◦ Обучение – в результате участники процесса системного анализа начинают лучше понимать свою проблемную ситуацию. Методология «мягких» систем предназначена для выявления различных точек зрения и постепенного достижения взаимопонимания. Именно в этом состоит ее принципиальное отличие от традиционного жесткого подхода, позволяющее говорить о становлении новой системной парадигмы. Поэтому ММС можно трактовать как процесс обучения коллективному принятию решений. Развитие методологии «мягких» систем потребовало создания адекватных методов и средств поддержки моделирования таких систем. Ниже рассмотрены два таких инструмента – когнитивные карты и онтологии. Когнитивные карты Одним из важных инструментов графического моделирования «мягких» систем служат так называемые когнитивные карты. Когнитивная карта (Cognitive Map от cognitio – знание, познание) – инструмент методологии когнитивного моделирования, предназначенного для анализа и принятия решений в плохо определенных ситуациях – была предложена Аксельродом (R.Axelrod) [38]. Она основана на моделировании субъективных представлений экспертов о ситуации и включает в себя: • методологию структуризации ситуации; • модель представления знаний эксперта в виде знакового ориентированного графа (когнитивной карты) , где F – множество факторов ситуации; W – множество дуг, означающих причинно-следственные отношения между факторами ситуации, методы анализа ситуации. В настоящее время методология когнитивного моделирования развивается в направлении совершенствования аппарата анализа и моделирования ситуации. Когнитивные карты создаются и видоизменяются в результате активного взаимодействия субъекта с другими субъектами и окружающим миром. При этом могут формироваться когнитивные карты различной степени общности, «масштаба» и организации. Это – субъективная картина, построенная в системе выбранных показателей (координат), в которых локализованы отдельные воспринимаемые предметы. Выделяют карту-путь («дорожную карту») как последовательное представление связей между объектами по определенному маршруту, и карту-обозрение как одновременное представление взаимного расположения объектов. Когнитивные карты относятся к тому же классу систем представления знаний, что и фреймы. Таким образом, когнитивную карту можно понимать как схематичное, упрощенное описание картины мира индивида, точнее, ее фрагмента, относящегося к данной проблемной ситуации. Поэтому с построения когнитивных карт можно начинать исследование и моделирование сложных слабоструктурированных систем для нахождения альтернатив решения и его принятия. Когнитивная карта может быть визуализирована в виде графа, содержащего множество вершин, каждая из которых соответствует одному фактору или элементу картины мира индивида. Помеченная дуга, связывающая вершины А и В, соответствует причинно-следственной связи гдеА – причина, В – следствие. Связь называется положительной (помечается знаком « + »), если увеличение А ведет к увеличению (усилению) В, а уменьшение А ведет к уменьшению В при прочих равных условиях. Знак «–» над дугой означает, что связь отрицательная, т.е. при прочих равных условиях увеличение А приводит к уменьшению (торможению) В и уменьшение А ведет к увеличению В. В ряде случаев на когнитивной карте можно, помимо знака, указывать относительную степень влияния одного фактора на другой в виде числовой оценки (например, в диапазоне от +1 до – 1). Причинно-следственные связи можно также отображать в виде матрицы весовW, отображающей влияние каждого фактора на все остальные. Рассмотрим примеры когнитивных карт. Начнем с шутливого примера – когнитивной карты, которая позволяет судить о путях достижения удовлетворенностью жизни и принимать соответствующие решения (рисунок 2.1). Рис. 2.1 Когнитивная карта удовлетворенности жизнью На рисунке 2.2 приведена когнитивная карта процесса дистанционного обучения с точки зрения студента-заочника. Карта построена путем опроса нескольких групп студентов. Матрица связей, описывающая связь между факторами данной модели, приведена в таблице 2.1. Таблица 2.1 № Наименование фактора 1 2 3 4 5 6 7 8 9 1 Профессиональный успех – – 2 Комфортность обучения + 3 Качество образования + 4 Свободный график + + 5 Система дистанции. обучения + + + + + + + 6 Личное общения с преподавателем – – 7 Территориальная независимость + + 8 Выбор вуза + + + 9 Личное общение со студентами – Рис. 2.2 Когнитивная карта процесса дистанционного обучения с точки зрения студент. СДО – система дистанционного обучения. Следует отметить, что когнитивная карта отображает лишь факт наличия влияний факторов друг на друга. В ней не отражается ни детальный характер этих влияний, ни динамика изменения влияний в зависимости от изменения ситуации, ни временные изменения самих факторов. Учет всех этих обстоятельств требует перехода на следующий уровень структуризации информации, отображенной в когнитивной карте, т.е. к когнитивной модели. Когнитивное моделирование [21] – это средство выявления экономических, политических и социальных закономерностей для принятия решений по предотвращению негативных тенденций, получения теоретических и практических знаний о проблеме и формулирования на этой основе практических выводов. Для получения когнитивной модели представим когнитивную карту W в виде квадратной n-матрицы. Обозначим n-вектор значений факторов, определяющий текущее состояние системы, где t – дискретное время. Тогда в простейшем случае когнитивная модель объекта будет представлена в виде линейного разностного уравнения , (2.1) где n-вектор случайных помех. Анализ матрицы весов W позволяет судить об устойчивости процесса, описываемого данной когнитивной картой. Для этого необходимо проанализировать собственные числа матрицы W, и если все они лежат внутри единичного круга на комплексной плоскости, то система устойчива, если же хотя бы одно собственное число оказывается по модулю больше единицы, то система неустойчива, что может в ряде случаев трактоваться как ее способность к саморазвитию. Когнитивное моделирование основано на сценарном подходе. Сценарий – совокупность тенденций, характеризующих ситуацию в настоящий момент, желаемых целей развития, комплекса мероприятий, воздействующих на развитие ситуации, и системы наблюдаемых параметров (факторов), иллюстрирующих поведение процессов. Сценарий может моделироваться по трем основным направлениям. 1. Прогноз развития ситуации без всякого воздействия на процессы в ситуации – ситуация развивается сама по себе. 2. Прогноз развития ситуации при реализации выбранного комплекса решений (управляющих воздействий) – прямая задача. 3. Синтез комплекса решений для достижения необходимого изменения состояния ситуации – обратная задача. В заключение этого раздела заметим, что создание когнитивных карт может рассматриваться, в частности, как начальный этап моделирования сложной системы – как этап осмысления проблемной ситуации. Более конкретные, в том числе, количественные результаты могут быть получены с использованием других методов, которые будут рассмотрены ниже. 2.3 Онтологические модели процесса принятия решений Значительным шагом в развитии методологии моделирования слабоструктурированных систем явилось появление и широкое распространение методов онтологического моделирования, вызванное быстрым развитием систем искусственного интеллекта [5, 16, 32]. В частности, на использовании онтологий основано создание нового поколения Интернета – SemanticWeb. Ниже приведены краткие сведения об онтологиях и пример их использования для моделирования процессов принятия решений в системах обучения. Слово «онтология» имеет два значения: • философская дисциплина, которая изучает наиболее общие характеристики бытия и сущностей; • структура, описывающая значения элементов некоторой системы. Неформально онтология представляет собой некоторое описание взгляда на мир применительно к конкретной области интересов. Это описание состоит из терминов и правил использования этих терминов, ограничивающих их значения в рамках конкретной области. Структурно онтология – это система, состоящая из набора понятий и набора утверждений об этих понятиях, на основе которых можно описывать классы, отношения, функции и индивиды. Основными компонентами онтологии могут являться: • классы (или понятия), • отношения (или свойства, атрибуты), • функции, • аксиомы, • экземпляры (или индивиды). Классы или понятия используются в широком смысле. Понятием может быть любая сущность, о которой может быть дана какая-либо информация. Классы — это абстрактные группы, коллекции или наборы объектов. Они могут включать в себя экземпляры, другие классы, либо же сочетания и того, и другого. Классы в онтологиях обычно организованы в таксономию — иерархическую классификацию понятий по отношению включения. Например, классы Бакалавр и Магистрант являются подклассами класса Студент, который в свою очередь включен в класс Учащиеся. Отношения представляют тип взаимодействия между понятиями предметной области. Формально n-арные отношения определяются как подмножество произведения n множеств: . Пример бинарного отношения – отношение Часть – Целое. Отношения тоже могут быть организованы в таксономию по включению. Функции — это специальный случай отношений, в которых n-й элемент отношения однозначно определяется n-1 предшествующими элементами. Формально функции определяются следующим образом: F: C1  C2  …  Cn-1  Cn. Примерами функциональных отношений являются отношения Быть преподавателем для на множестве учащихся, или Оценка за выполненное задание, которая вычисляется в зависимости от правильности ответов на вопросы, времени выполнения и наличия подсказок. Аксиомы используются, чтобы записать самоочевидные высказывания, которые всегда истинны. Они могут быть включены в онтологию для разных целей, например, для определения комплексных ограничений на значения атрибутов, аргументы отношений, для проверки корректности информации, описанной в онтологии, или для вывода новой информации. В качестве примера того, что в рамках онтологий понимается под аксиомами, можно привести следующее положение и его формальную запись на языке исчисления предикатов первого порядка: Сотрудник, являющийся заведующим кафедрой, работает на кафедре. Вводятся переменные Е(сотрудник) и P(заведующий кафедрой). Тогда аксиома записывается следующим образом: Forall (E,P)Employee(E) and Head-Of-Chair(E,P)=> Works-At-Chair(E,P). Цели создания онтологий. В последние годы разработка онтологий – явное формальное описание терминов предметной области и отношений между ними – переходит из мира лабораторий по искусственному интеллекту на рабочие столы экспертов по предметным областям, в том числе и в области принятия решений. Потребность в разработке онтологий возникает по ряду причин: • анализ знаний о предметной области; • совместное использование людьми или программными агентами общего понимания структуры информации; • возможность повторного использования знаний в предметной области; • представление допущений в предметной области в явном виде; • отделение знаний в предметной области от оперативных знаний. Методология создания онтологий. Практическая разработка онтологии включает: • определение классов в онтологии; • расположение классов в таксономическую иерархию (ПОДКЛАСС- НАДКЛАСС); • определение слотов и описание их допустимых значений; • заполнение значений слотов экземпляров. После этого можно создать базу знаний, определив отдельные экземпляры этих классов, введя в определенный слот значение и дополнительные ограничения для слота. Существуют некоторые фундаментальные правила разработки онтологии, которые близки к рассмотренным ранее правилам моделирования «мягких» систем. • Не существует единственно правильного способа моделирования предметной области – всегда существуют жизнеспособные альтернативы. • Лучшее решение почти всегда зависит от предполагаемого приложения и ожидаемых расширений. • Разработка онтологии – это обязательно итеративный процесс. • Понятия в онтологии должны быть близки к объектам (физическим или логическим) и отношениям в интересующей предметной области. Скорее всего, это существительные (объекты) или глаголы (отношения) в предложениях, которые описывают предметную область. Знание того, для чего предполагается использовать онтологию, и того, насколько детальной или общей она будет, может повлиять на многие решения, касающиеся моделирования. Нужно определить, какая из альтернатив поможет лучше решить поставленную задачу и будет более наглядной, более расширяемой и более простой в обслуживании. После того, как определена начальная версия онтологии, ее можно оценить и отладить, используя ее в каких-то приложениях и/или обсудив ее с экспертами предметной области. В результате начальную онтологию скорее всего нужно будет пересмотреть. И этот процесс итеративного проектирования будет продолжаться в течение всего жизненного цикла онтологии. Для создания онтологий разработано множество языковых и программных средств. Из них отметим только так называемые редакторы онтологий. Основная функция любого редактора онтологий состоит в поддержке процесса формализации знаний и представлении онтологии как спецификации (точного и полного описания). Одним из наиболее популярных редакторов онтологий является Protege (protege.stanford.edu), представляющий собой свободно распространяемую Java-программу, предназначенную для построения (создания, редактирования и просмотра) онтологий той или иной прикладной области. Программа включает редактор онтологий, позволяющий проектировать онтологии, разворачивая иерархическую структуру абстрактных и конкретных классов и слотов. На основе сформированной онтологии Protege позволяет генерировать формы получения знаний для введения экземпляров классов и подклассов. Данный инструмент поддерживает использование языка OWL(Web Ontology Language, в аббревиатуре буквы намеренно переставлены местами, чтобы получилось английское слово «сова») – язык представления онтологий в Web. Он позволяет генерировать HTML-документы, отображающие структуру онтологий. В редакторе используется фреймовая модель представления знаний, что позволяет адаптировать его и для редактирования моделей предметных областей, представленных не только в OWL, но и в других форматах (UML, XML, SHOE, DAML+OIL, RDF/RDFS и т.п.). В заключение приведем пример онтологии образовательной программы. На рисунке 2.3 приведен фрагмент онтологии, созданной с помощью редактора Protege и описывающей структуру рабочего учебного плана подготовки бакалавров по направлению 220700.62 – Управление в технических системах. Рис. 2.3 Фрагмент онтологии учебного плана подготовки бакалавров по направлению 220700.62 «Управление в технических системах». В этом фрагменте выделены базовые классы: направление, цикл дисциплин, дисциплина, а затем детализирован класс дисциплина, который, в свою очередь, порождает классы: раздел курса, лекция, практика и далее по мере детализации описания процесса обучения. Сплошные линии обозначают связи типа состоитиз или входит в, а пунктирные – наличие других подклассов данного класса. Полная онтология рабочего учебного плана представляет достаточно обширный документ, который, по сравнению с традиционной табличной формой, позволяет установить межпредметные связи, оценить последовательность приобретения знаний, умений и компетенций (как этого требуют образовательные стандарты 3-го поколения), а также прослеживать возможные индивидуальные траектории обучения. 2.4 Экспертный подход к принятию решений В широком смысле, экспертный подход предполагает создание некоторого «мультиразума», обладающего большими знаниями и способностями по сравнению с возможностями отдельного человека. Такой подход позволяет решать задачи, не поддающиеся решению обычным аналитическим способом [26]. 2.4.1 Методы экспертных оценок Метод экспертных оценок является одним из реализаций экспертного подхода. Сущность этого метода заключается в проведении экспертами интуитивно-логического анализа проблемы с количественной оценкой суждений и формальной обработкой результатов. Получаемое в результате обработки обобщенное мнение экспертов принимается как решение проблемы. Комплексное использование интуиции (не осознанного мышления), логического мышления и количественных оценок с их формальной обработкой позволяет во многих случаях получить эффективное решение проблемы. При выполнении своей роли в процессе управления эксперты производят две основные функции: формируют объекты (альтернативные ситуации, цели, решения и т.п.) и производят измерение их характеристик (вероятности свершения событий, коэффициенты значимости целей, предпочтения решений и т.п.). Формирование объектов осуществляется экспертами на основе логического мышления и интуиции. При этом большую роль играют знания и опыт экспертов. Измерение характеристик объектов требует от экспертов знания теории измерений. Существующие виды экспертных оценок можно классифицировать по следующим признакам. 1. По форме участия экспертов: очное, заочное. Очный метод позволяет сосредоточить внимание экспертов на решаемой проблеме, что повышает качество результата, однако заочный метод может быть дешевле. 2. По количеству итераций (повторов процедуры для повышения точности) – одношаговые и многошаговые. 3. По решаемым задачам: генерирующие решения и оценивающие варианты. 4. По типу ответа: описательные и ранжирующие, оценивающие объект в относительной или абсолютной (численной) шкале. 5. По способу обработки мнений экспертов: непосредственные и аналитические. 6. По количеству привлекаемых экспертов: без ограничения и с ограничениями. Обычно привлекается 5 – 12экспертов. Эксперты должны обладать опытом в областях, соответствующих решаемым задачам. При подборе экспертов следует учитывать момент личной заинтересованности, который может стать существенным препятствием для получения объективного суждения. Наиболее распространены методы Шара, когда один эксперт, наиболее уважаемый специалист, рекомендует ряд других и далее по цепочке, пока не будет подобран необходимый коллектив. После получения ответов экспертов необходимо провести их обработку, что позволяет получить следующие результаты. 1. Оценить согласованность мнений экспертов. При отсутствии значимой согласованности экспертов необходимо выявить причины несогласованности (наличие групп) и признать отсутствие согласованного мнения (ничтожные результаты экспертизы). 2. Оценить ошибку исследования. 3. Построить модель свойств объекта на основе ответов экспертов (для аналитической экспертизы) 4. Подготовить отчет с результатами экспертного оценивания. В отчете указывается цель исследования, состав экспертов, полученная оценка и статистический анализ результатов Характерными особенностями метода экспертных оценок как научного инструмента решения сложных неформализуемых проблем являются, во‑первых, научно-обоснованная организация проведения всех этапов экспертизы, обеспечивающая наибольшую эффективность работы на каждом из этапов, и, во‑вторых, применение количественных методов – как при организации экспертизы, так и при оценке суждений экспертов и формальной групповой обработке результатов. Эти две особенности отличают метод экспертных оценок от обычной давно известной экспертизы, широко применяемой в различных сферах человеческой деятельности. В настоящее время в нашей стране и за рубежом метод экспертных оценок широко применяется для решения важных проблем. В различных отраслях, объединениях и на предприятиях действуют постоянные или временные экспертные комиссии, формирующие решения по различным сложным проблемам. Все множество плохо формализуемых проблем условно можно разделить на два класса. К первому классу относятся проблемы, в отношении которых имеется достаточный информационный потенциал, позволяющий успешно решать эти проблемы. Основные трудности в решении проблем первого класса при экспертной оценке заключаются в реализации существующего информационного потенциала путем подбора экспертов, построения рациональных процедур опроса и применения адекватных методов обработки его результатов. При этом методы опроса и обработки основываются на использовании принципа «хорошего» измерителя. Данный принцип означает, что выполняются следующие гипотезы: 1) эксперт является хранилищем большого объема рационально обработанной информации, и поэтому он может рассматриваться как качественный источник информации; 2) групповое мнение экспертов близко к истинному решению проблемы. Если эти гипотезы верны, то для построения процедур опроса и алгоритмов обработки можно использовать результаты теории измерений и математической статистики. Ко второму классу относятся проблемы, в отношении которых информационный потенциал знаний недостаточен для уверенности в справедливости указанных гипотез. При решении проблем из этого класса экспертов уже нельзя рассматривать как «хороших измерителей». Поэтому необходимо очень осторожно проводить обработку результатов экспертизы. Применение методов осреднения, справедливых для «хороших измерителей», в данном случае может привести к большим ошибкам. Например, мнение одного эксперта, сильно отличающееся от мнений остальных экспертов, может оказаться правильным. В связи с этим для проблем второго класса в основном должна применяться качественная обработка. Область применения метода экспертных оценок весьма широка. Перечислим типовые задачи, решаемые методом экспертных оценок: 1) составление перечня возможных событий в различных областях за определенный промежуток времени; 2) определение наиболее вероятных интервалов времени свершения совокупности событий; 3) определение целей и задач управления с упорядочением их по степени важности; 4) определение альтернативных (вариантов решения задачи) с оценкой их предпочтения; 5) альтернативное распределение ресурсов для решения задач с оценкой их предпочтительности; 6) альтернативные варианты принятия решений в определенной ситуации с оценкой их предпочтительности. Для решения перечисленных типовых задач в настоящее время применяются различные разновидности метода экспертны хоценок. К основным видам относятся: анкетирование иинтервьюирование; мозговой штурм, метод Дельфи, дискуссия, совещание, оперативная игра, сценарий. Каждый из этих видов экспертного оценивания обладает своими преимуществами и недостатками, определяющими рациональную область применения. Во многих случаях наибольший эффект дает комплексное применение нескольких видов экспертизы. Анкетирование и сценарий предполагают индивидуальную работу эксперта. Интервьюирование может осуществляться как индивидуально, так и с группой экспертов. Остальные виды экспертизы предполагают коллективное участие экспертов, в работе. Независимо от индивидуального или группового участия экспертов в работе целесообразно получать информацию от множества экспертов. Это позволяет получить на основе обработки данных более достоверные результаты, а также новую информацию о зависимости явлений, событий, фактов, суждений экспертов, не содержащуюся в явном виде в высказываниях экспертов. В настоящем курсе нет возможности подробно рассмотреть все множество видов экспертного оценивания и методов обработки их результатов. Мы остановимся только на одном из простейших методов – методе средних баллов, который может реализовываться в двух видах – методе средних арифметических рангов и методе медиан рангов. 2.4.2 Методы средних баллов при оценке альтернатив Рассмотрим простейший способ экспертного оценивания альтернатив – балльные оценки. Членов сформированной группы экспертов просят выставить баллы объектам, изделиям, технологическим процессам, предприятиям, проектам, заявкам на выполнение научно-исследовательских работ, идеям, проблемам, программам, политикам и т.п., а затем рассчитывают средние баллы и рассматривают их как интегральные оценки, выставленные коллективом опрошенных, как результаты работы «мультиразума». При этом возникает вопрос: какими формулами пользоваться для вычисления средних величин? Ведь видов средних величин очень много. По традиции обычно применяют среднее арифметическое. Однако специалисты утверждают, что такой способ некорректен, поскольку баллы обычно измерены в так называемой порядковой шкале. В качестве средних баллов обоснованным является использование медиан. В то же время полностью игнорировать средние арифметические нерационально из-за их привычности и распространенности. Поэтому целесообразно использовать одновременно оба метода – и метод средних арифметических рангов (баллов), и методов медианных рангов. Такая рекомендация находится в согласии с концепцией устойчивости, рекомендующей использовать различные методы для обработки одних и тех же данных с целью выделить выводы, получаемые одновременно при всех методах. Пример сравнения восьми проектов. Рассмотрим конкретный пример применения сформулированного выше подхода [26]. По заданию руководства фирмы анализировались восемь проектов, предлагаемых для включения в план стратегического развития фирмы. Они были зашифрованы следующим образом: П1, П2, П3, П4, П5, П6, П7, П8. Все проекты были направлены 12 экспертам, назначенным правлением фирмы. В таблице 2.2 приведены ранги восьми проектов, присвоенные им каждым из 12 экспертов в соответствии с их представлением о целесообразности включения проекта в стратегический план фирмы. При этом ранг 1 – самый лучший проект, который обязательно надо реализовать, ранг 2 – второй по привлекательности проект, и т.д., ранг 8 – наиболее сомнительный проект. Анализируя результаты работы экспертов (т.е. упомянутую таблицу 2.2), члены правления фирмы были вынуждены констатировать, что полного согласия между экспертами нет, а потому данные таблицы следует подвергнуть более тщательному математическому анализу. Метод средних арифметических рангов. Сначала был применен метод средних арифметических рангов. Для этого, прежде всего, была подсчитана сумма рангов, присвоенных проектам. Затем эта сумма была разделена на число экспертов, в результате рассчитан средний арифметический ранг (именно эта операция дала название методу). По средним рангам строится итоговая ранжировка, исходя из принципа – чем меньше средний ранг, тем лучше проект. Наименьший средний ранг, равный 2,625, у проекта П4, следовательно, в итоговой ранжировке он получает ранг 1. Следующая по величине сумма, равная 3,125, у проекта П3, – и он получает итоговый ранг 2. Проекты П2 и П6 имеют одинаковые суммы (равные 3,25), значит, с точки зрения экспертов они равноценны (при рассматриваемом способе сведения вместе мнений экспертов), а потому они должны бы стоять на 3 и 4 местах и получают средний балл (3+4)/2 = 3,5. Дальнейшие результаты приведены в таблице 2.2. Таблица 2.2 Ранги 8 проектов по степени привлекательности для включения в план стратегического развития фирмы № эксперта П1 П2 П3 П4 П5 П6 П7 П8 1 5 3 1 2 8 4 6 7 2 5 4 3 1 8 2 6 7 3 1 7 5 4 8 2 3 6 4 6 4 2,5 2,5 8 1 7 5 5 8 2 4 6 3 5 1 7 6 5 6 4 3 2 1 7 8 7 6 1 2 3 5 4 8 7 8 5 1 3 2 7 4 6 8 9 6 1 3 2 5 4 7 8 10 5 3 2 1 8 4 6 7 11 7 1 3 2 6 4 5 8 12 1 6 5 3 8 4 2 7 Примечание к таблице 2.2 . Эксперт № 4 считает, что проекты П3 и П4 равноценны, но уступают лишь одному проекту - проекту П6. Поэтому проекты П3 и П4 должны были бы стоять на втором и третьем местах и получить баллы 2 и 3. Поскольку они равноценны, то получают средний балл (2+3)/2 = 5/2 = 2,5. Итак, ранжировка по суммам рангов (или, что-то же, по средним арифметическим рангам) имеет вид: П4П3{П2,П6} П1 П7 П5 П8. (2.2) Здесь запись типа "АБ" означает, что проект А предшествует проекту Б (т.е. проект А лучше проекта Б). Поскольку проектыП2 и П6 получили одинаковую сумму баллов, то по рассматриваемому методу они эквивалентны, а потому объединены в группу (в фигурных скобках). Таким образом, итог расчетов – ранжировка (2.2), и на ее основе предстоит принимать решение. Метод медиан рангов. Но тут необходимо напомнить, что ответы экспертов измерены в порядковой шкале, а потому для них не вполне правомерно проводить усреднение методом средних арифметических. Более подходящим является использование метода медиан. Это означает, что надо взять ответы экспертов, соответствующие одному из проектов, например, проекту П1. Это ранги 5, 5, 1, 6, 8, 5, 6, 5, 6, 5, 7, 1. Затем их надо расположить в порядке неубывания. Получим последовательность: 1, 1, 5, 5, 5, 5, 5, 6, 6, 6, 7, 8. На центральных местах – шестом и седьмом – стоят цифры 5 и 5. Следовательно, медиана равна 5. Таблица 2.3 Результаты расчетов по методу средних арифметических и методу медиан для данных, приведенных в табл.2.2 П1 П2 П3 П4 П5 П6 П7 П8 Сумма рангов 60 39 37,5 31.5 76 39 64 85 Среднее арифмети-ческое рангов 5 3,25 3,125 2,625 6,333 3,25 5,333 7,083 Итоговый ранг по среднему арифметическому 5 3,5 2 1 7 3,5 6 8 Медианы рангов 5 3 3 2,25 7,5 4 6 7 Итоговый ранг по медианам 5 2,5 2,5 1 8 4 6 7 Медианы совокупностей из 12 рангов, соответствующих определенным проектам, приведены в предпоследней строке таблицы. (При этом медианы вычислены по обычным правилам статистики - как среднее арифметическое центральных членов вариационного ряда). Итоговое упорядочение по методу медиан приведено в последней строке таблицы. Ранжировка (т.е. упорядочение – итоговое мнение комиссии экспертов) по медианам имеет вид: П4 {П2, П3}П6П1П7П8П5. (2.3) Поскольку проекты П2 и П3 имеют одинаковые медианы баллов, то по рассматриваемому методу ранжирования они эквивалентны, а потому объединены в группу (кластер). Сравнение ранжировок по методу средних арифметических и методу медиан. Сравнение ранжировок (2.2) и (2.3) показывает их близость. Можно принять, что проекты П3, П2, П6 упорядочены как П3П2П6, но из-за погрешностей экспертных оценок в одном методе признаны равноценными проекты П2 и П6 (ранжировка (2.2)), а в другом - проекты П3 и П2 (ранжировка (2.3)). Существенным является только расхождение, касающееся упорядочения проектов П8 и П5: в ранжировке (2.2) П5П8, а в ранжировке (2.3), наоборот, П8П5. Однако эти проекты - наименее привлекательные из восьми рассматри-ваемых, и при выборе наиболее привлекательных проектов для дальнейшего обсуждения и использования на это расхождение можно не обращать внимания. Рассмотренный пример демонстрирует сходство и различие ранжировок, полученных по методу средних арифметических рангов и по методу медиан, а также пользу от их совместного применения. Мы рассмотрели простейший пример экспертного оценивания вариантов решения. На практике используются более сложные и совершенные методы, их поддержка осуществляется с помощью информационных систем поддержки принятия решений СППР. 2.5 Продукционные модели знаний Продукционные модели знаний относятся к весьма популярными средствами представления знаний в системах поддержки принятия решений. Продукции, с одной стороны, близки к логическим моделям, что позволяет организовать на них эффективные процедуры вывода, а с другой стороны, более наглядно отражают знания, чем классические логические модели. 2.5.1 Основные определения В простейшем виде под продукцией понимается выражение следующего вида [77]: (2.4) Здесь i — имя продукции, с помощью которого данная продукция выделяется из всего множества продукций. Элемент Q характеризует сферу применения продукции. Такие сферы легко выделяются в когнитивных структурах человека. Основным элементом продукции является ее ядро: . Интерпретация ядра продукции может быть различной и зависит от того, что стоит слева и справа от знака секвенции. Обычное прочтение ядра продукции выглядит так: ЕСЛИ А, ТО В. Более сложные конструкции ядра допускают в правой части альтернативный выбор, например, ЕСЛИ А, ТО ИНАЧЕ Секвенция  может истолковываться в обычном логическом смысле как знак логического следования В из истинного А. Элемент N описывает постусловия продукции. Они актуализируются только в том случае, если ядро продукции реализовалось. Постусловия продукции описывают действия и процедуры, которые необходимо выполнить после реализации В. Продукции, хранящиеся в памяти ИС, образуют систему продукций. В системе продукций должны быть заданы специальные процедуры управления продукциями, с помощью которых происходит актуализация продукций и выбор для выполнения той или иной продукции из числа актуализированных. Пример. Рассмотрим простую продукционную систему, диагностирующую состояния автомобиля [35]. Структурная схема системы приведена на рисунке 2.4. В системе присутствуют элементы , обозначающие свидетельства или факты: – начало тестирования; – автомобиль заводится; – автомобиль не заводится; – фары не горят; – фары горят; – указатель бензина на нуле; – указатель бензина не на нуле; – стартер вращается; – стартер не вращается. Кроме того, имеются элементы , определяющие взаимодействие с внешней средой, в частности, вопросы пользователю с возможными альтернативами выбора: – заводится ли автомобиль?; – горят ли фары?; – указатель бензина на нуле?; – стартер крутится? На каждый вопрос нужно отвечать ДА или НЕТ. Кроме того, в системе имеются вершины – (терминальные узлы), которые содержат диагнозы состояния автомобиля: – автомобиль исправен; – разрядился аккумулятор; – нет бензина;  – загрязнены свечи; – автомобиль отсырел. Рисунок 2.4 – Структурная схема продукционной системы Список продукций данной системы выглядит следующим образом. Элемент из формулы (2.4) опускаем, элементы представляют собой рекомендации ЛПР. (1) ; (2) ; Счастливого пути (3) ; (4) ; Зарядите аккумулятор (5) ; (6) ; Залейте бензин (7) ; (8) ; Прочистите свечи (9) ; Высушите автомобиль. Система продукций позволяет объяснять полученные рекомендации. Для этого, двигаясь по цепочке вывода от терминального узла снизу вверх, необходимо дойти до начальной продукции. Например, можно составить цепочку, объясняющую диагноз «загрязнены свечи»:, На словах это звучит так: автомобиль не заводится, при этом: фары горят, указатель бензина не на нуле, стартер вращается, следовательно, загрязнились свечи. Рекомендуется их прочистить. 2.5.2 Байесовский подход к построению продукционных моделей знаний Приведенное выше определение продукции и соответствующий пример предполагают полную определенность процесса выбора альтернатив, когда нет никаких сомнений в правильности принимаемых решений. Однако на практике гораздо чаще встречаются случаи, когда ЛПР не располагает полной информацией о ситуации, и требуется оценка надежности принимаемых решений. Одним из путей оценки такой надежности является применение методов теории вероятностей, которые мы рассмотрим ниже. Краткие сведения из теории вероятностей Теория вероятности оперирует с событиями, которые обозначаются большими буквами латинского алфавита: События могут произойти или не произойти случайным образом. Среди событий выделяют два особых события: достоверное событие , которое происходит всегда, и невозможное событие , которое не происходит никогда. Событие называется противоположным , оно происходит тогда, когда не происходит. Событие, состоящее в наступлении обоих событий и , называется произведением событий и обозначается как или . Событие, состоящее в наступлении хотя бы одного события, называется суммой событий и обозначается . Наступление события при условии, что наступило событие , обозначают как . Из определений следует, что . Каждому случайному событию ставится в соответствие неотрицательное число которое называется вероятностью события. Справедливы следующие законы теории вероятностей. • ; • ; • (2.5) • . • Событие не зависит от события , если и Поэтому для независимых событий и имеем . Выведем теперь формулу, которая потребуется в дальнейшем. Из формулы (2.5) для вероятности произведения событий следует , , Откуда . Вероятность формально можно представить в виде , В результате получаем так называемую формулу Байеса: . (2.6) Эта формула широко применяется в системах поддержки принятия решений, поскольку с ее помощью можно уточнять и накапливать информацию в процессе функционирования системы. Предположим, что имеется некоторая гипотеза и априорная вероятность того, что эта гипотеза истинна Пусть, далее, имеется свидетельство в пользу этой гипотезы. Это позволит уточнить вероятность истинности гипотезы . По формуле Байеса (3) имеем: . (2.7) Пример. Предположим, что ЛПР сомневается в справедливости гипотезы и оценивает вероятность того, что она справедлива, величиной и, соответственно, что она ложна, вероятностью . Однако привлеченный эксперт считает вероятность того, что гипотеза верна, равной , а вероятность ошибки он оценивает величиной В результате расчета по формуле Байеса (4) получим . Таким образом, ЛПР может изменить свою оценку вероятности гипотезы . 2.5.3 Структура базы знаний и алгоритм логического вывода Мы рассмотрим упрощенный вариант архитектуры экспертной системы (ЭС), предложенной К. Нейлором и базирующейся на использовании алгоритмов Байеса, [22, 34] . База знаний диагностирующей ЭС содержит записи двух типов: • формат 1:знания о конкретных гипотезах (диагнозах) – ; • формат 2: знания о свидетельствах (фактах) – . Запись, описывающая конкретную гипотезу в формате 1, имеет следующую структуру: . (2.8) Здесь: - название гипотезы ; - априорная вероятность данной гипотезы; - число свидетельств (фактов) для данной гипотезы; - номер свидетельства; - вероятность выполнения свидетельства , если гипотеза верна; - вероятность выполнения свидетельства, если гипотеза не верна; . Знания о свидетельствах (фактах) должны быть представлены в формате 2 в следующем виде: - номер свидетельства; Название свидетельства; Задаваемый вопрос. Ключевым элементом рассматриваемой методики является вычисление цены свидетельств по формуле: Здесь - номера свидетельств , указанных в формате 2; - номера гипотез , указанных в формате 1, для подтверждения которых требуется свидетельство . Величина определяет полную сумму максимально возможных изменений вероятностей по всем гипотезам, имеющимся в базе данных за счет свидетельства . Алгоритм логического вывода состоит из следующих шагов. 1. Вычисляем все , , выбираем свидетельство с наибольшей оценкой: . 2. Задаем пользователю вопрос, хранящийся в формате 2 выбранного свидетельства. Ответ может быть: да, нет, не знаю. 3. В зависимости от ответа пересчитываем вероятности всех гипотез, связанных со свидетельством . Пересчет производится по формуле Байеса. В случае ответа да: ; (2.10) в случае ответа нет: ; (2.11) в случае ответа не знаю: (2.12) 4. После этого заменяем в массиве записей о гипотезах (5) вероятности на , . 5. Повторяем описанную процедуру (пункты 1–4) для всех свидетельств. Свидетельство, по которому уже был задан вопрос, в дальнейшем диалоге не участвует, его цена обнуляется. 6. После опроса всех свидетельств получаем окончательные значения вероятностей гипотез, это и является окончательным диагнозом. Пример. Вернемся к задаче о диагностике состояния автомобиля и рассмотрим ее на основе изложенной выше теории. Формат 1 Гипотезы : : Сел аккумулятор; 0,1; 5; (1; 0; 0,99); (2; 0,7; 0,05); (4; 0,2; 0,5); (5; 0; 0,99); (6; 1; 0,01) : Нет бензина; 0,05; 2; (2; 1; 0,01); (6; 0,9; 0,02) : Отсырел распределитель зажигания; 0,01; 3; (3; 0,9; 0,1); (4; 0,25; 0,5); (6; 0,9; 0,02) : Загрязнены свечи; 0,01; 2; (4; 0,01; 0,5); (6; 0,9; 0,02) Формат 2 Свидетельства (симптомы) и вопросы к пользователю Фары горят; Горят ли фары? Указатель бензина на нуле; Есть ли бензин? Автомобиль отсырел; Не находился ли автомобиль долго под дождем? Автомобиль недавно прошел техобслуживание; Проходил ли автомобиль недавно техобслуживание? Стартер крутится; Крутится ли стартер? Автомобиль не заводится; Автомобиль не заводится? По данной базе знаний и формуле (2.9) можно сформировать массив исходных цен свидетельств (таблица 2.4), а также вероятности гипотез (таблица 2.5) на каждом шаге процедуры принятия решений. Таблица 2.4 Цены свидетельств Свидетельства (симптомы) Гипотезы Шаг 1 Шаг 2 Шаг 3 Шаг 4 Шаг 5 Фары горят 0,917 0,999 0,999 0,99 Указатель бензина на нуле 0,7 1,415 1,213 0,05 1 0,01 Автомобиль отсырел 0,9 0,082 0,755 0,755 0,755 0,1 Автомобиль недавно прошел техобслуживание 0,2 0,137 0,815 0,597 0,597 0,5 0,25 0,5 0,01 0,5 Стартер крутится 0,917 0,999 1,000 0,99 Автомобиль не заводится 1 2,238 0,01 0,9 0,02 0,9 0,02 0,9 0,02 Таблица 2.5 Вероятности гипотез Гипотеза Шаг 0 Шаг 1 Шаг 2 Шаг 3 Шаг 4 Шаг 5 : Сел аккумулятор 0,1 0,917 0,994 : Есть ли бензин 0,05 0,703 0,959 1,0 1,0 1,0 : Отсырел распре-делитель зажигания 0,01 0,312 0,312 0,312 0,312 0,330 :Загрязнены свечи 0,01 0,312 0,312 0,312 0, 312 0,327 По исходным вероятностям (Шаг 0) рассчитываются цены свидетельств и начинается диалог с системой. Свидетельства с наибольшей ценой выделены. Шаг 1. Наибольшую цену имеет свидетельство : Автомобиль не заводится. Задается вопрос: Автомобиль не заводится? При ответе ДА пересчитываются вероятности гипотез и цены свидетельств. Шаг 2. Наибольшую цену имеет свидетельство : Указатель бензина на нуле. Задается вопрос: Есть ли бензин? При ответе ДА пересчитываются вероятности гипотез и цены свидетельств. Шаг 3. Наибольшую цену имеет свидетельство : Стартер крутится. Задается вопрос: Крутится ли стартер? При ответе ДА пересчитываются вероятности гипотез и цены свидетельств. Шаг 4. Наибольшую цену имеет свидетельство : Автомобиль отсырел. Задается вопрос: Не находился ли автомобиль долго под дождем? При ответе НЕ ЗНАЮ вероятности не изменяются. Шаг 5. Единственное свидетельство с ненулевой ценой : Автомобиль недавно прошел техобслуживание. При ответе НЕТ изменяются вероятности гипотез и . Диагноз: Гипотеза отвергается, поскольку . Это говорит о том, что аккумулятор в порядке. Гипотеза подтверждается, поскольку . Это говорит о том, что бензин имеется. Гипотеза имеет вероятность , поскольку неизвестно, был ли автомобиль под дождем. Гипотеза имеет вероятность , поскольку автомобиль не прошел техобслуживание и неизвестно, был ли он под дождем. Вопросы и задания для самостоятельного изучения 1. Составьте когнитивную карту какой-либо знакомой Вам деятельности, например, успехов в спорте, в учебе, в научной работе и др. 2. Выберите знакомую Вам область и проранжируйте входящие в нее объекты (например, марки автомобилей, футбольные команды, изучаемые Вами дисциплины и др.). Сравните ранжировки, полученные по методу средних арифметических и по методу медиан. 3. Для знакомой Вам области составьте продукционную систему, позволяющую выбрать одну из гипотез (например, Крис Нейлор [22] иллюстрирует создание продукционной системы на примере выбора между птицей и самолетом). 4. Ниже приводится фрагмент медицинской экспертной системы, позволяющий отличить грипп от простуды. Формат 1 Структура описания гипотезы - априорная вероятность гипотезы, - количество свидетельств (симптомов), - имя симптома, - вероятность выполнения свидетельства для данной гипотезы, - вероятность выполнения свидетельства при неверности данной гипотезы. Гипотезы Формат 2 Свидетельства (симптомы) : Чихание. Вы часто чихаете? : Слезы из глаз. Слезятся ли у вас глаза? : Боль в горле. Болит ли у вас горло? : Насморк. Есть ли у вас насморк? : Головная боль. Болит ли у вас голова? : Высокая температура. Ваша температура выше 37 градусов? На основе алгоритма, приведенного в п. 2.4.3 и собственного опыта, задавая системе вопросы, оцените вероятности гипотез и . Глава 3 Методы оптимизации в задачах принятия решений Как отмечалось ранее, принятие решений часто связано с учетом множества противоречивых требований, удовлетворить которым одновременно в полной мере невозможно. Математически такая ситуация приводит к задачам, которые получили название задач многокритериальной оптимизации. Общая постановка детерминированной многокритериальной задачи параметрической оптимизации с ограничениями формулируется следующим образом [34]: , . (3.1) В этой формуле , представляют собой численные критерии, оценивающие качество решения. Множество называется множеством допустимых решений. В пределах этого множества может задаваться ряд ограничений на вектор : • прямые (интервальные) ограничения , ; (3.2а) • функциональные ограничения , , (3.2б) где - заданные числа, – заданные функции. Предполагается, что каждый из критериальных параметров необходимо максимизировать. Это не ограничивает общности, так как минимизация функции эквивалентна максимизации Аналогично, замена знака у левой части неравенства меняет знаки неравенств на противоположные и приводит их к виду . В том случае, когда критерий всего один , получается классическая задача однокритериальной оптимизации. Такие задачи мы и рассмотрим в первую очередь. Ниже, в основном, пойдет речь о постановках задач оптимизации. Что касается численных алгоритмов решения таких задач, то мы, за исключением некоторых простых случаев, их не приводим, полагая, во-первых, что численные методы изучены ранее в курсах прикладной математики, а во-вторых, что эти методы доступны в математических пакетах и сети Интернет. 3.1 Принятие решений на основе методов линейного программирования Среди оптимизационных задач в теории принятия решений наиболее известны задачи линейного программирования, в которых максимизируемая функция в выражении (3.1) является линейной, а ограничения задаются линейными неравенствами [34, 37]. Базовая формулировка задачи линейного программирования выглядит следующим образом. Исходная задача. В простейшем виде задача линейного программирования формулируется следующим образом. Имеется неизвестных величин , , которые образуют вектор – столбец . Значок здесь и далее означает транспонирование матицы. Компоненты вектора подчиняются ограничениям , . (3.3) Величины также могут быть представлены в виде вектора-столбца , а коэффициенты , , образуют  ‑ матрицу . С учетом введенных обозначений неравенство (3.3) можно представить в матричном виде: . (3.4) Каждая величина имеет «цену» , . Тогда общая цена всех неизвестных составит (3.5) или в матричной записи (3.6) где - m-вектор-столбец . (3.7) Задача линейного программирования заключается в следующем. • Заданы матрица векторы и • Принятие решения заключается в нахождении такого вектора который удовлетворяет ограничениям (3.4) и обеспечивает максимум выражения (3.5). Формально это условие может быть записано в виде . (3.8) Двойственная задача. Каждой задаче линейного программирования соответствует так называемая двойственная задача. В ней в качестве неизвестного появляется вектор двойственных переменных размерностью . Матрица ограничений транспонируется по сравнению с исходной задачей, т.е. строки переходят в столбцы, и наоборот. Неравенства в ограничениях меняют знак, то есть вместо максимума ищется минимум (или наоборот, вместо минимума – максимум). Задача, двойственная к двойственной, – это сама исходная задача. Сравним исходную задачу и двойственную к ней. Исходная задача: Двойственная задача: Почему двойственная задача столь важна? Дело в том, что оптимальные значения показывают стоимость материала и труда соответственно, если их оценивать по вкладу в целевую функцию. При этом оптимальные значения целевых функций в исходной и двойственной задачах совпадают (т.е. максимум в исходной задаче совпадает с минимумом в двойственной). Поэтому их называют «объективно обусловленными оценками» сырья и рабочей силы. Методы решения сформулированных задач хорошо разработаны и реализованы практически во всех математических пакетах программ, например, в Exel. Наиболее часто используется так называемый симплекс-метод решения задач линейного программирования. Мы не будем останавливаться на изложении этих методов, а сосредоточимся на рассмотрении примеров конкретных постановок для принятия решений. 3.2 Математическая модель планирования производства Рассмотренная ниже модель предназначена для принятия решения об оптимизации плана выпуска различных видов продукции из имеющихся нескольких видов сырья [10]. Такие задачи возникают в нефтепереработке, пищевой промышленности, при раскрое плит на заготовки, или круглого леса на пиломатериалы, а также в других областях. Имеется видов сырья, из которого нужно изготовить видов продукции. Каждый из видов сырья может быть использован различным способом в соответствии с технологическими картами, которые мы будем считать заданными. Обозначим объем -й продукции при обработке сырья j-м способом (; ). Здесь общее количество технологических карт. Эти величина образуют матрицу , в которой каждая строка соответствует одному виду продукции, а каждый столбец – технологической карте. Карты пронумерованы все подряд, но каждая карта пригодна для обработки только определенного вида сырья. Этот факт может быть описан с помощью переменных , которые принимают значение 1, если -я карта может быть использована для обработки сырья -го вида, и значение 0 в противном случае (; ). Переменные образуют  ‑ матрицу , состоящую из нулей и единиц следующего вида: . (3.9) В этой матрице каждая строка соответствует одному виду сырья, а каждый столбец – одной технологической карте. Принятие решения в данной задаче состоит в определении интенсивности использования способов производства продукции, т.е. технологических карт. Обозначим количество сырья, обработанного при использовании -й технологической карты. Эти величины образуют вектор-столбец , который называют планом производства. Если план производства задан, то количество произведенной продукции -го вида вычисляется по формуле . (3.10) Всю спецификацию вырабатываемой продукции можно представить в виде вектора-столбца , который может быть представлен как произведение матрицы на вектор : . (3.11) Общий объем (или стоимость) продукции, производимой при плане производства , определится путем сложения объемов по всем ее видам: . (3.12) С учетом (2.13), изменяя порядок суммирования, получим: . (3.13) В этой формуле - общий объем (или стоимость) продукции всех видов, получаемой из единицы сырья при использовании в производстве ‑й технологической карты. Эти величины также могут быть объединены в вектор-столбец размерностью M:. Получим более компактную запись для общего объема продукции: . (3.14) Обратимся теперь к сырью. Пусть () - количество сырья ‑го вида, идущего на изготовление продукции. Тогда спецификация имеющегося сырья может быть представлена в виде вектора-столбца . По аналогии с формулой (3.11), спецификация сырья, подлежащего обработке при плане производства , определится выражением . (3.15) Каждый из видов сырья характеризуется стоимостью (или объемом) единицы измерения , (), и эти показатели тоже можно объединить в виде вектора . Общая стоимость сырья, использованного в соответствии с планом производства с учетом (3.15) равна . (3.16) В формуле (3.16) вектор-строка определяет стоимость сырья, обрабатываемого по -й технологической карте. Часто при планировании производства учитывают отходы сырья. Пусть , () -количество отходов, образующихся при обработке сырья по ‑й технологической карте. Тогда суммарные отходы, получаемые при плане производства , определятся выражением , (3.17) где . 3.3 Задачи оптимального планирования производства Приведенные в п. 3.2 соотношения позволяют формулировать задачи оптимального планирования производства [10]. Для этого предварительно необходимо проделать следующие операции: • составить все необходимые технологические карты, на их основе рассчитать матрицы и , а также определить векторы . • принять решение о критерии оптимизации. В частности, таким критерием может быть: а) максимум выхода продукции (3.14), б) минимум расхода сырья (3.16), в) минимум отходов (3.17). В практике планирования производства возможны различные постановки задач оптимизации. Ниже рассмотрены три наиболее типичных случая. Первый случай планирования Заданы: • спецификация вырабатываемой продукции , • матрицы и , • векторы , Требуется определить: • оптимальную по выбранному критерию спецификацию сырья – вектор ; • план производства , обеспечивающий получение спецификации . Последнее условие запишется в виде равенства . (3.18) Поскольку спецификация сырья заранее не ограничена и можно выбирать любое сырье, то справедливо неравенство . (3.19) Критерии оптимизации могут быть двух видов: • минимум расхода сырья где ; (3.20) • или минимум отходов . (3.21) Использование в качестве критерия максимума выхода продукции (2.17) в рассматриваемой задаче не имеет смысла, т.к. спецификация продукции жестко задана. Задачи (3.18), (3.19), (3.20) и (3.18), (3.19), (3.21) представляют собой задачи линейного программирования, которые можно решить с помощью стандартных программ, реализующих алгоритм симплекс-метода. Решив эти задачи и получив оптимальный вектор , можно затем определить искомую оптимальную спецификацию сырья (вектор ): . (3.22) Второй случай планирования Заданы: • спецификация сырья , • матрицы и , • векторы . Требуется определить: • оптимальную по выбранному критерию спецификацию вырабатываемой продукции , • план производства , обеспечивающий полное использование сырья и получение оптимальной спецификации продукции . В этом случае задача оптимизации ставится следующим образом: найти такой оптимальный план производства , который удовлетворяет ограничениям , (3.23) (3.24) и обеспечивает экстремум одного из критериев: • максимум выпуска продукции , (3.25) • минимум отходов . (3.26) Использование в качестве критерия оптимизации минимума расхода сырья в данной постановке невозможно, т.к. объемы сырья заданы. Как и в предыдущем случае, решив с помощью стандартной программы задачи (3.23), (3.24), (3.25) или (3.23), (3.24), (3.26), получим оптимальный план производства , а затем искомую оптимальную спецификацию продукции . (3.27) Третий случай планирования Это наиболее распространенный случай планирования производства, он заключается в следующем. Заданы: • спецификация сырья , • плановая спецификация вырабатываемой продукции, • матрицы и , • векторы . Требуется определить оптимальный по выбранному критерию план производства продукции из имеющегося в наличии сырья с целью выполнения заданной спецификации продукции . В данном случае ограничения имеют вид • , (3.28) • , (3.29) а критерий оптимальности задается одним из выражений: • максимум выпуска продукции , (3.30) • минимум отходов , (3.31) • минимум расхода сырья . (3.32) Найдя план производства как решение неравенств (3.28), (3.29) с условиями (3.30), (3.31) или (3.32), необходимо затем вычислить фактические спецификации вырабатываемой продукции и используемого сырья . Пример. Рассмотрим пример принятия решения о производстве пиломатериалов из круглых бревен [10]. Требуется составить план раскроя бревен четырех размерных групп со средними диаметрами вершинной части 38. 42, 46 и 50 сантиметров на пиломатериалы 12 сечений с использованием 12 технологических карт (поставов). При этом нужно выполнить заданную спецификацию пиломатериалов и обеспечить минимум расхода сырья. Характеристики сырья приведены в таблице 3.2, а характеристики карт раскроя – в таблице 3.1. Таблица 3.2 Характеристики сырья Средний диаметр, см 38 42 46 50 Объем1 бревна, куб. м. 0,73 0,89 1,08 1,26 Запас сырья данного вида,штук 200 200 200 200 . Плановая спецификация вырабатываемых пиломатериалов определена таблицей 3.3. Таблица 3.3 План выработки пиломатериалов Номер сечения 1 2 3 4 5 6 7 8 9 10 11 План выработки пиломатериалов, куб.м. 3 11 6 13 11 10 12 11 18 23 18 Поскольку и спецификация сырья, и спецификация пиломатериалов заданы, мы имеем третий случай планирования производства, причем критерием оптимальности служит минимум расхода сырья. Выпишем все исходные данные задачи. Матрица определится таблицей 3.1. Матрица применимости карт раскроя к видам сырья также определяется таблицей 3.1 и имеет вид . (3.33) Векторы спецификаций сырья и пиломатериалов определяются соответственно таблицами 3.2 и 3.3 и имеют следующий вид. (3.34) Вектор расхода сырья по каждой карте раскроя определится объемами бревен тех размерных групп, к которым применима данная карта раскроя. На основе таблицы 3.1 вычислим вектор Задача формулируется следующим образом: определить, сколько штук бревен нужно раскроить с помощью каждой из имеющихся карт , т.е. найти такой план раскроя (3.35) который бы удовлетворял системе ограничений (3.36) и доставлял минимум критерию (3.37) Сформулированная задача решалась с использованием стандартной программы, реализующей симплекс-метод. В результате расчета были выбраны карты раскроя с номерами 3, 6, 7, 9 и 10, а остальные карты не использовались. Полученный вектор оптимального выпуска продукции после округления значений до ближайшего целого числа имеет вид (3.38) При этом фактически будет выработана следующая спецификация продукции (в куб.м): Мы видим, что план по выпуску продукции выполнен, а по ряду позиций – и перевыполнен. Фактически израсходовано следующее количество сырья (штук бревен): . (3.39) Сравнивая полученные цифры с заданной спецификацией (3.34), мы видим, что получилась значительная экономия сырья. Значение критерия оптимизации (общий объем израсходованного сырья) составил (куб.м). (3.40) 3.4 Транспортная задача В качестве следующего примера задачи оптимизации при принятии решений рассмотрим так называемую транспортную задачу, которая также часто встречается на практике [26]. Задача формулируется следующим образом. Имеются склады, запасы на которых известны. Известны потребители и объемы их потребностей. Необходимо доставить товар со складов потребителям. Можно по-разному организовать «прикрепление» потребителей к складам, т.е. установить, с какого склада какому потребителю и сколько вести. Кроме того, известна стоимость доставки единицы товара с определенного склада определен-ному потребителю. Требуется минимизировать издержки по перевозке. Пусть имеется складов, на каждом из которых имеется запас продукции , и потребителей, потребности каждого составляют , , при этом предполагается, что суммарные запасы на складах и суммарные потребности потребителей совпадают: . (3.41) Стоимость доставки единицы товара со склада номер потребителю номер составляет рублей. Обозначим количество товаров, поставляемых со склада номер потребителю номер , , . Должны выполниться следующие условия. • Все товары со складов должны быть вывезены: , . (3.42) • Все потребители должны быть удовлетворены: , . (3.43) • Все должны быть неотрицательными: . Принятие решение заключается в составлении плана перевозок, т.е. выборе объемов поставок товара со склада потребителю . При этом суммарные затраты на перевозку должны быть минимальными: . (3.44) Пример. Рассмотрим решение транспортной задачи, исходные данные к которой представлены в таблице 2.7. Таблица 3.4 Исходные данные к транспортной задаче потре-битель 1 потре-битель 2 потре-битель 3 потре-битель 4 запасы на складах Склад 1 2 5 5 5 60 Склад 2 1 2 1 4 80 Склад 3 3 1 5 2 60 Потребности 50 40 70 40 200 В приведенной таблице, кроме объемов потребностей и величин запасов, указаны стоимости доставки единицы товара со склада потребителю  (, ). Таким образом, всего в задаче имеется 12 переменных . Они удовлетворяют двум группам ограничений. Во-первых, заданы запасы на складах: (3.45) Во-вторых, известны потребности клиентов: (3.46) Итак, всего имеется 7 ограничений типа равенств. Кроме того, все переменные неотрицательны – еще 12 ограничений. Целевая функция – стоимость перевозки, которую необходимо минимизировать, имеет вид: (3.47) В литературе рассматриваются различные варианты постановки и решения транспортной задачи. Количество переменных и ограничений в транспортной задаче обычно достаточно велико, и для ее решения разработаны специальные алгоритмы, реализованные в соответствующих программах. Такие программы обычно входят в популярные математические пакеты, их можно также найти в Интернете. В нашем примере оптимальный план перевозок выглядит следующим образом. Мы видим, что все ограничения (2.48) и (2.49) выполнены, а общие затраты на перевозку товаров составили Fopt=330 единиц. 3.5 Задачи об упаковке В данном параграфе мы кратко рассмотрим еще один класс задач, связанных с анализом альтернатив и принятием решений. Эти задачи также относятся к задачам оптимизации, однако их особенность состоит в том, что переменные, по которым производится оптимизация, могут принимать только два значения – 0 или 1. Фактически это означает, что некоторая переменная может быть либо выбрана при решении задачи, либо нет. 3.5.1 Задача о рюкзаке Имеется предметов, которые нужно упаковать в рюкзак, суммарный вес которого не может превышать . Каждый -й предмет имеет стоимость и вес . Необходимо загрузить рюкзак таким образом, чтобы стоимость загруженных предметов была наибольшей, а суммарный вес рюкзака не превышал . При этом предполагается, что , т.е. не все имеющиеся предметы поместятся в рюкзак. К подобной постановке сводятся многие задачи: управление информационными ресурсами, загрузка корабля или самолета, размещение капитала, раскрой листов на прямоугольные заготовки и другие. Введем -векторы и . Обозначим переменную, определяющую выбор -го предмета: , если -й предмет упаковывается в рюкзак, и в противном случае. Эти переменные образуют вектор . Простейшая задача о рюкзаке формулируется следующим образом. Найти (3.48) при условиях , . (3.49) Задача (3.48), (3.49) похожа на задачу линейного программирования, но особенность ограничений не позволяет непосредственно применять, например, симплекс-метод, который может привести к нецелочисленным решениям. Однако существует большое количество методов решения этой задачи, не связанных с линейным программированием. В качестве примера приведем так называемый «жадный» алгоритм [34]. Предположим, что все предметы упорядочены по относительной стоимости: . (3.50) Тогда алгоритм может быть записан в виде следующего фрагмента программы на языке Паскаль. begin U:=0; Z:=0; for j:=1 to n do if U+wj <= C then begin xj:=1; U:=U+wj; Z:=Z+pJ end else xj:=0; end. Этот алгоритм определяет суммарный вес рюкзака U, суммарную стоимость упакованных предметов Z, а также оптимальный вектор . Пример. К упаковке представлено 10 предметов, параметры которых приведены в таблице 3.5. Суммарный вес предметов, как видно из таблицы, равен кг. Общий вес рюкзака не должен превышать кг. Таблица 3.5 Решение задачи о рюкзаке Упорядоченные Упорядоченные номера 1 100 5 20 1.14 9 2 250 15 16.7 1,85 4 3 120 43 2,8 2,2 10 4 370 200 1,85 2.8 3 5 50 10 5,0 5,0 5 6 70 12 5,83 5,45 8 7 100 10 10,0 5,83 6 8 300 55 5,45 10,0 7 9 400 350 1,14 16,7 2 10 220 100 2,2 20 1 В соответствии с рассмотренным алгоритмом упорядочиваем предметы по величине отношения , а затем начинаем наполнять рюкзак. Нетрудно видеть, что будут выбраны предметы 9, 4, 10, 3, 5, 6, 7, 2, 1, а предмет 8 в рюкзак не войдет. Таким образом, вектор оптимальной загрузки имеет вид . Суммарный вес рюкзака получился 745 кг. Общая стоимость загруженных предметов 1680 руб. 3.5.2 Задачи упаковки в контейнеры Имеется множество из предметов , известны их веса , . Требуется разбить множество на подмножеств , называемых контейнерами, причем величина заранее не известна. Каждый контейнер имеет емкость , поэтому сумма весов загруженных в контейнер предметов не может превышать этой величины: , . (3.51) К таким задачам приводит принятие решений во многих областях: погрузка штучных грузов в контейнеры, в железнодорожные вагоны, размещение файлов на магнитных дисках, формирование программы учебного курса из отдельных модулей и другие. Задача формулируется следующим образом. Введем переменные: ={1, если j-й контейнер используется; 0 иначе}, ={1,если i-й предмет лежит в j-м контейнере; 0 иначе}. Требуется загрузить все предметы, используя минимальное число контейнеров: , (3.52) при этом загрузка каждого контейнера не должна превышать предельную емкость С: , , (3.53) а все предметы должны быть загружены: , . (3.54) Для решения задачи упаковки в контейнеры разработано множество алгоритмов [26]. Мы приведем один из них, называемый «наилучший подходящий». Пусть предметы расположены в произвольном порядке. • 1-й предмет помещаем в первый контейнер. • На к-м шаге размещаем к-й предмет. Находим частично заполненные контейнеры, где для него достаточно свободного места, и выбираем среди них наиболее заполненный. • Если таковых нет, то берем новый пустой контейнер и помещаем к-й предмет в него. Пример. Рассмотрим упаковку предметов предыдущего примера в контейнеры, вмещающие 400 кг. Сохраняя нумерацию предметов в таблице 3.5, в соответствии с приведенным алгоритмом получаем следующую последовательность. 1-й контейнер: 5+15+43+200+10+12+10+55=350, 2-й контейнер: 350, 3-й контейнер: 100. Если же предметы предварительно отсортировать по убыванию веса, то получим другую, более плотную упаковку, однако в два контейнера все предметы не войдут. 1-й контейнер: 350+43++5 = 398, 2-й контейнер: 200+100+55+15+12+10=392, 3-й контейнер: 10. 3.6 Задачи о замене оборудования Замена оборудования – одна из важных функций управления предприятиями. Эти операции производятся либо при истечении срока службы установленного оборудования, либо при переходе предприятия на выпуск новой продукции, для которого требуется другое оборудование. 3.6.1 Простейшая задача о замене оборудования В простейшей постановке задача о замене оборудования формулируется следующим образом [19]. Имеется некоторое оборудование, начальная стоимость которого равна . Это оборудование подвергается износу, теряя свою стоимость по закону где функция определяет скорость снижения стоимости оборудования во времени. При этом принимается, что срок службы этого оборудования таков, что нет необходимости учитывать инфляционные процессы при учете стоимости оборудования и его использования. В начальный момент , при , т.е. эта функция убывающая. Вид этой функции показан на рисунке 3.1 а. Степень износа оборудования оценивается формулой . а б Рис. 3.1 Вид функции снижения стоимости оборудования (а) и повышения затрат на обслуживание (б) Одновременно с износом возрастает стоимость обслуживания оборудования – суммарные расходы на содержание, эксплуатацию и ремонт, которые определяются функцией . Эта функция возрастает со временем, ее вид показан на рисунке 3.1 б. Предполагается, что не зависит от начальной стоимости оборудования. Полная себестоимость оборудования к моменту становится равной . В качестве показателя, который оценивает все издержки использования оборудования, обычно берут удельную себестоимость, подсчитанную за время, прошедшее с начала эксплуатации оборудования [19], т.е. показатель . (3.55) Функция при малых tубывает, а при увеличении времени проходит через минимум и начинает возрастать за счет роста расходов на обслуживание (рисунок 3.1). Таким образом, наиболее рациональный момент смены оборудования (продажи, утилизации) – это тот момент, когда функция достигает минимума. 3.6.2 Задача об оптимальных сроках замены дискового оборудования Рассмотрим изложенную выше методику применительно к подсистеме дисковой памяти, предназначенной для хранения больших объемов данных в информационных системах организаций, связанных с информационными технологиями (ИТ-организаций) [14]. Обозначим суммарный объем хранимых информационных ресурсов (ИР) в системе Мбайт, где -календарное время, месяцы. В начальный момент этот объем равен Мбайт. Рассмотрим прогноз этих величин на период от до , где - горизонт прогнозирования. Как известно, объем поступающих и хранимых в ИТ‑организациях ресурсов очень быстро растет. По данным различных источников, этот рост имеет экспоненциальный характер с положительным показателем. Поэтому количество хранимых ресурсов может быть представлено в виде , (3.56) где - интенсивность поступления ресурсов в систему 1/мес. Стоимость хранения и обработки ресурсов также растет, пропорционально их объему, или даже быстрей с учетом инфляции и усложнения указанных процессов. Таким образом, стоимость хранения и обработки ИР в зависимости от времени может быть представлена в виде . (3.57) Здесь - стоимость хранения и обработки всех ресурсов, руб., -стоимость хранения и обработки единицы ресурсов, руб./Мбайт, - начальная стоимость ресурсов, руб. Рассмотрим теперь динамику изменения стоимости оборудования. Как уже отмечалось, при современном уровне информационных технологий это, как правило, дисковые массивы и обслуживающее их оборудование. Стоимость оборудования снижается по мере его эксплуатации в связи с физическим и моральным износом. Зависимость, описывающую потерю стоимости оборудования, обслуживающего ресурсы, можно описать выражением , где - начальная стоимость оборудования, руб., - остаточная стоимость оборудования, - скорость снижения стоимости оборудования, 1/мес. Таким образом, в момент полная себестоимость оборудования ресурсов становится равной . (3.58) Как уже отмечалось, в соответствии с теорией замены оборудования [19], наиболее адекватным показателем является среднемесячная себестоимость, вычисленная за промежуток времени от начала эксплуатации системы до текущего момента. Таким образом, мы приходим к показателю , (3.59) где - средняя себестоимость системы руб/мес., вычисленная за период . Примеры графиков изменения со временем величин , , и приведены на рисунке 3.2. При решении вопроса о моменте замены оборудования естественно выбирать момент , когда показатель достигнет минимума. Момент можно определить численно, решив задачу однокритериальной оптимизации, ее решение имеет вид: . Эта задача легко решается численно, но возможно получить и ее аналитическое решение. Приравняв к нулю производную функции, получим выражение . (3.60) Это выражение обращается в нуль, когда его числитель равен нулю. После некоторых преобразований условие (3.60) можно записать в виде . (3.61) Соотношение (3.61) зависит от двух параметров: и , и для них можно построить номограмму, по которой определяется величина . При учете инфляции вычисления усложняются, однако общая идея остается прежней. Пример определения оптимальных сроков замены оборудования. Исследования динамики информационных ресурсов, которые проводились по данным ИТ-подразделения одного из муниципальных учреждений города Красноярска, показали, что основная нагрузка приходится на жесткие диски архивного хранения [14]. Оборудование с высокой скоростью доступа используется регулярно, но объемы информации, которые обрабатываются на этом оборудовании, не столь велики. Меньше всего задействовано оборудование со средней скоростью доступа. Кроме того, анализ динамики ресурсов за ряд лет в сочетании с экспертными оценками позволили оценить параметры модели (3.56) – (3.60) для всех классов актуальности. В качестве примера рассчитаем оптимальные сроки смены оборудования с высокой скоростью доступа. Расчеты выполнялись для временного интервала в 5 лет: c шагом 1 месяц. Качественно графики для всех видов ресурсов идентичны. Для высокоскоростного оборудования и обработки, соответственно, ресурсов высокой актуальности приняты следующие показатели. • начальная стоимость оборудования руб., • цена обслуживания руб., • интенсивность поступления ресурсов в систему 1/мес., • скорость снижения стоимости 1/мес. Расчетный график величин , и приведен на рисунке 3.2, а график средней себестоимости показан на рисунке 3.3. Рис. к 3.2 Графики функций , и Обозначение: ‑ , ‑ ,‑ Рис. 3.3 График функции Анализируя график на рисунке 3.3, мы видим, что оптимальный срок. замены оборудования составляет мес., или 2,5 года, что по мнению экспертов, согласуется с реальной политикой ИТ-организации. В самом деле, при напряженной работе информационных систем решения о модернизации или замене дисковых массивов принимаются через 2 – 3 года. Дальнейшее развитие данной модели связано, во-первых, с усовершенствованием методики оценки параметров в формулах (3.56) – (3.61), а во-вторых, с учетом коэффициента дисконтирования денежных средств. 3.7 Многокритериальные задачи принятия решений В данном параграфе мы вернемся к общей постановке задачи многокритериальной оптимизации, о которой говорилось в разделе 3.1. Напомним, что общая постановка детерминированной многокритериальной задачи параметрической оптимизации с ограничениями формулируется следующим образом [29, 34]: , , . (3.62) Здесь , – численные критерии, оценивающие качество решения, – множество допустимых решений, задаваемых ограничениями: , , , , (3.63) где , - заданные числа, – заданные функции. Задача (3.62), (3.63) не является стандартной с точки зрения традиционных методов оптимизации из-за наличия векторного критерия оптимизации. Поэтому важны различные приемы ее сведения к более удобным конструкциям, допускающим численное решение обычными средствами оптимизации. Такое сведение не является однозначным и вызывает известные трудности. Объясняется это тем, что многие из критериев являются противоречивыми: улучшение одного из них приводит к ухудшению другого. Возникает проблема выбора разумного компромисса, то есть определения такого допустимого вектора управляемых параметров , при котором все критериальные параметры принимают приемлемые значения. Рассмотрим наиболее употребительные в практике многокритериальной оптимизации методы приведения векторного множества критериев к одному скалярному. Метод главного критерия. В этом случае в качестве целевого критерия выбирается один из имеющегося множества критериев, который наиболее полно, по мнению ЛПР, отражает цели оптимизации. Остальные частные критерии учитываются с помощью дополнительных ограничений, которые включаются во множество . Основные трудности такого подхода связаны с назначением дополнительных ограничений. Кроме того, часто имеется несколько главных критериев, находящихся в противоречии друг с другом. Метод линейной свертки критериев. Это наиболее простой и часто применяемый метод. Его сущность состоит в приведении задачи оптимизации к виду: , , . (3.64) Весовые коэффициенты назначаются ЛПР. Они могут рассматриваться как показатели относительной значимости отдельных критериев . Эти показатели характеризуют чувствительность целевого критерия к изменению частных критериев: , . Сложность данного метода заключается в необходимости экспертного задания весовых коэффициентов , особенно тогда, когда частные критерии различны по характеру, размерности и величине. В этом случае их предварительно следует привести к безразмерному виду, нормированному к единице. Пусть – максимальное значение критерия , . Тогда безразмерный нормированный критерий примет вид: , . Иногда вместо аддитивного критерия (3.64) используется критерий с мультипликативной сверткой частных критериев: . (3.65) Этот критерий принципиально не отличается от предыдущего, так как можно прологарифмировать выражение (3.65) (предполагается, что все ) и получить выражение, аналогичное (3.64): . Метод минимаксных критериев. Этот метод в простейшем случае применяется в следующем виде: . (3.66) В отличие от метода линейной свертки, здесь на целевой критерий оказывает влияние только тот частный критерий оптимизации, которому соответствует наименьшее значение функции . Таким образом, в данном случае решение принимается с учетом наиболее «слабого» критерия. При необходимости можно, как и в предыдущем случае, ввести весовые коэффициенты . Тогда критерий (3.66) примет вид , , . Другой подход к созданию минимаксных критериев заключается в выборе контрольных показателей по всем критериям , которые определяют их наименьшее допустимое значение . При этом в качестве скалярного критерия можно использовать величину наибольшего отклонения значения критерия от контрольного показателя, которую необходимо минимизировать: , , . Контрольные показатели определяются либо экспертно, либо путем решения однокритериальных задач: . В последнем случае набор чисел характеризует предельные, вообще говоря, недостижимые значения критериев. На практике подбор чисел может осуществляться ЛПР в интерактивном режиме при работе с программой, вычисляющей значения критериев . Метод Парето. Метод Парето позволяет находить компромиссы между требованиями к принимаемому решению, которые определяются частными критериями. Рассмотрим -мерное пространство , образованное критериями , . В этом пространстве каждому вектору соответствует вектор . Рассмотрев все векторы , получим область , которая представляет собой отображение множества допустимых решений в пространство , или область достижимости рассматриваемой много-критериальной задачи. Обозначим границу области достижимости Рассмотрим две точки . Если выполняются неравенства (3.67) для всех , причем хотя бы одно неравенство строгое, то будем говорить, что точка предпочтительнее точки . Если для некоторой точки не существует более предпочтительных точек, то точку называют эффективным, или Парето-оптимальным решением многокритериальной задачи (3.62). Множество, включающее все эффективные решения, обозначается и называется множеством Парето для векторного отображения . Образ множества в пространстве критериев обозначается . Это множество содержится в области достижимости рассматриваемой задачи, т.е. . Пример. Проиллюстрируем введенные понятия простым примером. Рассмотрим задачу оптимизации с двумя критериями: (3.68) при ограничениях (3.69) На рисунке 3.4 а показана область ограничений переменных D‑прямоугольник , а на рисунке 3.4 б – область достижимости задачи в пространстве критериев в виде четырехугольника . Можно непосредственными вычислениями убедиться, что все эффективные точки лежат на прямой , принадлежащей области . Таким образом, множество Парето представляет собой линию , а отображение этой линии в пространство критериев - линию . Итак, мы видим, что решение данной двухкритериальной задачи оптимизации представляет собой множество . Для выбора из этого компромиссного множества единственного решения необходимо привлечение дополнительной информации в виде одного из рассмотренных выше методов. Рассмотрим применение этих методов к данной задаче. а б Рис.3.4 Область ограничений переменных (а) и область достижимости задачи (б) в задаче (2.71), (2.72) Метод главного критерия. Предположим, что главным критерием оптимизации является , а критерий ограничен условием . Тогда мы получаем обычную однокритериальную задачу линейного программирования: при условиях (3.70) Решение данной задачи имеет вид:, ему на рисунке 3.4 а соответствует точка , при этом вектор критериев равен , ему на рисунке 3.4 б соответствует точка Мы видим, что , то есть полученное решение принадлежит множеству Парето. Метод линейной свертки критериев. Введем весовые коэффициенты для критерия и для критерия . Сведем задачу (2.71), (2.72) к однокритериальной: (3.71) при ограничениях (3.68). Из формулы (3.71) видно, что при коэффициент при отрицательный, следовательно, для максимизации критерия (3.71) необходимо выбрать наименьшую возможную величину , а при этот коэффициент положительный, и необходимо выбрать наибольшую возможную величину . Переменная в обоих случаях должна быть равной 2. В первом случае имеем: , , . Обратившись к рисункам 3.4 а и 3.4 б, мы видим, что при решение данной задачи соответствует точкам и . При получается следующее решение , , что соответствует точкам и на рисунках. Отметим, что в обоих случаях решение находится в области Парето. Использование минимаксного критерия. Обратимся к формуле (3.66). В рассматриваемом случае она имеет вид: . Анализ области достижимости показывает, что в пределах этой области выполняется условие , то есть минимальное значение имеет критерий , и его в соответствии с (3.66) необходимо максимизировать. Нетрудно видеть, что , что соответствует точке на рисунке 3.4 б, которая принадлежит множеству Парето. Подводя итоги третьей главы, мы видим, что существует множество методов, основанных на детерминированном подходе к формированию альтернатив решения и выбору среди них наилучшего. Однако, как отмечалось ранее, детерминированный подход не учитывает возможных неопределенностей в условиях принятия решений, их случайного характера. Поэтому в следующей главе будут рассмотрены методы, основанные на вероятностном подходе к принятию решения. Вопросы и задания для самостоятельного изучения 1. Предположим, Вы отправляетесь в поход и собираете рюкзак. Предельный вес рюкзака для юношей – 10 кг, для девушек – 5 кг. Составьте список возможных вещей и продуктов, их веса и цены, а затем решите задачу об упаковке рюкзака с помощью описанного выше алгоритма. 2. Вернемся к предыдущей задаче. Предположим, выбранные Вами вещи нужно нести в сумках весом не более 2 кг. Определите количество необходимых сумок и загрузку каждой из них. 3. Составьте на свой вкус суточное меню из 4–5 продуктов, исходя из следующих условий: суточная потребность в белках – 80 г, жиров – 100 г, углеводов – 360 г. Общая калорийность меню для юношей 2700 ккал, для девушек – 2300 ккал. Сформулируйте и решите задачу линейного программ-мирования для определения количества продуктов в двух вариантах: а) минимальная стоимость при балансе по белкам, жирам и углеводам и общей калорийности. б) минимальный вес продуктов при таком же балансе. в) сформулируйте двухкритериальную задачу на основе задач а) и б). и решите ее методом линейной свертки критериев по формуле (3.64), задавшись весом каждого из критериев. Калорийность продуктов найдите в Интернете, а их стоимость – в ближайшем магазине. Для решения задачи используйте программу симплекс‑метода, которую тоже можно найти в Интернете. 4. Определите оптимальный срок смены автомобиля по методике п. 3.6.1 при следующих условиях (время рассчитывается в месяцах): а) начальная цена автомобиля рублей, б) потеря стоимости определяется формулой , в) стоимость обслуживания возрастает по закону . Решите задачу при тыс. рублей, , . Проанализируйте влияние параметров и на оптимальный срок замены автомобиля. Как изменится срок замены, если функция будет зависеть от ? Глава 4 Вероятностные модели формирования и выбора альтернатив решений В настоящей главе мы рассмотрим вероятностные модели поддержки процессов принятия решений. Из всего множества методов, разработанных в этой области, мы остановимся на двух: теории цепей Маркова и теории формирования оптимального инвестиционного портфеля Г. Марковица. 4.1 Моделирование систем на основе формализма цепей Маркова Наиболее простой класс динамических вероятностных моделей дискретно-стохастического типа (P – схемы по классификации, рассмотренной в первой главе) образуют цепи Маркова, названные так по имени известного русского математика А.А. Маркова, разработавшего эту теорию в 1907 году. Большой вклад в теорию цепей Маркова внес академик А.Н. Колмогоров [8, 15,17, 27]. Этот математический аппарат оказывается удобным, в частности, при описании функционирования и анализа работы вычислительных систем [6]. Однако возможности теории цепей Маркова далеко выходят за рамки описания процессов оценки и принятия решений. Эта теория широко применяется в физике, биологии, социологии, экономике, технике и целом ряде других наук. Математический аппарат цепей Маркова позволяет оценивать многие характеристики информационных процессов, такие как вероятное время завершения определенных этапов работы, средняя производительность, среднее время безотказной работы и другие, что необходимо при принятии проектных решений. Здесь приводятся только начальные сведения об этих моделях. Более подробно теория и применение цепей Маркова рассматривается в специальной литературе [6, 15, 17].Ряд задач принятия решений, приводящих к марковским цепям, рассматривается в разделах 4.2 - 4.4. 4.1.1 Определение и динамика цепи Маркова Рассмотрим систему , находящуюся в каждый из дискретных моментов в одном из состояний [11]. Система рассматривается в моменты времени, образующие множество . В каждый момент времени система может находиться только в одном из состояний. Состояния изменяются со временем случайным образом. Это изменение определяется матрицей переходных вероятностей . (4.1) Каждый элемент матрицы определяет вероятность того, что если  в момент находилось в состоянии , то в момент она окажется в состоянии : . (4.2) Причем (и это основное свойство марковских процессов) вероятность перехода из в не зависит от предыдущих состояний. Понятно, что переходы во все возможные состояния (в том числе в себя) образуют полную группу событий, поэтому для всех , . Пусть вектор-строка - описывает распределение вероятностей нахождения  в соответствующих состояниях в момент , то есть - это вероятность того, что в момент  находится в состоянии . При этом , . Тогда по теореме об умножении вероятностей и с учетом основного свойства марковского процесса получим: , (4.3) где выступают в роли условных вероятностей перехода в состояние при условии, что система находится в состоянии . Нетрудно видеть, что правая часть написанной формулы определяет произведение вектора на матрицу и в векторной форме эквивалентна следующей записи динамического процесса: . (4.4) Последовательность состояний называется конечной цепью Маркова. Цепь называется однородной, если не зависит от времени. В этом случае рекуррентная формула (3.4) может быть записана в виде , , …· , (4.5) где - k-я степень матрицы P. Нетрудно убедиться, что сумма вероятностей нахождения системы во всех состояниях (т.е. сумма элементов вектора ) на каждом шаге остается равной единице. Последовательность векторов , определяет динамику моделируемого процесса. Отметим, что матрицы P, порождающие цепи Маркова, т.е. такие, у которых все элементы , а их суммы по столбцам равны единице для всех строк:, , называют стохастическими. Рассмотрим классификацию состояний цепи Маркова. Множество всех состояний может быть разбито на непересекающиеся подмножества, или классы: невозвратные и эргодические. Их свойства определяются следующим образом. Если процесс покинул класс состояний первого типа, он никогда в него не возвращается. Если процесс попал в класс состояний второго типа, то он никогда его не покидает. Невозвратное множество мы будем обозначать , а эргодическое - . При этом , . Если эргодическое множество содержит только одно состояние, то это состояние называется поглощающим. Для такого состояния элемент переходной матрицы должен быть равен 1, следовательно, все остальные элементы соответствующей строки равны 0. Цепь, все эргодические состояния которой являются поглощающими, называется поглощающей цепью. Для цепи Маркова с состояниями, в которой имеются как невозвратные, так и эргодические множества, структура матрицы вероятностей переходов (возможно, после перенумерации состояний) имеет канонический вид (4.6) где - количество состояний в невозвратном множестве; - количество состояний в эргодическом множестве. Матрица Q размерности определяет поведение процесса до выхода из множества невозвратных состояний. Матрица R размерности определяет вероятности перехода из множества невозвратных состояний в эргодическое множество. Матрица размерности определяет динамику эргодических состояний. Поскольку из множества невозможно выйти, то матрица размерности состоит из нулей. При возведении матрицы P в степень перемножаются блоки, указанные в (3.9), и произвольная степень канонической матрицы имеет вид . (4.7) 4.1.2 Оценка длительности пребывания процесса во множестве невозвратных состояний Рассмотрим поведение цепи Маркова при росте числа шагов k. Из анализа структуры матрицы (3.7) следует, что процесс, стартовав из некоторого состояния , принадлежащего невозвратному множеству , на каждом шаге с вероятностями, определенными матрицей , переходит в эргодическое множество . Через определенное число шагов процесс окажется в с вероятностью, как угодно близкой к единице. При моделировании реальных систем с помощью конечных цепей Маркова часто бывает необходимо оценивать показатели продолжительности работы системы или трудоемкости процессов. Для этой цели нужно уметь рассчитывать число шагов, в течение которых процесс не покидает множество («время жизни» процесса), а также «время жизни» отдельных состояний этого множества. Обозначим общее число моментов времени (тактов работы системы), проведенных процессом в состоянии при условии, что он стартовал из состояния (). Понятно, что - случайная величина, принимающая целочисленные значения с соответствующими вероятностями, которые мы будем обозначать . Таким образом, - вероятность того, что система за все «время жизни» процесса находилась в состоянии , при старте из , раз. При этом . Зная распределение вероятностей , можно вычислить все необходимые статистические характеристики процесса – математическое ожидание, дисперсию и другие. Однако вычисление таких распределений в общем случае – достаточно сложная задача, поэтому мы ограничимся в данном разделе рассмотрением двух более простых практически важных задач: - вычисление математического ожидания величин , т.е. и средних значений трудоемкости процесса; - вычисление дисперсий , т.е. и среднеквадратичных отклонений трудоемкости процесса. Переходя к вычислению матожидания величины , начнем с изучения свойств матрицы , входящей в структуру в формуле (4.7). Поскольку по определению все элементы матрицы Q и (в отличие от матрицы , для которой ), то при больших эта матрица стремится к нулевой, т.е. при . Здесь - нулевая квадратная матрица s-го порядка. Для дальнейшего нам понадобится формула, оценивающая матрицу матожиданий числа пребываний процесса во множестве невозвратных состояний N. Рассмотрим тождество Поскольку при , то . Матрица неособенная, т.к. , в чем легко убедиться. Следовательно, существует обратная матрица , которая играет большую роль при изучении марковских процессов с матрицей переходных вероятностей вида (4.6). Эту матрицу называют фундаментальной и обозначают . (4.8) Перейдем теперь к оценке среднего «время жизни» состояний процесса, относящихся к невозвратному множеству. Обозначим, как и прежде, через общее число моментов времени, проводимых процессом в состоянии при условии, что он начался из состояния . Эта функция определена только для невозвратного множества, т.е. , . Можно показать, что матрица математических ожиданий чисел равна N, т.е. , где . (4.9) Для того, чтобы в этом убедиться, введем вспомогательную переменную (индикатор) , которая принимает единичное значение, если процесс, стартовав при из , оказывается при в , т.е. Вероятность того, что , обозначим . Легко видеть, что . Оценим теперь матожидание матрицы, образованной элементами . По формуле матожидания случайной величины с дискретным распределением имеем: Здесь - элемент, . Таким образом, среднее число шагов, которое проводит процесс в невозвратном состоянии, , начавшись в , всегда конечно и определяется i-й строкой матрицы . Отсюда следует, что матрица математических ожиданий числа пребываний системы в невозвратных состояниях равна фундаментальной матрице цепи Маркова: , (4.10) где I – единичная матрица. Каждый элемент матрицы представляет собой среднее число пребываний процесса в состоянии Sj при старте из состояния . В том случае, когда старт происходит из состояния , достаточно рассматривать только первую строку матрицы . Зная , можно вычислить среднюю трудоемкость процесса по формуле , (4.11) где - трудоемкость j– го шага процесса в соответствующих единицах. В ряде случаев исследователя может интересовать оценка дисперсии трудоемкости процесса. Для этой цели вычисляется матрица дисперсий числа пребываний процесса в множестве невозвратных состояний по формуле, которую мы приводим без вывода: , (4.12) где индексы и обозначают соответственно выделение диагональных элементов матрицы и возведение в квадрат каждого элемента этой матрицы. 4.1.3 Оценка поведения цепей Маркова при большом числе шагов В этом параграфе рассмотрен класс задач, связанных с оценкой предельных вероятностей пребывания системы в состояниях эргодического множества. Как было выяснено выше, динамика смены состояний однородной цепи Маркова определяется поведением матрицы при . Однако непосредственное применение формулы (4.2) для определения переходных характеристик этого процесса, в частности, скорости сходимости к предельным вероятностям пребывания в различных состояниях при , не всегда удобно. Для оценки скорости сходимости можно привести матрицу к диагональному виду с помощью линейного преобразования. Предположим, что матрица имеет различных собственных чисел . Тогда ее можно привести к виду , (4.13) где - диагональная матрица , а матрица составлена из собственных векторов матрицы так, что i-й столбец матрицы является собственным вектором матрицы при собственном числе . Напомним, что i-е собственное число матрицы , есть i-й корень алгебраического уравнения , (4.14) а собственный вектор , соответствующий собственному числу есть решение линейного уравнения . (4.15) Преобразование (4.13) удобно тем, что при возведении в степень матрицы фактически возводится в степень только диагональная матрица : , (4.16) причем . (4.17) Таким образом, динамику изменения матрицы легко оценить по поведению , . Мы уже упоминали, что матрица , определяющая однородную цепь Маркова, является стохастической матрицей [8]. Особенностью этой матрицы является то, что ее максимальное собственное число равно 1, и ему соответствует собственный вектор, составленный из единиц: . Возможен еще один способ нахождения предельных вероятностей. Исходя из того, что при , уравнение (3.4) можно записать в виде , добавив условие , а затем решить полученную систему уравнений. Пример. В качестве примера исследования поведения цепи Маркова при большом числе шагов рассмотрим систему с двумя состояниями , описываемую матрицей , с начальным распределением вероятностей . Требуется найти предельное распределение вероятностей нахождения в состояниях , при большом числе шагов . Задачу решим тремя разными способами. 1. Путем численного возведения матрицы в высокую степень. Из формулы (4.5) следует, что , , однако на практике достаточно взять достаточно большое , например, . Проделав вычисления, получим . 2. Путем спектрального разложения матрицы Найдем собственные числа матрицы по формуле (4.14): , Откуда , , . Определим собственные векторы , . По формуле (4.15) для , . Полученное уравнение недоопределено, поэтому, приняв , получим . Аналогично для имеем уравнение и, приняв , получим . Следовательно, матрица , а обратная к ней матрица . Таким образом, спектральное представление матрицы Pимеет вид . Теперь можно вычислить предельное распределение вероятностей: что совпадает с результатами предыдущих вычислений. 3. Исходя из того, что при , уравнение (4.4) можно записать в виде , добавив условие . Получаем систему уравнений: Решая эту систему с двумя неизвестными, в которой одно из уравнений (первое или второе) лишнее, получим уже знакомый ответ . В следующих параграфах рассмотрены два содержательных примера описания процессов принятия решений в рамках формализма цепей Маркова. 4.2 Модель процесса обучения как цепь Маркова На рисунке 4.1 представлена цепь Маркова, моделирующая процесс прохождения обучаемым фрагмента некоторого учебного курса и содержащая десять узлов, соответствующих различным шагам процесса обучения. В модели на этом рисунке выделены следующие состояния: S1 – изучение первого раздела (модуля) теоретического материала; S2, S3 – ответы на вопросы по первому разделу; S4 – изучение материала второго раздела (по этому разделу не предусмотрен контроль); S5 - изучение теоретического материала третьего раздела; S6 – S9 - ответы на вопросы по третьему разделу; S10 – завершение изучения третьего раздела. Из рисунка видно, что состояния S1 – S9 относятся к множеству невозвратных состояний, S10 - поглощающее состояние. Заданы оценки трудоемкостей прохождения каждого узла: час, часа, часа, час, часа, часа. Рис. 4.1 Цепь Маркова, моделирующая процесс прохождения фрагмента учебного курса Матрица вероятностей переходов имеет вид: . (4.18) Начальное распределение вероятностей означает, что процесс обучения всегда стартует из первого состояния. Средние значения числа пребываний процесса в множестве невозвратных состояний, вычисленные по формуле (4.10), задаются следующей матрицей: . Средняя трудоемкость процесса: Вычислив матрицу дисперсий D по формуле (4.12) и взяв значения элементов первой строки, соответствующей стартовому состоянию процесса, получим среднеквадратичное отклонение трудоемкости процесса от средней Рис. 4.2 Вероятности пребывания процесса в различных состояниях На рисунке 4.2 приведен график распределения вероятностей прохождения отдельных этапов курса, рассчитанный по формуле (4.2) . Из него, в частности видны вероятности завершения процесса за заданное число шагов (переход в состояние S10). Из рисунка 4.3 видно, что минимальное число шагов, необходимое для завершения фрагмента курса, равно 5. Вероятность такого исхода, согласно рисунку, равна 0,337, а достаточно надежное завершение курса наступает на 9 – 13 шагах. 4.3 Система обслуживания заявок с очередью и отказами В данном разделе мы рассмотрим модель системы, обслуживающей поступающие извне заявки. Анализ и принятие решений о параметрах таких систем представляют собой актуальные задачи системного анализа, которые возникают во многих прикладных областях, например, при обслуживании потока задач в вычислительных системах, управлении взлетом и посадкой самолетов, обработке поступающего сырья на производстве и других. Пусть имеется обслуживающее устройство на вход которого поступают заявки, выстраивающиеся в очередь, которая вмещает заявок (рисунок 4.3).Число одновременно поступивших заявок не превышает . Система работает в дискретном времени следующим образом. В начале каждого такта устройство извлекает из очереди и начинает обслуживать только одну заявку (если очередь не пуста), а затем поступают новые заявки. Количество поступающих на вход очереди заявок представляет собой случайную величину со следующим распределением: Рис. 4.3 Схема обслуживающего устройства с очередью Величины считаются заданными и представляют вероятность того, что на вход очереди поступит заявок. Состояние системы определяется как число заявок , ждущих обслуживания к началу -го такта. Всего число возможных состояний системы равно , учитывая, что очередь может быть пуста. При этом, если , то , причем номер состояния на следующем такте определяется выражением: Обратим внимание на то, что число заявок в системе не может превысить , и «лишние» заявки получают отказ. Составим модель системы в виде цепи Маркова. Для наглядности ограничимся следующими параметрами: , ; распределение вероятностей поступления заявок: , , , . Будем также считать, что в начальный момент времени очередь пуста. Граф соответствующей цепи Маркова показан на рисунке 4.4. Составим матрицу переходных вероятностей для данной модели: . Рис. 4.4 Модель системы обслуживания заявок с очередью и отказами в виде цепи Маркова. Динамику системы определяет вектор вероятностей нахождения в различных состояниях , , который в начальный момент имеет вид . определим предельные вероятности пребывания системы в каждом из состояний при заданных выше вероятностях. Для этого, в соответствии с разделом 4.1.3, вычислим с помощью системы Mathcad высокую степень матрицы P: , а затем вектор предельного распределения вероятностей . Теперь можно определить среднюю длину очереди в рассмотренной системе. По правилам вычисления математического ожидания для дискретного распределения имеем: . Таким образом, мы выяснили, что в данной системе средняя длина очереди составляет около 3,5 заявок. Зная среднее время выполнения одной заявки , можно определить среднее время выполнения поступившей в систему заявки: . В данном выражении учитывается как время ожидание в очереди, так и время непосредственного выполнения заявки. 4.4 Модель динамики информационных ресурсов Современным специалистам по информационным технологиям приходится иметь дело с хранением и обработкой больших объемов разнообразных информационных ресурсов (ИР) и принимать решения по управлению ими в процессе проектирования и эксплуатации информационных систем. Информационные ресурсы различаются своим назначением и форматами. Принятая в настоящее время классификация ИР основана на так называемой модели Дублинского ядра метаданных [14, 41]. Всего в рамках этой системы выделено девять типов ресурсов. Ниже приводится перечень типов с пояснениями, принятыми разработчиками. • Коллекция. Множество, содержащее элементы. Ресурс описывается как группа, части ресурса могут быть описаны отдельно, к ним осуществлен отдельный доступ. • Данные. Информация представлена в определенной структуре (например, списки, таблицы, базы данных), обеспечивающей возможность прямой машинной обработки. • Событие. Непродолжительное, ограниченное во времени явление. Метаданные для события могут определять цель, место, длительность, субъектов события и связи с другими событиями и ресурсами. Примером являются выставки, конференции, семинары, презентации, представления, дискуссия и др. • Изображение. Ресурс, первично предназначенный служить для визуаль-ного представления, отличного от текста. К данному типу относятся изображения и фотографии физических объектов, рисунки, чертежи, мультипликация, фильмы, диаграммы, карты, музыкальная нотация. • Интерактивный объект. Объект данного типа требует взаимодействия с пользователем для того, чтобы быть понятым, исполненным или реализованным. Примеры: интерактивные формы на веб-страницах, апплеты, обучающие средства, чаты, виртуальная реальность. • Сервис. Система, которая выполняет одну или более функцию для конечного пользователя. Примеры: службы фотокопирования, банковс-кий сервис, служба аутентификации, межбиблиотечный абонемент, веб-сервер. • Программные средства. Компьютерная программа в исходном или компилированном коде, которая пригодна в неизменном виде для инсталляции на другой машине. • Аудио. Ресурс, первоначально предназначенный служить для звукового представления. Например, аудиокомпакт-диск, запись речи или звуков. • Текст. Ресурс, первоначально представляющий собой слова для чтения (книги, письма, газеты, стихи, статьи, диссертации, рукописи и др.). Ценность информации, содержащейся в конкретном информационном ресурсе, может быть различной, кроме того, она изменяется во времени. Как все на свете, информационный ресурс рождается, живет и умирает. Поэтому можно говорить о жизненном цикле информационного ресурса. Если исходить из классификации бизнес-процессов, рассмотренных в работе [45], информационный ресурс в период своего существования проходит следующие этапы жизненного цикла: • сбор информации, создание ИР, • хранение, • обработка (упорядочение, поиск, изменение и обновление), • архивирование, • уничтожение. В течение жизненного цикла меняется актуальность информации, содержащейся в информационном ресурсе. С этой точки зрения информация может классифицироваться как критическая, важная и маловажная [14]. Как правило, актуальность информации уменьшается с течением времени, следовательно, указанные классы актуальности наступают последовательно. Исходя из сказанного, модель жизненного цикла информационного ресурса (ИР) может быть упрощенно представлена в виде цепи Маркова, графическая схема которой показана на рисунке 4.5. Рис. 4.5. Модель жизненного цикла информационного ресурса Здесь выделено 8 состояний, смысл которых приведен ниже; - создание ИР, - хранение ИР критической важности, - обработка ИР критической важности, - хранение ИР с важной информацией, - обработка ИР с важной информацией, - архивирование и хранение ИР с маловажной информацией, - обработка ИР с маловажной информацией, - удаление ИР. Переход из одного состояние в другое за один временной шаг является случайным событием, вероятность которого определяется этапами жизненного цикла ИР, их «временем жизни» и другими факторами. В целом, модель определится следующей матрицей переходных вероятностей размерности 8 8. . (4.19) Вероятности перехода, как мы видели в предыдущих разделах, определяют также среднюю продолжительность пребывания информационного ресурса в каждом из выделенных состояний. Рассмотрим методику оценки динамики информационного ресурса, основанную на приведенной выше модели жизненного цикла информационного ресурса. Для снижения размерности задачи объединим этапы хранения и обработки в один этап: и , и , и . Упрощенная модель жизненного цикла в виде цепи Маркова с дискретным временем, содержащей пять состояний, показана на рисунке 4.6. Здесь: - создание ИР, - хранение и обработка ИР критической важности, - хранение и обработка ИР с важной информацией, - архивирование и хранение ИР с маловажной информацией, - удаление ИР. Пусть имеется множество информационных ресурсов R = {}, где по приведенной выше классификации ‑ вид ИР, ‑ степень актуальности ресурса. Каждый ресурс поступает в информационную систему и проходит в ней весь жизненный цикл. Рис. 4.6 Упрощенная модель жизненного цикла информационного ресурса Вероятности перехода между состояниями ресурса ‑го вида задаются матрицей . (4.20) Ресурс характеризуется следующими параметрами: • время поступления ИР в информационную систему (например, дни, месяцы), где - время исследования системы; • объем поступившего ресурса - го вида в момент , Мбайт; • объем ресурса , Мбайт, в момент . Величины образуют вектор , при этом , ; • вероятность нахождения ресурса в степени актуальности в момент . Вероятности образуют вектор , при этом , начальное распределение вероятностей . Ресурс, поступивший на вход системы (в состояние ), в дальнейшем перераспределяется между состояниями пропорционально вероятностям пребывания системы в данном состоянии. Исходя из сказанного, мы получим следующие расчетные формулы. Динамика изменения состояния ИР определится уравнениями: (4.21) (4.22) Общий объем ресурсов го вида, находящихся в системе, определится вектором , (4.23) где время жизни ресурса го вида. Общий объем ресурсов й степени актуальности определится суммой (4.24) . Расчетный объем ИР ой степени актуальности для определения необходимых параметров запоминающего устройства равен максималь-ному значению величины на всем исследуемом интервале времени: . (4.25) Расчеты по формулам (3.21) – (3.25) для матрицы (3.20) и исходных данных по объемам поступающих ресурсов удобно производить с помощью специальной программы [14]. Пример. Рассмотрим систему, содержащую информационный ресурс, динамика которого задается матрицей . Предположим, что на вход системы в каждый момент времени поступает ресурс в объеме Мбайт. Расчет, проведенный по формулам (4.21) – (4.24), позволяет оценить динамику накопления ИР в системе. Результаты расчета приведены на рисунке 4.7. а б Рис.4.7 Графики жизненного цикла информационного ресурса за 100 шагов, динамика которого задана матрицей : а) – вероятности нахождения единичного ИР в разных степенях актуальности; б) – динамика накопления ИР 4.5 Принятие решений об оптимизации инвестиционного портфеля В данном параграфе мы рассмотрим классическую задачу об оптимизации инвестиционного портфеля. Рассмотренная ниже модель носит название теории оптимизации инвестиционного портфеля Гарри Марковица, который предложил ее в 1952 году [43]. Эта теория получила широкое распространение и развитие и впоследствии была удостоена Нобелевской премии по экономике. Г. Марковиц предположил, что величины доходности ценных бумаг (облигаций) являются случайными величинами, распределенными по нормальному (гауссовскому) закону. Поэтому инвестор, формируя свой портфель, оценивает только два показателя – ожидаемую доходность и стандартное отклонение как меру риска (только эти два показателя определяют плотность распределения случайной величины при нормальном законе). Кроме того, он исходил из предположения о том, что инвестирование рассматривается как одноразовый процесс, т.е. полученный в результате инвестирования доход не реинвестируется. Рассмотрим математическую модель процесса оптимизации инвестиционного портфеля в простейшей постановке. На рынке имеется некоторое количество ценных бумаг , , каждая их которых характеризуется средним уровнем доходности , лежа-щим в пределах от  до , или в относительных единицах от +1 до –1. Каждая ценная бумага характеризуется также определенным уровнем риска, который является случайной величиной, подчиняющейся нормальному закону распределения с математическим ожиданием и стандартным отклонением от среднего . Кроме того, риски по бумагам могут быть статистически связаны, т.е. между ними может существовать зависимость, определяемая коэффициентами корреляции , которые могут находиться в диапазоне , . Требуется составить инвестиционный портфель , включающий эти ценные бумаги, в котором доля бумаги составляет , причем . (4.26) При этом ожидаемая суммарная доходность портфеля составит , (4.27) а суммарный риск портфеля определится выражением для дисперсии статистически связанных случайных величин: . (4.28) Предположим, что нам известны все величины , , , . Инвестор при принятии решения может рассматривать следующие альтернативы. 1. При выбранных весах (, ) оценить суммарную доходность и степень риска . 2. Определить веса ценных бумаг , , которые обеспечат наименьший суммарный риск, т.е. минимум функции , и вычислить соответствующую доходность. 3. Определить оптимальный по стоимости портфель при заданном уровне риска . Рассмотрим решение этих задач. В первом случае задача сводится к простым вычислениям по формулам (4.27) и (4.28). Во втором случае мы имеем задачу оптимизации: (4.29) при условиях: , ,. (4.30) В третьем случае также необходимо решить задачу оптимизации (4.31) при условиях , (4.32) , , . Портфель, полученный при решении второй и третьей задачи, называют эффективным портфелем. Для решения сформулированных и более сложных задач оптимизации инвестиционного портфеля разработаны специальные алгоритмы и программы. Мы рассмотрим особенности задачи выбора портфеля на простом частном случае, когда портфель содержит всего две бумаги, т.е. когда . В этом случае формулы (4.26),(4.27) и (4.28) примут соответственно следующий вид: (4.33) Учитывая, что и , , а также приведя подобные члены в последнем выражении, получим . Поскольку , то выражение для фактически зависит от одной переменной – . После некоторых преобразований получим . (4.34) Мы видим, что дисперсия является квадратичной функцией , а следовательно, и стоимости портфеля , которая линейно зависит от . Графически эта зависимость (ее называют границей эффективности) показана на рисунке 4.8. По смыслу граница эффективности соответствует множеству Парето при решении многокритериальных задач оптимизации, которые мы рассмотрели в разделе 3.5. В нашей задаче тоже два критерия – ожидаемая доходность и уровень риска. Используя выражение (4.34), можно найти соотношение ценных бумаг, которое обеспечит минимум риска. Для этого нужно взять производную от по и приравнять ее к нулю. Получим: , откуда оптимальное соотношение ценных бумаг определится формулами , . (4.35) Подставив полученные значения весов и в формулы (4.33), получим параметры портфеля, обеспечивающие минимальный риск и соответствующий доход . При для решения подобной задачи необходимо вычислить и приравнять к нулю частные производные по всем весам , . В результате получится линейных уравнений относительно , к которым добавится еще условие (4.26). Решив эту систему, получим все веса , а затем вычислим остальные параметры портфеля по приведенным выше формулам. Пример. Проиллюстрируем полученные результаты численным примером. Пусть имеется два вида ценных бумаг со следующими характеристиками: , , , , . По формулам (4.33) и (4.35) получаем: , , , . График зависимости приведен на рисунке 3.8, его шутливо называют «пуля Марковица». На рисунке жирной линией выделена граница эффективности портфеля, которая располагается в диапазоне от (что соответствует , ) до (что соответствует , ). Мы видим, что в данном примере оптимальным с точки зрения риска является портфель, где преобладают ценные бумаги первого вида, хоть при этом ожидаемая доходность невелика. В том случае, когда нужно решить третью из отмеченных задач, необходимо провести вертикальную линию из точки на оси абсцисс, соответствующей заданной дисперсии, и найти наиболее высокую точку на границе эффективности. Соответствующий пример также показан на рисунке. Рис. 4.8 Зависимость дохода от степени риска для эффективного портфеля 4.6 Имитационное моделирование при принятии решений В дополнение к рассмотренному ранее материалу мы обратимся еще к одному методу, который позволяет не только составлять математические модели процессов, но и проводить с ними вычислительные эксперименты. Системы, осуществляющие такие функции, называются имитационными. В настоящее время разработано и используется множество систем, реализующих методы имитационного моделирования. Одной из современных систем подобного типа является система AnyLogic, которая была разработана в 1999 году фирмой «XJ Technologies», г. Санкт-Петербург (http://www.xjtek.ru/company/) и завоевала большую популяр-ность. К сегодняшнему дню существует уже 6 версий этой программы. В настоящем разделе приведены краткие сведения обAnyLogic 5-й версии [5] и пример моделирования с помощью этой системы процесса прохождения студентами учебного курса. В системе AnyLogic предусмотрены две фазы имитационного моделирования – разработка модели и ее анализ, которые явно разделены. Разработка модели выполняется в среде редактора AnyLogic, анализ модели происходит в среде исполнения. В каждой фазе существуют свои средства управления. Можно многократно использовать переход между фазами редактирования и исполнения модели при разработке модели. Рассмотрим особенности данной системы. 4.6.1 Система AnyLogic: активные объекты, классы и экземпляры активных объектов Система AnyLogic использует объектно-ориентированную методологию, программирования, в которой класс является мощным средством, позволяющим структурировать сложную систему. Класс определяет шаблон, в соответствии с которым строятся отдельные экземпляры класса. Эти экземпляры могут быть определены как объекты других активных объектов. В AnyLogic основным структурным блоком при создании моделей являются классы активных объектов. Использование активных объектов является естественным средством структуризации модели сложных систем: мир состоит из множества параллельно функционирующих и взаимодействующих между собой сущностей. Различные типы этих сущностей и представляют разные активные объекты. Чтобы создать модель AnyLogic, нужно создать классы активных объектов (или использовать объекты библиотек AnyLogic). Определение активного объекта задает шаблон. Отдельные объекты, построенные в соответствии с этим шаблоном (экземпляры активного объекта), могут использоваться затем как элементы других активных объектов. Всегда один класс в модели является корневым. Для него в модели AnyLogic порождается один экземпляр с предопределенным именем root, он и запускается исполнительной системой AnyLogic на выполнение. Имя класса корневого активного объекта можно менять в окне его свойств. Каждый активный объект имеет структуру (совокупность включенных в него активных объектов и их связи), а также поведение, определяемое совокупностью переменных, параметров, стейтчартов (карт состояния) и т.п. Каждый экземпляр активного объекта в работающей модели имеет свое собственное поведение, он может иметь свои значения параметров, функционирует независимо от других объектов, взаимодействуя с ними и с внешней средой. 4.6.2 Объектно-ориентированный подход AnyLogic использует объектно-ориентированный подход к представлению сложных систем. Этот подход позволяет простым и естественным образом организовать и представить структуру сложной системы с помощью иерархии абстракций. Иерархия структуры может быть произвольной глубины. При построении моделей чаще всего не используется никаких других средств, кроме средств визуальной разработки (введения состояний и переходов карты состояний (стейтчарт – StateChart), введения пиктограмм переменных и т.п.), задания численных значений параметров, аналитических записей соотношений переменных и аналитических записей условий наступления событий. Основной парадигмой, принятой в AnyLogic при разработке моделей, является визуальное проектирование – построение с помощью графических объектов и пиктограмм иерархий структуры и поведения активных объектов. Встроенный язык Java.AnyLogic является надстройкой над языком Java – одним из самых мощных и в то же время простых современных объектно-ориентированных языков. Все объекты, определенные пользователем при разработке модели на AnyLogic с помощью его графического редактора, компилируются в конструкции языка Java, а затем происходит компиляция всей собранной программы на Java, задающей модель, в исполняемый код. В действительности пользователь никогда не разрабатывает полные программы, он не программирует, а лишь вставляет фрагменты кода в специально предусмотренные для этого поля окна Код и окон свойств объектов модели. Эти фрагменты выражают логику конкретных шагов или действий в модели. Выражения должно быть синтаксически правильной конструкцией Java, потому разработчик моделей AnyLogic должен иметь некоторое представление об этом языке. 4.6.3 Средства описания поведения объектов Основным средством спецификации поведения объектов в AnyLogic являются переменные, таймеры и стейтчарты. Переменные отражают изменяющиеся характеристики объекта. Таймеры можно взводить на определенный интервал времени и по окончании этого интервала выполнять заданное действие. Стейтчарты (карты состояния) позволяют визуально представить поведение объекта во времени под воздействием событий или условий, они состоят из графического изображения состояний и переходов между ними. Любая сложная логика поведения объектов модели в AnyLogic может быть выражена с помощью комбинации стейтчартов, дифференциальных и алгебраических уравнений, переменных, таймеров и программного кода на Java. Алгебраические и дифференциальные уравнения, как и логические выражения, записываются в AnyLogic аналитически. Интерпретация любого числа параллельно протекающих процессов в модели AnyLogic скрыта от пользователя. Никаких календарей событий разработчик модели на AnyLogic не ведет, отслеживание событий во всех процессах, определенных в модели, выполняется системой автоматически. Модельное и реальное время. Понятие модельного времени является базовым в системах имитационного моделирования. Модельное время– это условное логическое время, в единицах которого определено поведение всех объектов модели. В моделях AnyLogic модельное время может изменяться либо непрерывно, если поведение объектов описывается дифференциальными уравнениями, либо дискретно, переключаясь от момента наступления одного события к моменту наступления следующего события, если в модели присутствуют только дискретные события. Моменты наступления всех планируемых событий в дискретной модели исполнительная система хранит в так называемом календаре событий, выбирая оттуда наиболее раннее событие для выполнения связанных с ним действий. Значение текущего времени в моделях AnyLogic может быть получено обращением к функции getTime. Единицу модельного времени разработчик модели может интерпретировать как любой отрезок времени: секунду, минуту, час или год. Важно только, чтобы все процессы, зависящие от времени, были выражены в одних и тех же единицах. При моделировании физических процессов все параметры и уравнения должны быть выражены в одной и той же системе физических величин. Интерпретация модели выполняется на компьютере. Физическое время, затрачиваемое процессором на имитацию действий, которые должны выполняться в модели в течение одной единицы модельного времени, зависит от многих факторов. Поэтому единица физического и единица модельного времени не совпадают. В AnyLogic приняты два режима выполнения моделей: режим виртуального времени и режим реального времени. В режиме виртуального времени процессор работает с максимальной скоростью без привязки к физическому времени. Этот режим используется для факторного анализа модели, набора статистики, оптимизации параметров модели и т.п. Поскольку анимация и другие окна наблюдения за поведением модели обычно существенно замедляют скорость интерпретации модели на компьютере, для повышения скорости выполнения модели эти окна нужно закрыть. В режиме реального времени пользователь задает связь модельного времени с физическим временем, то есть устанавливается ограничение на скорость процессора при интерпретации модели. В этом режиме задается количество единиц модельного времени, которые должны интерпретироваться процессором в одну секунду. Обычно данный режим включается для того, чтобы визуально представить функционирование системы в реальном темпе наступления событий, проникнуть в суть процессов, происходящих в модели. Соотношение физического и модельного времени при работе модели в режиме реального времени можно понять на таком примере. При коэффициенте ускорения 4, если процессор успевает выполнить менее чем за 1 с все операции, которые в модели определены в течение четырех единиц модельного времени, он будет ждать до конца секунды. Если же процессор не успевает сделать это, то у него не будет интервала ожидания, и коэффициент ускорения будет меньше того, который установлен пользователем. 4.6.4 Анимация поведения и интерактивный анализ модели Удобные средства разработки анимационного представления модели в AnyLogic позволяют представить функционирование моделируемой системы в живой форме динамической анимации, что позволяет «увидеть» поведение сложной системы. Средства анимации позволяют пользователю легко создать виртуальный мир (совокупность графических образов, ожившую мнемосхему и т.п.), управляемый динамическими параметрами модели по законам, определенным пользователем с помощью уравнений и логики моделируемых объектов. Визуальное представление поведения системы помогает пользователю проникнуть в суть процессов, происходящих в системе. Многие системы моделирования позволяют менять параметры модели только до запуска модели на выполнение. AnyLogic позволяет пользователю вмешиваться в работу модели, изменяя параметры модели в процессе ее функционирования. Поэтому окно анимации можно назвать «стендом» для проведения компьютерного эксперимента с моделью. Итак, мы видим, что система моделирования AnyLogic обеспечивает поддержку всех этапов имитационного моделирования для различных типов динамических моделей, рассмотренных нами в первой главе (п.1.6),– дискретных, непрерывных и гибридных, детерминированных и стохастических в любых их комбинациях в рамках одного инструмента. Создание модели, ее выполнение, оптимизация параметров, анализ полученных результатов, верификация модели – все эти этапы удобно выполнять в среде AnyLogic. Данный инструмент обладает большим спектром разнообразных возможностей проведения как отдельных прямых экспериментов типа «если-то», так и серий подобных экспериментов для решения всевозможных обратных задач, направленных на поиск параметров модели, оптимизирующих ее функционирование. Удобный интерфейс и различные средства поддержки разработки в AnyLogic делают не только использование, но и создание компьютерных имитационных моделей в этой среде моделирования доступными даже для тех, кто в области вычислительной техники и программирования не является профессионалом. 4.6.5 Примеры имитационного моделирования Проиллюстрируем возможности имитационного моделирования с помощью системы AnyLogic на двух примерах. Пример 1. Рассмотрим задачу моделирования учебного процесса, рассмотренную ранее в п. 4.2. Структурная модель системы в нотации системы Anylogic приведена на рисунке 4.9 и соответствует цепи Маркова на рисунке 4.1. Численные значения вероятностей переходов между состоя-ниями и трудоемкостей отдельных процессов соответствуют принятым в п.4.2. При имитационном моделировании был организован поток из 1000 обучаемых и получены показатели, приведенные в таблице 4.1. . Рис. 4.9 Карта состояний (StateShart) моделируемой системы в нотации Anylogic Таблица 4.1 Результаты имитационного моделирования S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 Среднее число посещений каждого состояния 1,528 0,763 0,756 1,109 1,528 0,762 0,756 1,109 0,756 1,109 Среднее время пребывания в каждом состоянии, минут 91,68 9,144 9,072 66,54 67,68 4,092 4,884 4,332 4,332 Средняя трудоемкость процесса обучения составила 267,15 минут, или 4 ч 27 мин. Мы видим, что эти результаты хорошо согласуются с результатами аналитического моделирования на основе цепей Маркова в разделе 4.2. Пример 2 также связан с учебным процессом. На рисунке 4.10 приведена экранная форма имитационной модели процесса прохождения учебного курса группой обучаемых, состоящей из 20 человек. Процесс обучения происходит следующим образом. Обучаемый поступает в систему и приступает к изучению курса, содержащего 8 модулей. После изучения каждого модуля он проходит тестирование, которое включает три тестовых задания. При неверном ответе процедура тестирования повторяется (без ограничения числа попыток). При завершении процедуры изучения и тестирования по материалу текущего модуля начинается изучение следующего модуля. После завершения изучения всех модулей обучаемый покидает систему. В модели задаются вероятности успеха при тестировании, а также временные задержки на всех этапах обучения – индивидуально для каждого обучаемого. Ведется подсчет числа попыток при прохождении тестирования, а также общее время освоения курса каждым учащимся. Процесс моделирования начинается одновременно для всех обучаемых и продолжается до тех пор, пока последний из них не завершит процесс обучения и тестирования. Приведем численный пример. Исходные данные: количество обучаемых – 20, количество одновременно изучающих модуль – 10, количество одновременно проходящих тест – 1, вероятность правильного написания теста – 0,7, закон распределения времени изучения модуля и написания теста – треугольный. Результаты моделирования: среднее время изучения модуля: 4,16 часа, среднее время написания теста: 1,61 часа. В заключение отметим, что приведенные примеры иллюстрируют лишь малую долю моделирующих возможностей системы AnyLogic. Рис. 4.10 Схема имитационной модели прохождения интерактивного курса, построенной с помощью системы Anylogic: 1 - Карта состояний (StateChart)системы, 2 – анимационная схема смены состояний обучаемых, 3 – временные диаграммы процессов (фрагмент) Задания для самостоятельной работы 1. По информационному каналу с помехами осуществляется передача блоков данных в дуплексном режиме от источника И к приемнику П. Это означает, что, получив очередной блок от И, П посылает «квитанцию» И для проверки. Если И подтверждает правильность передачи, то данный блок считается переданным, в противном случае передача повторяется. Число попыток не ограничено. Рассматривая канал как цепь Маркова, где  ‑ вероятность правильной передачи ИП, а – то же для передачи ПИ. Оценить: а) математическое ожидание и дисперсию числа попыток передачи одного блока от И к П; б) математическое ожидание и среднеквадратичное отклонение времени передачи массива из 100 блоков при =0.95, =0.99, время передачи блока от И к П - 0.1 с, время передачи «квитанции» от П к И - 0,05 с; в) математическое ожидание и среднеквадратичное отклонение числа повторных передач блоков при N=1000, =0,99, =0,995; г) вероятности и , если известно, что при передаче 1000 блоков было зафиксировано 3 «переспроса». Принять =5. 2. Триггер с тремя входами - , , и двумя выходами и (рисунок 3.11) может находиться в двух состояниях: и . Рис.4.11 Схема триггера Переход из одного состояния в другое зависит от входного сигнала в момент и определяется следующей схемой: при (сброс на 0) при (установка 1) при (счетный вход) Предположим теперь, что вероятности правильного перехода при входных сигналах , , равны соответственно , , , а , , - вероятности ложного срабатывания. Рассматривая последовательность смены состояний , , (выходное слово) - при последовательности входных сигналов , ... (входном слове), оценить: а) вероятность нахождения триггера в каждом из состояний при входном слове , если ; б) то же при входном слове и ; в) оценить уровень надежности триггера для того, чтобы при 106 срабатываниях по сигналу вероятность ошибки была бы не больше 10-5. 3. Выведите формулы и решите задачу выбора эффективного портфеля по методике п. 3.5 при наличии трех ценных бумаг со следующими параметрами: 4. Составьте имитационную модель в системе AnyLogic для моделирования системы обслуживания заявок с очередью и отказами, рассмотренной в п. 4.3.Проведите исследование процесса с помощью модели и сравните с расчетом на основе цепи Маркова. 5. Составьте имитационную модель в системе AnyLogic для моделирования жизненного цикла информационных ресурсов, рассмотренную в п. 4.4. Проведите исследование процесса с помощью модели. Глава 5 Сетевые модели поддержки принятия решений Сетевые модели систем (N-схемы), о которых упоминалось в п. 1.6, широко применяются в системах поддержки принятия решений. Среди моделей этого класса выделился подход, основанный на использовании сетей специального вида, предложенный Карлом Петри в 1962 году для моделирования асинхронных информационных потоков в системах обработки данных. Эта методология, получившая название сетей Петри, была развита в последующие годы многочисленными исследователями и получила широкое распространение. Большой вклад в развитие теории сетей петри внесли отечественные ученые, в частности, математики из Новосибирского научного центра во главе с В.Е. Котовым [18]. В последние годы получила распространение теория так называемых сетей петри высокого уровня, которая изложена, например, в трехтомной работе Курта Йенсена [42]. Эта разновидность сетей Петри позволяет моделировать весьма сложные дискретные динамические системы, а их описание представлено с помощью специализированного алгоритмического языка. Математический аппарат сетей Петри обладает мощными моделирующими возможностями, и его изучение стало обязательным элементом инженерного образования по информатике и вычислительной технике. В первом параграфе главы изложены первоначальные сведения, связанные с определением, функционированием и некоторыми свойствами обыкновенных сетей Петри, которые мы будем сокращенно обозначать либо СП, либо PN (PetriNets). Там же рассмотрены некоторые расширения таких сетей, в частности сети с ингибиторными связями ИСП (IPN). Второй параграф содержит описание так называемых раскрашенных сетей Петри в нотации К. Йенсена, обозначаемых как РСП, либо CPN (Coloured Petri Nets), а также некоторых их расширений. Третий параграф посвящен моделированию с помощью сетей Петри элементов вычислительных систем и программ. Здесь собраны примеры применения сетей Петри для моделирования. Кроме сетей Петри в данной главе рассмотрен еще один вид сетевых моделей, носящих название GERT-сетей, которые позволяют рассчитывать вероятностные характеристики моделируемых процессов при заданных функциях распределения вероятностей на отдельных дугах. 5.1 Обыкновенные сети Петри 5.1.1 Формальное определение Сеть Петри - это математическая модель дискретных динамических систем (параллельных программ, операционных систем, ЭВМ и их устройств, сетей ЭВМ), ориентированная на качественный анализ и синтез таких систем (обнаружение блокировок, тупиковых ситуаций и узких мест, автоматический синтез параллельных программ и компонентов ЭВМ и др.). Формально в терминах теории систем[18, 28,42] сеть Петри (PetriNet – PN) - это набор элементов (кортеж) . (5.1) В этом определении - множество дискретных моментов времени; - непустое множество элементов сети, называемых позициями (местами); - непустое множество элементов сети, называемых переходами. Множества позиций и переходов не пересекаются: . - функция инцидентности, , (5.2) где - кратность дуги. M0- начальная маркировка позиций: . Функция инцидентности может быть представлена в виде и фактически задает два отображения: 1) т.е. для каждой позиции указываются связанные с ней переходы (с учетом их кратности); 2) т.е. для каждого перехода указываются связанные с ним позиции (также с учетом кратности). Эти функции, в общем случае зависящие от времени, могут быть представлены матрицами инцидентности , (5.3) . (5.4) Из вершины – позиции ведет дуга в вершину - переход тогда и только тогда, когда . В этом случае говорят, что - выходной переход позиции . Множество всех позиций для которых - выходной переход, будем обозначать . Иными словами, . Аналогично из каждой вершины перехода дуга ведет в вершину - позицию , тогда и только тогда, когда . При этом говорят, что  ‑ выходная позиция перехода . Множество всех переходов , для которых - выходная позиция, будем обозначать . Таким образом, . При и эти величины называются кратностью соответствующих дуг. Каждая позиция может содержать некоторый целочисленный ресурс , часто отображаемый соответствующим числом точек (фишек) внутри позиции (см. рис. 4.1). Вектор называют маркировкой (разметкой) сети Петри. Каждая маркировка это отображение . (5.5) Начальная маркировка определяет стартовое состояние сети Петри. Динамика поведения моделируемой системы описывается в терминах функционирования сетей Петри. Как было сказано, сеть функционирует в дискретном времени в асинхронном режиме, переходя от одной маркировки к другой. Смена маркировок (начиная с ) происходит в результате срабатывания переходов сети. Переход может сработать (может быть запущен) при маркировке М, если для всех выполняется условие , (5.6) т.е. если каждая входная позиция для данного перехода содержит как минимум столько фишек, какова кратность ведущей к дуги. В результате срабатывания перехода в момент времени маркировка сменяется маркировкой по правилу: , (5.7) i=1,...,n, j=1,...,m, ,. Иными словами, переход t изымает из каждой своей входной позиции число фишек, равное кратности входных дуг и посылает в каждую свою выходную позицию число фишек, равное кратности выходных дуг. Если может сработать несколько переходов, то срабатывает один, любой из них. Функционирование сети останавливается, если при некоторой маркировке (тупиковая маркировка) ни один из ее переходов не может сработать. При одной и той же начальной маркировке сеть Петри может порождать, в силу недетерминированности ее функционирования, различные последовательности срабатывания ее переходов. Эти последовательности образуют слова в алфавите T. множество всевозможных слов, порождаемых сетью Петри, называют языком сети Петри. Две сети Петри эквивалентны, если порождают один и тот же язык. В отличие от конечных автоматов, в терминах которых описываются глобальные состояния систем, сети Петри концентрируют внимание на локальных событиях (переходах), локальных условиях (позициях) и локальных связях между событиями и условиями. Поэтому в терминах сетей Петри более адекватно, чем с помощью автоматов, моделируется поведение распределенных асинхронных систем. 5.1.2 Графы сетей Петри Формальное определение сети Петри, изложенное выше, полностью определяет ее функционирование. Однако при решении конкретных инженерных задач удобнее и нагляднее графическое представление этих сетей. Поэтому ниже функционирование сетей Петри изложено с позиции теории графов. Теоретико-графовым представлением сети Петри является двудольный ориентированный мультиграф сети Петри. Этот граф содержит: - позиции (места), обозначаемые кружками; - переходы, обозначаемые планками; - ориентированные дуги (стрелки), соединяющие позиции с переходами и переходы с позициями. Кратные дуги обозначаются несколькими параллельными дугами. Благодаря наличию кратных дуг сеть Петри есть мультиграф. Благодаря двум типам вершин граф называется двудольным. Поскольку дуги имеют направление, граф является ориентированным. Пример такого мультиграфа показан на рисунке 5.1. рис.5.1 Пример сети Петри Для сети, изображенной на этом рисунке, матрицы инцидентности имеют вид: , . Начальная маркировка, как видно из рисунка 5.1, . Нетрудно видеть, что матричное и графовое представления взаимно однозначно соответствуют друг другу. В случае большой кратности дуг эту кратность можно указывать цифрами на соответствующей дуге. 5.1.3 Пространство состояний сети Петри Состояние сети Петри определяется ее маркировкой. Пространство состояний сети Петри, обладающей n позициями, есть множество всех маркировок, т.е. . Изменение в состоянии, вызванное запуском перехода, определяется функцией перехода  или функцией следующего состояния. Когда эта функция применяется к маркировке M и переходу (если он разрешен), то в соответствии с (5.7) получается новая маркировка . Она, как уже говорилось, получается изъятием фишек из позиции pi таких, что и помещением фишек в позиции такие, что . Процесс создания новых маркировок продолжается до тех пор, пока в сети Петри при данной маркировке существует хоть один разрешенный переход. Если же при некоторой маркировке ни один переход не разрешен, то такая маркировка называется тупиковой. При выполнении сети Петри получается две последовательности: 1) последовательность маркировок ; 2) последовательность запущенных переходов . Эти две последовательности связаны следующим соотношением . (5.8) Если в результате запуска перехода при маркировке М образуется новая маркировка , то говорят, что достижима из М. Множество достижимости сети Петри PN с маркировкой М есть множество всех , достижимых из М. Маркировка М принадлежит , если существует какая-либо последовательность запусков переходов, изменяющих М на М. Множество достижимости для сети P c маркировками М есть наименьшее множество маркировок, определенных следующим образом: a) ; б) если и для некоторого , то . Вернемся к примеру на рисунке 5.1. При начальной маркировке могут сработать переходы (в результате получаем ) и (получается маркировка ). Каждая из полученных маркировок порождает новые, в результате чего получается дерево маркировок, фрагмент которого показан на рисунке 5.2. Обратим внимание на то, что в дереве маркировок могут встречаться повторяющиеся маркировки. В этом случае дальнейшее построение дерева ведется только для одной из них. = 0 = 1 = 2 = 3 = 4 M0=[22 0] t 1: [2 3 0] t 1: [2 4 0] t 1: [2 5 0] t 1: [2 6 0] t 2: [1 3 1] t 2: [1 2 1] t 1: [1 3 1] t 2: [0 0 2] t 3: [2 4 0] t 4: [2 2 0] t 2: [1 1 1] t 1: [1 2 1] повтор t 3: [2 3 0] t 1: [2 4 0] t 2: [1 1 1] t 4: [2 1 0] t 1: [2 2 0] t 2: [1 0 1] t 1: [1 1 1] повтор t 3: [2 2 0] повтор t 4: [2 0 0] t 1: [2 1 0] повтор рис. 5.2Дерево маркировки сети Петр, показанной на рисунке 5.1 Если выделить путь по дугам графа маркировок, начинающийся в вершине и заканчивающийся в различных вершинах и выписать подряд все встречающиеся символы переходов, то полученное слово образует последовательность срабатываний сети, а их совокупность свободный язык сети Петри - . Так, язык рассматриваемой сети включает слова {,t1,t2,t1 t1,t1 t2,t2 t1,t2 t3,t2 t4,t1 t1 t1,t1 t1 t2,t1 t2 t1, t1 t2 t3,t1 t2 t4,t2 t1 t1,t2 t3 t1,t2 t4 t1,t1 t1 t1 t1,t1 t1 t1 t2,t1 t1 t2 t1, t1 t1 t2 t3,t1 t1 t2 t4,t1 t2 t1 t1, ...} Здесь  - пустой символ, соответствующий начальной маркировке . 5.1.4 Основные свойства сетей Петри Исходя из практических задач моделирования, можно установить ряд свойств сетей Петри, характеризующих поведение моделируемых систем. Свойство ограниченности. Позиция в сети P называется ограниченной, если для любой достижимой в сети маркировки M существует такое k, что . Сеть PN называется ограниченной, если все ее позиции ограничены. Сеть, показанная на рисунке 5.1, не ограничена, т.к. возможен неограниченный рост . Для обозначения неограниченной маркировки используется специальный символ . Так, на дереве маркировок на рисунке 5.2 можно выделить маркировку . Свойство безопасности. Сеть PN называется безопасной, если при любой достижимой маркировке для всех . Таким образом, в безопасной сети вектор маркировок состоит только из нулей и единиц (является двоичным словом). Свойство консервативности. Сеть называется консервативной, если сумма фишек во всех позициях остается постоянной при работе сети: , . Свойство живости. Рассмотрим теперь свойства переходов. Переход в сети называется потенциально живым, если существует достижимая из M0 маркировка , при которой может сработать. Если является потенциально живым при любой достижимой в маркировке, то он называется живым. Переход не являющийся потенциально живым при начальной маркировке M0, называется мертвым при этой маркировке. маркировка M0 в этом случае называется - тупиковой. Если маркировка M0 является - тупиковой для всех , то она называется тупиковой. При тупиковой маркировке не может сработать ни один переход. На дереве маркировок тупиковая маркировка является листом. Переход называется устойчивым, если никакой другой переход не может лишить его возможности сработать при наличии для этого необходимых условий. Последовательность маркировок в которой , образует цикл, если . Каждому циклу соответствует последовательность слов свободного языка сети Петри. 5.1.5 Некоторые обобщения сетей Петри Рассмотренное в разделах 5.1.1 – 5.1.3 базовое определение сети Петри позволяет моделировать широкий класс дискретных систем. Однако в ряде случаев этих возможностей оказывается недостаточно, поэтому вводят обобщения этих сетей, которые обладают расширенными возможностями моделирования. Упомянем некоторые из них. Ингибиторные сети (ИСП, IPN) – это сети Петри, для которых функция инцидентности имеет вид , т.е. она дополнена специальной функцией инцидентности , которая вводит ингибиторные дуги для тех пар , для которых . Ингибиторные дуги связывают только позиции с переходами, эти дуги на рисунках заканчиваются не стрелками, а кружочками (рисунок 4.3). Кратность этих дуг всегда равна 1. рис. 5.3 Фрагмент СП с ингибиторной дугой Правила срабатывания переходов в ингибиторной сети модифицируются следующим образом. Переход может сработать при маркировке M, если для всех связанных с ним позиций и , (5.9) т.е. по сравнению с условием (4.6) введено дополнительное условие: позиция , соединенная с переходом ингибиторной дугой, не должна содержать фишек (должна иметь нулевую маркировку). Так, переход t на рисунке 5.3 может срабатывать только при и . Сети с приоритетами. при определении сети Петри отмечалась недетерминированность ее работы: если имеется возможность срабатывания нескольких переходов, то срабатывает любой из них. При моделировании реальных систем могут сложиться ситуации, когда последовательность срабатываний необходимо регламентировать. Это можно сделать, введя множество приоритетов и приписав каждому из переходов соответствующее целочисленное значение приоритета . Тогда правило срабатывания переходов модифицируется: если на некотором такте работы сети имеется возможность для срабатывания нескольких переходов, то срабатывает тот из них, который имеет наивысший приоритет. Так, из двух готовых к срабатыванию переходов и на рисунке 5.4 а первым должен сработать переход , имеющий приоритет , поскольку приоритет перехода , т.е. ниже. а) б) Рис.5.4 Сеть Петри с заданными приоритетами (а), эквивалентная цепь Маркова при вероятностном срабатывании переходов (б) Сети со случайными срабатываниями переходов. В описанной выше ситуации, когда имеется возможность срабатывания нескольких переходов , их приоритет можно задавать вероятностями срабатывания каждого их переходов , причем . Тогда исходная маркировка приведет на следующих шагах работы сети к набору маркировок , каждая из которых будет помечена соответствующей вероятностью. Отождествив маркировки с состоянием сети и положив, что вероятности не зависят от работы сети в предыдущие такты, мы получим цепь Маркова, описывающую вероятностное поведение системы (см. главу 3). Пусть на рисунке 4.4 а вероятность срабатывания перехода равна p, а вероятность срабатывания равна . Тогда обозначив маркировки , , , получим цепь Маркова (рисунок 5.4 б). Иерархические сети Петри представляют собой многоуровневые структуры, в которых выделяются сети различного уровня. Они позволяют моделировать различные многоуровневые (иерархические) системы. В отличие от обыкновенных сетей Петри, в иерархических сетях имеются два типа переходов: простые и составные. Простые переходы ничем не отличаются от рассмотренных ранее, а составные переходы содержат внутри себя сеть Петри более низкого уровня. Формально они состоят из входного («головного») и выходного («хвостового») переходов, между ними находится некоторая сеть Петри, которая, в свою очередь, также может быть иерархической. Пример иерархической сети , в которой имеется составной переход , содержащий внутри себя сеть , показан на рисунке 4.5. Составной переход имеет «голову» и «хвост» , между которыми заключена сеть , состоящая из позиций - и переходов -. Рис.5.5 Иерархическая сеть Петри Иерархическая сеть функционирует, как и обыкновенная СП, переходя от одной маркировки к другой и обмениваясь фишками (в том числе между сетями различного уровня). Исключение составляют правила работы составных переходов. Срабатывание составных переходов является не единовременным событием, как в обыкновенных СП, а составным действием. Поэтому говорят не о срабатывании составного перехода, а о его работе. На каждом шаге дискретного времени составной переход может находиться в одном из двух состояний – пассивном и активном. Начальное состояние всех переходов – пассивное. Составной переход может быть активирован, в момент времени , если он до этого был пассивен и имеются условия для срабатывания его головного перехода, задаваемые условиями (5.6). При этом производится изменение маркировки в сети верхнего уровня по обычным правилам (5.7) и одновременно запускается работа в сети, находящейся внутри составного перехода. Во время ее работы функционирование сети верхнего уровня блокируется. Сеть нижнего уровня работает с учетом своей начальной маркировки до тех пор, пока все ее переходы не станут пассивными (т.е. не смогут сработать). После этого происходит срабатывание хвостового перехода и изменение маркировки сети верхнего уровня согласно (5.7). Составной переход возвращается в пассивное состояние, а в сети нижнего уровня восстанавливается начальная маркировка. Ниже приведено дерево маркировок сетей и при указанных на рисунке 4.5 начальных маркировках (рисунок 5.6). Рис.5.6 Схема работы иерархической сети Петри Мы видим, что на шаге происходит работа составного перехода и сети в следующем порядке: срабатывание - запуск - окончание работы и восстановление ее начальной маркировки – срабатывание и продолжение работы сети . Отметим также, что описанный процесс напоминает выполнение подпрограммы при программировании на алгоритмических языках. Срабатывание перехода соответствует вызову подпрограммы, а срабатывание - возврату в основную программу. Раскрашенные (цветные) сети Петри (РСП, CPN – Colored Petri Nets). В ряде приложений перемещаемые в сети Петри ресурсы (фишки) требуется дифференцировать, и тогда приходится вводить фишки различных видов (например, разных цветов). В этом случае для каждого перехода необходимо указывать, при каких комбинациях фишек во входных позициях он может сработать, и какое количество фишек различных цветов помещается в выходные позиции. Понятно, что моделирующая возможность раскрашенных сетей Петри выше, чем у обычных, однако при этом значительно усложняется их описание. Формальное определение и подробное описание работы раскрашенных сетей Петри приведено в разделе 5.2. Следует отметить, что раскрашенные сети Петри могут быть преобразованы в обычные, но при этом возрастают размеры сети. Упомянем еще некоторые расширения сетей Петри: синхронные, самомодифицируемые (с изменяющейся кратностью дуг, когда матрицы и зависят от ), и другие, описанные в литературе [18, 28]. 5.1.6 Инварианты сетей Петри Структура сетей Петри может обеспечивать при работе сети постоянство некоторых функций от маркировок сети. Такие функции называют инвариантами сетей Петри. Вычисление инвариантов может оказаться полезным при исследовании свойств моделируемых систем (например, при верификации и тестировании программ, анализе бизнес-процессов и др.) [11, 42]. Различают инварианты позиций и инварианты переходов. Для того, чтобы пояснить смысл этих терминов, введем в рассмотрение -матрицу , каждый элемент которой показывает разность между числом поступивших фишек – и числом изъятых , т.е. изменение маркировки позиции при срабатывании перехода . В силу того, что и – целые числа, величины также целые. В зависимости от знака при срабатывании перехода в позиции число фишек либо увеличивается (), либо уменьшается (), либо остается неизменным (). 1. Инварианты позиций. Припишем каждой позиции некоторый вес , который может принимать целочисленные значения – положительные, отрицательные или нулевые. Эти веса образуют -вектор-строку . Рассмотрим -вектор-строку и определим условия, при которых этот вектор является нулевым, т.е. (5.10) где - -вектор-строка, состоящая из нулей, - ненулевой -вектор. Представим матрицу в виде -столбца: , где  ‑ вектор-строка. Тогда условие (4.10) может быть представлено в виде . Отсюда следует, что условие (5.10) при может выполняться только в том случае, если среди строк матрицы найдутся линейно зависимые строки, т.е. дефект матрицы был бы больше нуля: . Пусть для простоты имеются две такие строки с номерами и - и , которые соответствуют в матрице позициям и , и пусть соответствующие веса не равны нулю: , . Веса остальных позиций положим равными нулю: при , . В силу линейной зависимости строк и веса и можно подобрать таким образом, что ; , . (5.11) Таким образом, вектор имеет вид и в силу (5.11) обеспечивается выполнение условия (5.10). Подсчитаем теперь приращение числа фишек в позициях и при срабатывании перехода . Пусть до срабатывания перехода маркировки в позициях и были соответственно и . После срабатывания маркировки с учетом введенных весов и стали равными, , , а их сумма в силу (5.11). Таким образом, сумма при учете введенных весов позиций , остается постоянной при срабатывании любого перехода и равна этой сумме при начальной маркировке . Построенный описанным образом вектор называется инвариантом позиций сети Петри. 2. Инварианты переходов. По аналогии с предыдущим разделом припишем каждому переходу вес , который может принимать целочисленные значения любого знака. Эти веса сведем в -вектор-столбец . Рассмотрим -вектор-столбец и определим условия, при которых этот вектор является нулевым, т.е. , (5.12) где - -вектор-столбец, состоящий из нулей, - ненулевой ‑вектор,  ‑ -й -столбец матрицы . Аналогично сказанному выше, можно убедиться в том, что условие (5.12) выполняется только в том случае, когда среди столбцов матрицы найдутся линейно зависимые. Для этого необходимо, как было показано, чтобы дефект матрицы был бы больше нуля: . Пусть имеются два линейно зависимых столбца с номерами и , которые соответствуют переходам и , и пусть соответствующие веса не равны нулю, , . Остальные веса положим нулевыми: при , . В силу линейной зависимости векторов и можно подобрать веса и таким образом, чтобы выполнялось условие (5.12). Проанализируем теперь, как будет изменяться маркировка сети при последовательном срабатывании переходов и . Пусть маркировка некоторой позиции до срабатывания переходов была . После срабатывания она (с учетом веса, ) стала а после срабатывания (с учетом веса ) . Таким образом, после последнего срабатывания переходов и получается исходная маркировка всех позиций, . Вектор , удовлетворяющий условию (5.12), называется инвариантом переходов. Приведенные рассуждения легко обобщаются и на случай, когда число линейно зависимых строк (и столбцов) в матрице больше двух. Напомним, что число линейно независимых строк матрицы равно числу ее линейно независимых столбцов и равно рангу матрицы , который обозначается буквой . Величина называется дефектом матрицы . Таким образом, для того, чтобы можно было построить инварианты позиций и переходов сети Петри , удовлетворяющие условиям (5.10, 5.12), необходимо, чтобы дефект матрицы был больше нуля: . Из сказанного вытекает также, что задача нахождения инвариантов сети Петри решается неоднозначно. Так, например, умножив веса и на постоянное число , мы получим другой вектор-инвариант , который обладает теми же свойствами, что и . Отметим один частный случай. Если для некоторой сети Петри существует вектор-инвариант позиций , все элементы которого равны единице, то это означает, что при работе сети сумма фишек во всех позициях постоянна и равна этой сумме в начальной маркировке: , . Такая сеть Петри, как было сказано выше, называется консервативной. Пример. Рассмотрим сеть Петри, изображенную на рисунке 5.1, и составим для нее матрицу : Легко видеть, что в этой матрице первая и третья строки линейно зависимы, причем достаточно взять веса , , . При этом получим вектор-инвариант по позициям , следовательно, сумма фишек в позициях и постоянна при срабатывании любого перехода: , в чем легко убедиться, проанализировав дерево маркировок на рисунке 5.2. Рассмотрим теперь столбцы матрицы . Мы видим, что второй и третий столбец линейно зависимы, при этом вектор-инвариант по переходам может быть взят следующим: . Это означает, что при последовательном срабатывании переходов , (в любом порядке) маркировка сети повторяется. Это также видно на рисунке 5.2. 5.2 Раскрашенные (цветные) сети Петри (CPN) В последние годы широко используется методология моделирования дискретных систем, основанная на использовании раскрашенных (цветных) сетей Петри – Coloured Petri Nets (CPN). Эта методология является обобщением формализма обыкновенных сетей Петри на случай многих видов ресурсов и позволяет более эффективно моделировать сложные системы. На базе методологии CPN разработан специальный язык моделирования – Coloured Petri Nets Modeling Language (CPNML) и созданы соответствующие программные средства. Правила функционирования CPN сложнее правил для обыкновенных сетей Петри. В то же время структура сети – двудольный ориентированный мультиграф и основной шаг работы – изменение маркировок при срабатывании переходов – принципиально не различаются. Ниже рассмотрено несколько упрощенное и по возможности неформа-лизованное описание CPN, ориентированное на синтаксис языка Паскаль. Полное и строгое описание CPN содержится в книге Курта Йенсена [42]. 5.2.1 Мультимножества Одним из важных понятий, используемых в теории раскрашенных сетей Петри, является понятие мультимножества. Формально мультимножеством на непустом множестве называется функция , где - множество натуральных чисел. Иными словами, мультимножество состоит из элементов множества , каждый из которых может быть повторен раз ( - переменная целого типа). мультимножество может быть представлено в виде кортежа, в котором перечислены входящие в него элементы с указанием их кратности. Указатель кратности – выражение целого типа - ставится перед названием элемента множества и отделяется от него кавычкой. Отсутствие какого либо элемента из в мультимножестве эквивалентно его присутствию с нулевой кратностью. Формально мультимножество на можно представить суммой , где – число появлений (кратность) элемента в мультимножестве. Пример. Пусть – множество элементов и – мультимножество на . Последняя запись означает, что состоит из двух элементов , одного элемента , нуля (ни одного) элементов и элементов , где – переменная типа integer. Рассмотрим операции над мультимножествами. 1. Сложение мультимножеств. Пусть , . Тогда . 2. Умножение мультимножества на скаляр. Пусть мультимножество, - скаляр типа integer. Тогда . 3. Сравнение мультимножеств. Мы будем говорить, что , если . 4. Вычитание мультимножеств. если , то можно определить разность мультимножеств: . 5. Мощность мультимножества – суммарное число элементов в мультимножестве: . 5.2.2 Формальное определение CPN раскрашенная сеть Петри CPN – это кортеж . (5.13) Рассмотрим элементы определения (4.13). 1. - множество дискретных моментов времени (шагов), в которые происходит функционирование сети. Номер шага есть переменная целого типа: varteta: Integer; . 2. – конечное множество непустых типов, называемое цветами. Типы имеют общее название и задаются аналогично тому, как это принято в языках программирования. Например: ; – перечисляемый тип, здесь - имя цветного множества, , , – входящие в него цвета; ; – целый тип; ; –прямое произведение типов. При описании переменных, используемых в сети, указывают их принадлежность к типу, например: ; ; . В последнем примере переменная состоит из пары элементов , где элемент принадлежит типу , а – типу . 3. – конечное множество позиций. Это множество может быть представлено перечисляемым типом: ; (5.14) а для работы с ним вводится переменная . С каждой позицией может быть связана определенная маркировка, которая учитывает наличие различных типов ресурсов. Маркировка позиции представляет собой мультимножество, например, следующего вида: . Здесь , , - переменные указанных в п.2 цветовых типов, определяющие различные виды ресурсов, а цифры, стоящие перед кавычками, – количество фишек соответствующего типа, в позиции . Совокупность маркировок всех позиций называется маркировкой сети: . В языке Паскаль мультимножество, определяющее маркировку позиции, может быть представлено, например, типом – множество, состоящим из записей вида ; (5.15) ; ;; . Операции над мультимножествами можно определить соответствующими процедурами. Аналогично определяется мультимножество, задающее маркировку сети. 4. – конечное множество переходов, которое можно представить перечисляемым типом ; (5.16) и соответствующей переменной: . Это множество не отличается от множества переходов для обыкновенных сетей Петри, однако правила их срабатывания могут быть более сложными. Эти правила рассмотрены ниже. 5. – конечное множество дуг, связывающих между собой позиции и переходы. В отличие от обыкновенных сетей Петри, где дуги задаются матрицами инцидентности и , в языке CPNML указываются все дуги с помощью выражений вида: и , где , . Такая нотация введена для того, чтобы можно было пару элементов , соединить несколькими дугами с различными свойствами. В этих выражениях первый элемент указывает начало дуги, второй элемент – конец дуги. множество имеет следующую структуру: , где дуги определяются одним из видов выражений: или , , . Поскольку дуги имеют два вида: от позиции к переходу () и от перехода к позиции (), то множество можно представить в виде суммы непересекающихся множеств: , , где множество содержит элементы вида , а множество  ‑ элементы вида . Как и в случае обыкновенных сетей Петри, элементы множеств , , не пересекаются: . 6. – узловая функция, которая для каждой дуги указывает ее исходный и конечный узел. Формально , , если в множестве элементу соответствует выражение . Здесь - имя узла, от которого начинается дуга,  ‑ имя узла, где она заканчивается. Рассмотрим один из способов задания этой функции. Каждая дуга может быть представлена в виде записи. Дуги типа задаются записью ; (5.17) ; ; ; . Дуги типа задаются аналогично: ; (5.18) ;; ; . Множества дуг и могут быть представлены перечисляемыми типами: (5.19) Для работы с дугами вводятся переменные соответствующих типов: ;. 7. – цветовая функция, определяющая множество типов цветов, разрешенных для каждой позиции. Например, запись означает, что цвета типа разрешены для позиций , а цвета типа разрешены для всех остальных позиций из . 8. – блокировочная (спусковая) функция, описывающая дополнительные условия, которые должны быть выполнены для срабатывания перехода. Эта функция представляет собой предикат, составленный из переменных, принадлежащих типам цветов . Например, функция принимает истинное значение для перехода , если переменная , а во всех остальных случаях она ложь. Таким образом, для того, чтобы было разрешено срабатывание перехода , требуется выполнение дополнительного условия на входной дуге к . Если эта функция не определена, то по умолчанию предполагается истинной. 9. – функция, задающая выражения на дугах . Эта функция для каждой дуги определяет мультимножество, состоящее из элементов, описанных в множестве цветов . Мы будем говорить, что это мультимножество помечает дугу. Введение в CPN функции является развитием понятия кратности дуг в формализме обыкновенных СП. Рассмотрим примеры задания функции . - дуга помечается двумя фишками типа ; - дуга помечается двумя фишками типа , если переменная , и одной фишкой типа , если . - дуга помечается одной фишкой типа , если , иначе не помечается. - дуга помечается одной фишкой типа состоящей из типов и (см. пример в п. 2 определения), если , и не помечается в противном случае. Отсутствие выражения для какой-либо дуги означает, что дуга не помечена. 9. - функция инициализации сети CPN. Эта функция по аналогии с обыкновенными СП задает начальную маркировку (разметку) сети , т.е. для каждой позиции указывает цветовое мультимножество, обозначаемое . Например, ; ; - начальные маркировки позиций; - начальная маркировка сети. 5.2.3 Функционирование CPN Рассмотрим работу раскрашенных сетей Петри. Как и в случае обыкновенных СП, функционирование сети состоит в срабатывании переходов и происходящих вследствие этого изменениях маркировок. Мы будем говорить, что переход может сработать (может быть запущен), если выполняется условие: . (5.20) В первой скобке выражения (4.20) происходит поэлементное сравнение мультимножества, являющегося маркировкой позиции с мультимножеством, которым помечены дуги, ведущие от к . Суммирование мультимножеств связано с тем, что, как отмечалось в п. 5, два узла могут быть соединены несколькими дугами, и суммирование производится по всем таким дугам. Во второй скобке записано условие отсутствия блокировки перехода (см. п. 8 определения). Если условие срабатывания перехода выполняется, то он может сработать, при этом говорят, что выполнится шаг работы CPN. Отсчет шагов производится в дискретном времени . Поэтому маркировку отдельных позиций и сети в целом мы будем также привязывать ко времени и записывать соответственно в виде и . Изменение маркировки узла при осуществлении шага работы CPN рассчитывается по формуле: . (5.21) В выражении (5.21) все слагаемые являются мультимножествами, и вычисления производятся в соответствии с правилами сложения и вычитания мультимножеств. Знаки суммирования мультимножеств используются в формуле по причине, которая уже пояснена выше: каждая пара узлов может быть связана несколькими дугами, а каждая дуга помечена отдельным выражением . Если на некотором шаге выполняются условия срабатывания нескольких переходов, то по аналогии с обыкновенными СП, в зависимости от задачи исследования CPN мы можем разрешить сработать всем переходам (при построении дерева возможных маркировок) либо дать такую возможность только одному из них на основе некоторых дополнительных условий (например, приоритетов). Пример. Приведем описание простой CPN, схема которой и начальная маркировка приведены на рисунке 5.7 а. а) б) Рис. 5.7 Раскрашенная сеть Петри и эквивалентная ей обыкновенная СП • Множества цветов: ; . • Переменные: ; . • Множество позиций: . • Множество переходов: . • Множество дуг , , , , , ; ; ; ; • Цветовая функция • Блокировочная функция отсутствует:. • функция , задающая выражения на дугах: ; • функция инициализации , задающая начальную маркировку ; ; . Ниже приведено полное дерево маркировок рассмотренной сети. Поясним описание сети. Для позиции разрешен цвет , для позиций , разрешены цвета , , . Переход может сработать, если в позиции находится хотя бы одна фишка цвета и в позиции находится хотя бы одна фишка цветов , , . В позицию при срабатывании перехода пересылается та фишка, которая была извлечена из при срабатывании перехода. Начальная маркировка – 3 фишки цвета в позиции , по одной фишке всех цветов в позиции . При работе сети переменная принимает поочередно (в произвольном порядке) значения , , , а переменная - значение . Работа сети продолжается до тех пор, пока все фишки из не будут пересланы в . При этом позиции и оказываются пустыми. Дерево маркировок описывает все возможные варианты последовательности пересылки фишек. Эквивалентная рассмотренной CPN обыкновенная сеть Петри приведена на рисунке 5.7 б. Построив дерево маркировок этой сети, нетрудно убедиться, что оно структурно совпадает с рассмотренным выше деревом CPN. Однако раскрашенная сеть содержит больше информации, поскольку ресурсы в позиции не обезличиваются, и можно проследить порядок их поступления. 5.2.4 Расширения CPN Как уже отмечалось в п. 5.1.5, использование сетей Петри в различных прикладных задачах может потребовать придания им дополнительных возможностей, что приводит к созданию расширений этих сетей. Некоторые расширения аналогичны рассмотренным в п.5.1.5, (например иерархические CPN), потребность в ряде других отсутствует, т.к. формализм CPN позволяет их описать (CPN с приоритетами, ингибиторные сети, самомодифицируемые сети). Ниже мы рассмотрим одно важное расширение CPN, значительно увеличивающее их моделирующие возможности: CPN с временным механизмом. Существует ряд задач моделирования, в которых необходимо учитывать не только последовательность событий, но и время их наступления, а также продолжительность. Для этой цели предусмотрено расширение возможностей раскрашенных сетей Петри путем введения временного механизма (так называемых timedCPN [42]). В несколько упрощенном виде сущность такого расширения описана ниже. А. В модель системы вводятся часы, показывающие глобальное время . Обычно это время считается дискретным, т.е. означает номер такта, выдаваемого тактовым генератором системы моделирования. Глобальное время отличается от времени , которое содержится в определении (5.13), поскольку есть номер шага работы CPN, а изменяется независимо от работы сети. Б. Ресурсы, перемещаемые в сети (фишки) могут получить временные метки. Такие ресурсы, в общем виде, задаются мультимножествами с временными метками (timedmulti-sets), однако мы эту теорию не рассматриваем. Отметим лишь, что при описании множества цветов добавляются пометки timed, а переменные соответствующего типа снабжаются знаками @ (по-английски читается at, т.е. «во время»). Это означает, что переменная привязана к глобальному времени. После значка @ в квадратных скобках указывается значение глобального времени, в течение которого возможно использование данных фишек при срабатывании переходов, для которых они являются входными. При этом запись вида @[500] говорит о том, что фишка «включается» в момент и далее готова для работы в сети, а запись @[500, 600] означает, что фишка может использоваться в диапазоне глобального времени . Приведем пример. ; ; ; . Возможное значение мультимножества определяемого переменной : . В. Каждый переход, на вход которого поступают фишки, имеющие временные метки, получает дополнительное условие срабатывания: он может сработать только в том случае, если системное время удовлетворяет всем условиям на входных фишках. В свою очередь, при срабатывании переход может увеличить временную метку фишки, т.е. смоделировать задержку в работе системы. Величина задержки определяется специальным выражением связанным с переходом, и имеющим вид , где - время задержки, задаваемое числом или функцией. Рис.5.8 Фрагмент CPN с временными метками Пусть в сети на рисунке 4.8 начальная маркировка такова: , . Выражения на дугах показаны на схеме. Глобальное время . Переход может сработать, при этом он осуществит задержку передачи фишек в на 12 единиц времени в соответствии с выражением на . Таким образом, после срабатывания получим маркировку: , . Пример CPN с временным механизмом приведен в п. 5.3.3. 5.2.5 Сравнение формализмов обыкновенных и раскрашенных сетей Петри Подведем некоторые итоги данного раздела. Мы кратко рассмотрели теорию сетей Петри в двух вариантах: • формализм классических или обыкновенных СП (РТ – сетей в терминологии К. Йенсена); • формализм раскрашенных сетей Петри - CPN. Нетрудно убедиться в том, что формализм описания структуры и функционирования CPN справедлив и для обыкновенных СП. При этом пункты 1, 3, 4 и 10 совпадают с описанием в разделе 5.1.1; цветовое множество всего одно и имеет единственный цвет; описание связей между узлами вместо матриц и следует задавать множеством дуг , узловой функций и выражениями на дугах . Функция тривиальна и поэтому не нужна, а функция всегда истинна. Правила срабатывания и изменения маркировок (5.20) и (5.21) при сделанных предположениях совпадают соответственно с (5.6) и (5.7). В то же время очевидно, что формализм CPN К. Йенсена при всех своих преимуществах в ряде случаев более громоздок и менее удобен по сравнению с формализмом классических обыкновенных сетей Петри. Поэтому при моделировании конкретных систем исследователь должен выбирать наиболее подходящую в данном случае методологию. Именно так мы и будем поступать в дальнейшем. 5.2.6 О моделирующих возможностях сетей Петри С точки зрения инженерных приложений наибольший интерес представляет анализ динамики изменения маркировок сети Петри и возникающих при этом ситуаций. Однако важен и вопрос о том, насколько широкий класс объектов могут моделировать сети Петри. В п. 5.1.3 говорилось о свободном языке сети Петри, который представляет собой некоторое подмножество всех слов в алфавите T. Множество свободных языков всех сетей Петри образует класс свободных языков сетей Петри. В ряде случаев язык сети Петри можно изменить, связав с некоторыми переходами сети N определенные символы из алфавита , и часть переходов оставить непомеченными (вернее, помеченными пустым символом ). В этом случае говорят о помеченной сети Петри , где – помечающая функция, ставящая в соответствие переходам символы . Ясно, что обычная сеть Петри есть частный случай помеченной сети Петри при . Помеченную сеть Петри можно рассматривать как генератор слов и изучать ее возможности с точки зрения математической лингвистики. Рассмотренные в п. 5.1.5 расширения сетей Петри порождают другие классы языков. Эти классы языков интересно сравнивать с языками, порождаемыми иными типами абстрактных систем, в частности с языками конечных автоматов и машин Тьюринга. Такое сравнение позволяет характеризовать моделирующие возможности сетей Петри, их способность адекватно описывать системы со сложной динамикой функционирования. В монографии В.Е. Котова [18] доказываются следующие утверждения: 1. Класс помеченных сетей Петри строго мощнее класса конечных автоматов и строго менее мощен, чем класс машин Тьюринга. 2. Классы ингибиторных сетей и сетей с приоритетами строго мощнее класса сетей Петри и равномощны классу машин Тьюринга. 3. Класс раскрашенных сетей при конечном количестве цветов равномощен классу сетей Петри. 4. Класс самомодифицируемых сетей эквивалентен классу ингибиторных сетей и сетей с приоритетами. 5.3 Моделирование дискретных систем Сети Петри были разработаны и используются для поддержки принятия решений путем моделирования и исследования сложных систем. С помощью различных модификаций этих сетей можно описать многие системы, в особенности системы с независимыми элементами, например, аппаратное и программное обеспечение ЭВМ, системы телекоммуникаций, физические, химические, экономические, социальные и другие системы. При описании сетей Петри выделяют два понятия: события и условия. Событие– это действие в системе. В сетях Петри они моделируются переходами. Условие–предикат или логическое описание системы, принимающее значение «истина» или «ложь». Условия моделируются позициями и условиями на дугах. Различаются предусловия и постусловия. Предусловие– это условие до срабатывания перехода, постусловие–соответственно условие после срабатывания перехода. рис.5.9 Сеть Петри, моделирующая конфликт Если процесс в системе достаточно сложный, то его подсистемы можно представить в виде непримитивных событий. На рисунке.5.5, составной переход – непримитивное событие, моделируемое отдельной сетью Петри. При этом процесс моделируется иерархической сетью Петри (п. 5.1.5). Следующая особенность Сети Петри - одновременность. Если переходы и не влияют друг на друга, то в возможный словарь языка сети Петри входят как слова, начинающиеся с , так и слова начинающиеся с tj. Еще одна ситуация называется конфликтом. Переходы и находятся в конфликте, если запуск одного из них блокирует запуск другого (рисунок 5.9). 5.3.1 Моделирование вычислительных систем Рассмотрим несколько примеров применения сетей Петри. Пример 1. Простейшая система массового обслуживания. Рассмотрим систему массового обслуживания (СМО), например, вычислительную систему, схема, которой показана на рисунке 5.10 а. Система имеет входной и выходной потоки заданий, и пока она занята выполнением очередного задания, она не может ввести следующее задание. а) б) рис. 5.10 Общее представление о системе массового обслуживания (а) модель простейшей СМО в виде сети Петри (б) Модель СМО в виде сети Петри показана на рисунке 5.10 б. Рассмотрим множество условий и событий, характеризующих систему. условия: p1 - задание ждет обработки, p2 - задание обрабатывается, p3 - процессор свободен, p4 - задание ожидает вывода. события: t1 - задание помещается во входную очередь, t2 - начало выполнения задания, t3 - конец выполнения задания, t4 - задание выводится. Поясним работу данной сети. Показанная на рисунке начальная маркировка соответствует состоянию, когда система свободна, и заявки на обслуживание отсутствуют. При срабатывании перехода (от внешнего источника) поступает задание и получается маркировка . При этом может сработать переход , что означает начало обслуживания задания и приводит к маркировке . Затем может сработать переход , что означает окончание обслуживания задания и освобождение системы, т.е. переход к маркировке . Переходы и могут работать независимо от и моделируя поступление и вывод заданий. Построение сети Петри, моделирующей последовательность обслуживающих устройств, соединенных в очередь типа FIFO, предлагается в качестве задания для самостоятельной работы. Пример 2. Двухпоточная СМО. Пусть теперь СМО выполняет задания, поступающие от двух источников и находящиеся в двух очередях. Вывод обработанных заданий осуществляется одним потоком. В этом случае модель системы имеет вид, показанный на рисунке 5.11. рис. 5.11 Модель СМО с двумя потоками входных заявок Здесь введены дополнительные условия: p5 – задание из второй очереди ждет обработки; p6 – задание из второй очереди обрабатывается, и дополнительные события: t5 – задание помещается во вторую очередь; t6 – начало выполнения задания из второй очереди; t7 – завершение выполнения задания из второй очереди. Как видно, здесь имеет место конфликт. Одновременно может выполняться только одно задание из любой очереди. В то же время, если в позицииp3имеются две заявки (это соответствует двухпроцессорной системе), то возможно одновременное выполнение двух заданий из обеих очередей в любой комбинации. Пример 3. Вычислительный конвейер. В качестве следующего примера рассмотрим схему управления асинхронной ЭВМ с конвейерной обработкой. Поясним работу конвейера на примере операции сложения двух двоичных чисел с плавающей точкой , . Здесь МА, МВ – мантиссы чисел А и В, ра, рb – двоичные порядки этих чисел. Требуется получить результат . Как известно, эта операция состоит из следующих этапов: СП – сравнение порядков; ВП – выравнивание порядков; СМ – сложение мантисс; НР – нормализация результата. Каждый из этих этапов выполняется отдельным функциональным устройством в устройстве конвейерной обработки. Связь между функциональными устройствами и синхронизация их работы осуществляется с помощью пары регистров: входного Pгiи выходного Pгo рис. 5.12 Схема конвейера при сложении двух чисел Выпишем для i-того функционального устройства условия: pi1 – входной регистр свободен; pi2 – входной регистр заполнен; pi3 – блок занят; pi4 – выходной регистр свободен; pi5 – выходной регистр заполнен; pi6 – пересылка в следующий блок возможна; и события: ti1 – начало работы i-го блока; ti2 – завершение работы i-го блока; ti3 – начало пересылки в (i+1)-й блок; ti4 – завершение пересылки в (i+1)-й блок. При этом модель i-го блока конвейера при начальной маркировке примет вид, показанный на рисунке 5.13. рис. 5.13 Сеть Петри, моделирующая фрагмент конвейера Предоставляем читателям самостоятельно проследить последова-тельность срабатывания переходов и получаемые при этом маркировки. Пример 4. Вычислительная система с альтернативными ресурсами. Рассмотрим пример моделирования, в котором удобно использовать раскрашенные сети Петри. Пусть необходимо смоделировать фрагмент вычислительной системы, в которой осуществляются обмены между тремя накопителями на магнитных дисках D1, D2, D3 и центральным процессором ЦП через два канала С1 и С2. При этом требуется, чтобы D1 использовал канал С1, D2 - канал С2, D3 - оба канала С1 и С2 (рисунок 5.14). рис. 5.14 Схема ВС с альтернативными ресурсами Обыкновенная сеть Петри PN для моделирования этой системы показана на рисунке 5.15. Позиции pd1, pd2, pd3 определяют, свободен или занят соответствующий дисковод D1, D2, D3, позиции pc1, pc2, соответственно - свободен или занят соответствующий канал С1 и С2. Позиции p1 и p2 - выполнение заданий парами D1C1 и D2C2, позиции p31 и p32 - выполнение задания парами D3 C1 и D3C2. рис. 5.15 Обыкновенная сеть Петри, моделирующая систему на рисунке 5.14 Каждый из переходов , , , при срабатывании определяет один из четырех возможных вариантов обслуживания задания. При построении дерева маркировок необходимо дать возможность сработать каждому из них. переходы , , , моделируют завершение выполнения задания по каждому из рассмотренных вариантов. Рассмотренную сеть можно значительно упростить, если использовать формализм раскрашенных сетей Петри CPN. В этом случае она примет вид, показанный на рисунке 5.16. рис. 5.16 Раскрашенная сеть Петри, моделирующая систему на рисунке 5.14 Здесь позиция pd определяет наличие свободных дисководов, а позиция pc ‑ наличие свободных каналов. Введем графическое и буквенное обозначение ресурсов, используемых в данной сети  ‑ (d1); ‑ (d2); ‑ (d3) – свободные дисководы  ‑ (c1); ‑ (c2) – свободные каналы  ‑e – поступившие/выполненные заявки. кроме того, необходимо ввести дополнительные фишки для запоминания предыдущих состояний сети (на рисунке не указаны) m1 – занят дисковод D1 и канал C1 m2 – занят дисковод D2 и канал C2 m3 – занят дисковод D3 и канал C1 m4 – занят дисковод D3 и канал C2 правила срабатывания переходов t1, t2, t3 задаются следующими таблицами. Таблица 5.1 Переход t1 Переход t2 Переход t3 p0 pd p1 p1 pc p2 p2 p3 pc pd e d1 d1 d1 c1 m1 m1 e c1 d1 e d2 d2 d2 c2 m2 m2 e c2 d2 e d3 d3 d3 c1 m3 m3 e c1 d3 d3 c2 m4 m4 e c2 d3 Приведем теперь формальное описание данной CPN в нотации К. Йенсена (см. п.5.2). • Множества цветов: ; ; ; . • Цветовые переменные: ; ; ; . • Множество позиций: ; переменная типа позиции: . • Множество переходов: ; переменная типа перехода: . • Множество дуг ; ; ; переменные типа дуги: ; , где типы и описаны выражениями в соответствии с примером (5.19). Таблица 5.2 • Цветовая функция • Блокировочная функция отсутствует, т.е. формально определяется выражениями: ,. • функция инициализации , задающая начальную маркировку ; ; ; ; ; • выражения на дугах приведены в таблице 5.2. Предлагаем читателю самостоятельно проследить схему изменения маркировок при обслуживании поступивших заданий по всем четырем возможным вариантам. Пример 5. Задача об обедающих мудрецах. Моделирование систем с помощью сетей Петри особенно полезно в тех случаях, когда компоненты систем могут взаимодействовать в процессе работы системы. Управление взаимодействующими процессами называют синхронизацией. Имеется ряд классических задач в этой области: о взаимном исключении, производитель/потребитель, чтения/записи, об обедающих мудрецах. Последнюю рассмотрим подробнее. Эта задача была предложена Э. Дейкстрой в 1968 году в статье о параллельных вычислениях, где он впервые ввел понятие «семафора» [9]. С тех пор она служит своеобразным тестом для методов решения задач распараллеливания. Рис. 5.17 Столовая гуляющих мудрецов Имеется китайских мудрецов, которые то гуляют по парку, то обедают. Каждый из них действует совершенно независимо. Проголодавшись, он идет в столовую, садится на свободный стул за круглый стол, на котором стоит блюдо с рисом, берет две палочки и обедает. Но палочек всего . Если свободных палочек нет, то мудрец ждет, когда освободятся соседние палочки. Насытившись, он кладет палочки на место и уходит. На рисунке 5.17 показана схема столовой для .Обозначим состояния, относящиеся к произвольному i‑му мудрецу (): Mi – i-ый мудрец гуляет; Еi – i-ый мудрец ест; Ck – k-ая палочка свободна; С1i – i-ый мудрец держит левую палочку; C2i – i-ый мудрец держит правую палочку. Рассмотрим возможные события: ti1 – мудрец начинает есть; ti2 – мудрец уходит гулять и освобождает палочки; ti3 – мудрец взял левую палочку; ti4 – мудрец взял правую палочку. Тогда для отдельного i‑го мудреца имеем обыкновенную сеть Петри (рисунок 5.18). рис. 5.18 Сеть Петри, моделирующая поведение одного мудреца Из рисунка видно, что мудрецы взаимно связаны орудиями питания, т.е. из-за ресурса Ck (палочек) имеется конкуренция. В соответствии с расположением мест за обеденным столом (рисунок 5.17), сети Петри для 1-го и -го мудрецов должны соединяться. При нумерации мест по часовой стрелке правая палочка 1-го мудреца является левой для -го. Таким образом, полный граф для данного примера представляет собой кольцо, образованное сетями для отдельных мудрецов. Среди всевозможных маркировок данной сети Петри существуют тупиковые - когда все мудрецы сидят за столом и взяли в руки по одной палочке (например, правой). В этом случае они обречены на голодную смерть, т.к. они никогда не дождутся второй палочки и не смогут начать обед. Этот модельный пример свидетельствует о том, что в реальных параллельно работающих системах должен быть механизм синхронизации, способный разрешить подобные конфликты. Задача о мудрецах может быть смоделирована с помощью раскрашенных сетей Петри. Эта задача предлагается в качестве одного из заданий самостоятельной работы. 4.3.2 моделирование программ Напомним некоторые определения, относящиеся к теории программирования. Моделью программирования называют совокупность приемов программирования и структур данных, отвечающих архитектуре используемого компьютера и предназначенных для выполнения определенного класса алгоритмов. Описание алгоритма является иерархическим, его сложность зависит от степени детализации. На самом верхнем уровне иерархии находится задача в целом, нижний уровень включает примитивные операции – машинные команды. Алгоритм можно представить в виде диаграммы – информационного графа, который описывает последовательность выполнения операций и взаимную зависимость между различными операциями или блоками операций. Узлами информационного графа являются операции, а однонаправленными дугами – каналы обмена данными. Традиционной считается последовательная модель программирования. В этом случае в любой момент времени выполняется только одна операция и только над одним элементом данных. Эта модель характеризуется возможностью применения стандартных языков программирования, хорошей переносимостью программ и невысокой производительностью. В более поздних вычислительных системах получила развитие идея распараллеливания вычислений, которая воплотилась в архитектуре практически всех современных компьютеров. В связи с этим появились модели параллельного программирования. Их особенностями являются более высокая производительность программ, применение специальных приемов программирования и, как следствие, более высокая трудоемкость программирования и проблемы с переносимостью программ. Простейшая модель параллельного программирования называется моделью задача/канал. В этом случае программа состоит из нескольких задач, связанных между собой каналами телекоммуникаций и выполняемых одновременно несколькими процессорами. Каждая задача состоит из последовательного кода и локальной памяти. Канал – это очередь сообщений, передающих данные от одной задачи к другой. Каждая задача может записывать и считывать данные из локальной памяти, посылать и принимать сообщения. Операция обмена сообщениями может быть асинхронной, она завершается сразу после пересылки сообщения, либо синхронной, которая блокирует выполнение задачи до тех пор, пока не прейдет подтверждение получения сообщения адресатом. Другой распространенной моделью параллельного программирования является модель параллелизма данных. Она основана на применении одного и того же алгоритма несколькими процессорами к множеству элементов структуры данных (например, к фрагментам одного массива). Обратимся теперь к описанию алгоритмов с помощью сетей Петри. Эти сети, оперируя терминами условия–события, являются удобным инструментом моделирования как структуры информационных графов программ, так и динамики выполнения программных блоков. При этом наличие данных для выполнения некоторых операций моделируется маркировкой соответствующей позиции, а сама операция моделируется срабатыванием перехода. Ниже приводятся примеры моделей последовательной и параллельной программ, построенных средствами сетей Петри [18]. Отметим, что данный материал не претендует на изложение теории параллельных вычислений – он лишь демонстрирует моделирующие возможности сетей Петри. Последовательная модель программирования. На рисунке 5.20 в качестве примера последовательной модели программирования показан информационный граф (стандартная блок-схема) алгоритма циклических вычислений. Здесь же приводится интерпретация этого графа в терминах обыкновенных сете Петри. Нетрудно убедиться, что сеть Петри в данном случае менее выразительна и содержит меньше информации об алгоритме, чем блок-схема, поскольку она требует дополнительного пояснения смысла позиций, переходов и фишек. рис. 5.19 Блок-схемы алгоритма в стандартной нотации и в виде графа сети Петри Модель параллелизма данных. Рассмотрим теперь схему программы, соответствующую модели параллелизма данных. Предположим, что в программе имеются блоки двух типов: и (рисунок 5.20 а). Алгоритм блока может выполняться только в последовательном режиме одним процессором, а блок допускает разбивку на независимых модулей, , каждый из которых может выполняться на отдельном процессоре. Сеть Петри показана на рисунке 5.20 б. Мы видим, что блок одновременно передает данные и управление модулям , которые являются отдельными сетями Петри (это происходит при срабатывании перехода ). Модули выполняются независимо, однако дальнейшие вычисления могут начаться только после завершения выполнения всех модулей (т.е. должны сложиться условия для срабатывания перехода ). Таким образом, с помощью сети Петри можно описать нетривиальные особенности параллельного выполнения модулей. С помощью стандартных блок-схем это было бы сделать затруднительно. а) б) рис. 5.20 Модель программы, допускающей распараллеливание вычислений На примере данной схемы можно вывести известную формулу Амдала, которая характеризует эффективность параллельных алгоритмов. Пусть блок требует для своего выполнения времени , а блок при его выполнении на одном процессоре – времени . Тогда общее время решения задачи на одном процессоре составит . Если же блок выполняется параллельно на одинаковых процессорах, то время его выполнения в идеальном случае (при равномерной загрузке всех процессоров) составит , а общее время решения задачи будет . Коэффициент ускорения вычислений составит , (5.22) где , – относительные доли последовательной и параллельной частей (). Выражение (5.22) носит название формулы Амдала. Мы видим, что чем больше величина , тем больший эффект дает эффект распараллеливания вычислений. При малых ускорение вычислений за счет увеличения числа процессоров будет незначительным. Например, при и получим, т.е. десятикратное увеличение числа процессоров уменьшает время вычислений менее чем в 2 раза. 5.3.3 Моделирование протоколов передачи данных Протоколами называют наборы правил (алгоритмы) для связи между абонентами вычислительной или телекоммуникационной системы. Протоколы управляют форматом, временными интервалами, последовательностью работы и контролем ошибок при передаче сообщений. В соответствии с принятой моделью связи открытых систем OSI (Open System Interconnection) существует семь уровней взаимодействия между абонентами системы – от физического (нижний уровень) до прикладного (верхний уровень). На каждом из уровней должен действовать свой протокол. На практике обычно используется всего три уровня протоколов: – низший аппаратный (протоколы Ethernet, Tokeu Ring, FDDI); – средний уровень (протоколы NetBIOS, IPX/SPX, TCP/IP); – высший уровень (протоколы SMB, NCP). Реальные протоколы представляют собой достаточно сложные алгоритмы, и поэтому возникает необходимость моделирования их работы с целью определения рабочих характеристик или обнаружения ошибок. Сеть Петри, моделирующая работу реального протокола, обычно содержит сотни узлов-позиций и переходов. В данной книге мы рассмотрим значительно упрощенную модель протокола передачи данных, которая, тем не менее, отражает существенные черты его работы [42]. Раскрашенная сеть Петри с временным механизмом, моделирующая работу протокола, приведена на рисунке 5.21. 1. Описание работы протокола. Система передачи данных, реализуемая с помощью протокола, состоит из трех подсистем: отправитель, получатель и сеть, по которой в одну сторону передается сообщение, а в обратную сторону – подтверждение о приеме сообщения получателем («квитанция»). По сети передается сообщение, разбитое на фрагментов, называемых пакетами. Каждый пакет состоит из номера (целое число типа integer с временной меткой) и текстовой части (типа string). Первоначально все пакетов находятся в позиции . Целью работы системы является передача всех пакетов получателю в позицию с сохранением последовательности их номеров. Кроме того, отправитель должен получить «квитанции» о передаче всех пакетов, и эти «квитанции» с пометкой о времени передачи помещаются в . Рис. 5.21 Модель протокола передачи данных позиции , моделируют, соответственно, условия начала и конца передачи пакетов, а позиции , моделируют условия начала и конца передачи «квитанций». позиции , являются счетчиками, т.е. хранят номера отправленных и принятых пакетов. Переход моделирует начало передачи очередного пакета, переходы и - прохождение, соответственно, пакета и «квитанции» через сеть, переход - прием и анализ очередного пакета, переход - прием и анализ очередной «квитанции». 2. формальное описание CPN, моделирующей протокол. ниже приведено формальное описание сети на рисунке 5.21 в сокращенном виде. • Множество цветов: ; ; ; ; ; • Множества позиций и переходов показаны непосредственно на рисунке. • Цветовая функция имеет вид • Выражения на дугах показаны непосредственно на рисунке 5.21. Обратим внимание на дуги to и to. Выражения на этих дугах зависят от датчика случайного кода , который с определенной вероятностью вырабатывает значение true или false. Прохождение сигнала по этим дугам рассмотрено ниже. • функции на переходах , определяющие временные задержки при срабатывании переходов, (т.е. передаче сообщений), также показаны на рисунке. • функция инициализации имеет вид (рисунок 5.21) - иными словами, в начальный момент времени (, ) в позиции находится подлежащих передаче пакетов, структура которых определена типом ; - начальный номер передаваемого пакета; . 3. Временной механизм работы CPN. Важную роль в работе рассматриваемой модели играет временной механизм. Все переходы осуществляют временную задержку: - на время , - на время , - на время , задержка срабатывания переходов и является случайной величиной, которую генерирует датчик случайных чисел. На дуге to введена задержка на время . Перемещаемые в сети фишки имеют временные метки, и при их прохождении через переходы значения «прикрепленного» времени возрастают, что моделирует задержку передачи как сообщений, так и «квитанций». Помимо временной задержки, в рассматриваемой CPN моделируется потеря сообщения как при передаче пакета (на to), так и при передаче «квитанции» (на дуге to). Моделирование этих событий состоит в том, что с некоторой вероятностью, генерируемой специальным датчиком , вместо очередного пакета вида по дуге to передается «пустой» пакет , а по дуге to вместо сообщения – «пустое» сообщение . 4. Описание работы CPN. Проследим передачу одного пакета в системе. Пусть часы глобального времени в момент начала передачи показывают . В позиции находится фишка , в позиции - фишки ,…,, а в позиции - фишки ,…,, где ‑номер очередного передаваемого пакета, . При срабатывании из извлекается фишка и с задержкой передается в . Кроме того, фишка с задержкой по дуге to возвращается в , а фишка по дуге to с временной меткой направляется в . Следующим срабатывает переход и со случайной задержкой передает в либо фишку , либо «пустою» - в зависимости от сигнала датчика . Переход анализирует пришедшую в информацию. Если пришел очередной ожидаемый пакет, т.е. если хранимая в фишка имеет тот же номер, что и фишка (), то после задержки происходят следующие действия: - принятый пакет передается получателю в с временной меткой ; - содержимое счетчика в увеличивается на 1; - в отправляется фишка с временной меткой . Если же в пришло «пустое» сообщение (т.е. ), то в ничего не передается, содержимое не изменяется и в позицию отправляется фишка с прежним номером и указанной выше временной меткой. Передача «квитанции» по обратному каналу происходит аналогичным образом. Фишка или с накопленной временной задержкой проходит через переход , при этом временная метка увеличивается на случайную величину . Затем на дуге to происходит проверка потери «квитанции». При срабатывании датчика в позицию вместо фишек или приходит фишка . Переход анализирует пришедшую фишку. При совпадении номера пришедшей фишки с номером отправленной переход срабатывает и отправляет фишку в , в противном случае срабатывания не происходит, и в остается прежний номер пакета . В первом случае может сработать переход и начнется передача пакета в описанном выше порядке. Во втором случае система оказывается заблокированной до тех пор, пока предыдущий пакет по дуге to не вернется в . После этого начнется повторная передача пакета с начальной временной отметкой . Описанная модель протокола передачи данных позволяет исследовать характеристики его работы. Варьируя времена задержки , функции распределения величины и датчика , можно путем имитационного моделирования (многократного «прогона» пакетов через CPN) подобрать параметры протокола, обеспечивающие его эффективную работу. 5.3.4. Об исследовании сетей Петри с помощью ЭВМ 1. Специализированные программные средства. К настоящему времени разработано большое количество программных систем автоматизированного анализа сетей Петри, реализующих различные аспекты их использования: анализ общих сетей Петри и имитация их функционирования, ориентация на различные расширения этих сетей, использование средств машинной графики для ввода и редактирования сетей и др. Методы анализа общих и частных свойств сетей Петри - безопасность, ограниченность, консервативность, живость переходов, достижимость, наличие тупиков и циклов - также успешно реализуются на ЭВМ. Некоторые из этих программных систем являются автономными системами анализа сетей Петри (как, например, самая развитая и полная интерактивная система OVIDE [11]), в других сеть Петри используется в качестве имитационной модели, позволяющей провести верификацию и определить динамические характеристики реального моделируемого объекта (коммуникационных протоколов, систем с управлением потоком данных, логических схем, параллельных систем и др.). Как уже упоминалось в п. 5.2, для анализа систем с помощью CPN создан специальный язык моделирования CPNML и соответствующий пакет программ [43]. Промышленные программы, предназначенные для анализа реальных вычислительных систем с помощью сетей Петри, обычно имеют дело с десятками и сотнями тысяч позиций и переходов и требуют соответствующих вычислительных ресурсов. Так, для моделирования процессора большой ЭВМ CDC 6600 потребовалась сеть Петри, содержащая около 500 тысяч позиций и переходов. В рамках данного ознакомительного курса, естественно, нет необходимости обращаться к таким сложным и дорогостоящим системам. В то же время программирование работы небольших по объему сетей Петри и их расширений не представляет сложности для студентов третьего и четвертого курсов, обучающихся по направлениям, связанным с информационными технологиями. Поэтому составление таких программ предусмотрено в лабораторном практикуме и в качестве упражнений для самостоятельной работы. 2. Использование параллельных и кластерных вычислительных систем. Как мы видели выше, исследование сетей Петри реальных размерностей представляет собой сложную задачу компьютерного моделирования. Поэтому понятен большой интерес к оценке возможностей, которые открываются при использовании для этих целей кластерных вычислительных систем, и алгоритмов параллельных вычислений. Этот интерес оправдывается еще и тем, что кластерные вычислительные системы становятся доступными не только ведущим научным учреждениям, но широкому кругу исследователей, в том числе студентам. Ниже рассмотрен один из возможных подходов к распараллеливанию процесса построения дерева маркировки обыкновенной сети Петри [11]. В отличие от задач, в которых имеется весь исходный материал для вычислений и трудоемкость которых зависит от размерности и трудоемких математических операций, в данном случае основные временные затраты приходятся на порождение дерева маркировок, которое растет динамически. Предсказать скорость роста и размеры дерева либо провести качественный анализ можно лишь в отдельных случаях. проблему можно попытаться решить, если распараллеливать вычисления по мере роста дерева, т.е. обрабатывать каждую новую ветку на отдельном потоке. Таким образом, получится, что каждый узел кластера будет обрабатывать свое собственное поддерево. Для определения некоторых параметров, например поиска циклов, необходимо иметь все дерево маркировок. Поиск циклов необходимо производить после получения новой маркировки. Поэтому нужно либо передавать все дерево на каждый узел кластера (при этом растет нагрузка на сеть, т.к. нужно часто передавать большие объемы данных), либо хранить все дерево маркировок на одном узле. При этом повышаются требования к производительности этого узла, но, с другой стороны, массированные операции парного сравнения разметок могут быть также выполнены в параллельном режиме. В этом же процессе может производиться порождение свободного словаря сети Петри. Если ставить перед собой только задачу прямой достижимости (или другие задачи, не требующие операций над всем деревом маркировок одновременно), то тогда проблема хранения этого дерева вообще не возникает. В противном случае эту проблему можно разрешить, также распределив и эти вычисления. Например, поиск циклов выполнять не сразу по всему дереву, а только в том поддереве, которое доступно в данный момент, а дальнейшем производить вторичный поиск в оставшихся ветках. Программирование и решение этой задачи может составить содержание курсового проекта или выпускной квалификационной работы. 5.4 ГЕРТ-сети В данном разделе мы рассмотрим еще один подход к моделированию систем, представленных в виде сетей (N-схем по классификации первой главы). Как отмечалось ранее, при принятии многих решений, в частности, при проектировании систем, важно знать не просто усредненные значения параметров системы, а иметь более полную информацию, которая представляет собой функцию распределения этих параметров как случайных величин. Рассмотренные ранее методы моделирования не позволяют получать такую информацию. В самом деле, цепи Маркова позволяют легко оценивать математическое ожидание и дисперсию числа пребываний процесса в состояниях невозвратного множества, однако функции распределения этих величин достаточно трудно вычислить. Сети Петри для получения численных результатов требуют проведения имитационного моделирования, которое позволяет путем многократного повторения численных экспериментов оценивать все необходимые статистики, в том числе функции распределения, математические ожидания и дисперсии. Однако этот путь весьма трудоемок и к тому же не позволяет получить аналитические зависимости между параметрами исследуемой системы. В то же время существует еще один вид сетевых моделей, в которых передаваемые по сети ресурсы являются функциями распределения случайных величин или их преобразованиями. Речь идет о так называемых ГЕРТ-сетях (GERT – Graphical Evaluationand Review Technique) [33, 36]. Достоинства таких сетей по сравнению с рассмотренными ранее моделями заключаются в следующем: • возможность получения аналитических выражений для вероятностных характеристик исследуемых процессов; • более полный учет вероятностных характеристик моделируемого процесса – возможность вычисления любого количества моментов функций распределения выходных величин системы; • возможность моделирования параллельно протекающих и циклических процессов. Недостатком ГЕРТ-сетей является в ряде случаем сложность аналитических вычислений для определения моментов функции распределения выходной величины. Формализмы ГЕРТ-сетей напоминают описание раскрашенных сетей Петри и, в принципе, эти сети могут быть представлены как некоторое расширение CPN. Однако мы не воспользуемся этой возможностью и, чтобы не усложнять изложение, будем придерживаться в основном обозначений, принятых авторами книги [33], несколько изменив подход к вычислению передаточных функций. 5.4.1 Описание ГЕРТ-сети Структура ГЕРТ-сети может быть описана в виде графа , (5.23) где – множество узлов сети, -количество узлов, – множество ориентированных дуг. Дуга соединяет два узла и и направлена от к . Среди узлов выделяют источники (начальные вершины графа) истоки (конечные вершины графа). Узлы ГЕРТ-сети интерпретируются как состояния системы, а дуги – как переходы из одного состояния в другое. Такие переходы связываются с выполнением обобщенных операций, характеризуемых плотностью распределения случайных величин и вероятностью выполнения операции. Каждый узел может находиться в пассивном и активном состоянии. В последнем случае говорят, что узел выполнен. Дуга в ГЕРТ-сети также может находиться в пассивном и активном состоянии (выполняться), кроме того, она характеризуется некоторым аддитивным параметром (называемым «весом дуги» или «работой на дуге»). В качестве этого параметра выступает вектор [,], где – условная вероятность выполнения дуги при условии активации узла , а – условная функция распределения времени выполнения дуги при условии, что работа на этой дуге выполняется. Вместо функций могут использоваться их преобразования – производящие функции Mij , которые будут рассмотрены ниже. На дуге , для которой , работа не выполняется, она называется «холостой» дугой. Каждый узел сети имеет входную и выходную функции активации. Входная функция определяет условие, при котором узел может быть активирован. Выходная функция определяет совокупность условий, порождаемых в результате активизации узла. Активация узла означает, что система перешла в некоторое новое состояние, и определяет множество дальнейших работ (операций). Эти работы (операции) начинают свое выполнение сразу после активации узла, являющегося их началом. Активация узла происходит, если его функция на его входной дуге выполнена. После выполнения выходной функции активированного узла он становится неактивным. Виды входных функций. • AND-функция – узел активируется, если выполнены все дуги, входящие в него. • IOR-функция – узел активируется, если выполнена любая дуга или несколько дуг, входящих в него. • EOR-функция – узел активируется, если выполнена любая дуга, входящая в него, при условии, что в данный момент времени может выполняться только одна дуга, входящая в данный узел. Виды выходных функций. • Детерминированная функция (DT) – все дуги, выходящие из узла, выполняются, если узел активирован. • Стохастическая функция (ST) – только одна дуга, выходящая из узла, выполняется с заданной вероятностью, если узел активирован. Графическое изображение описанных узлов приведено на рисунке 5.22. Рис. 5.22 Графическое изображение входных и выходных узлов ГЕРТ-сети Комбинация всех входных и выходных функций дает шесть различных типов узлов, показанных на рисунке 5.23. Рис. 5.23 Возможные комбинации входных и выходных функций 5.4.2 Производящие функции ГЕРТ-сетей Как отмечалось выше, каждая дуга ГЕРТ-сети характеризуется вероятностью выполнения данной дуги , а также распределением вероятностей значения параметра, передаваемого по сети. Пусть случайная величина, характеризующая процесс на дуге (например, время выполнения операции) с условной плотностью распределения . Таким образом, полная характеристика дуги представляет собой вектор . Наряду с распределениями мы будем рассматривать порождаемые ими функции , которые носят название производящих функций и вычисляется следующим образом. Для случайной величины с непрерывным распределением , (5.24) где - вещественный параметр, а интеграл берется по всей области определения случайной величины . Для случайной величины с дискретным распределением , (5.25) где суммирование производится по всем значениям . Предполагается, что интеграл в (5.24) и сумма в (5.25) конечны. Использование производящих функций позволяет оценивать вероятностные характеристики сложных систем, описываемых ГЕРТ‑сетями, более просто, чем при работе непосредственно с распределениями случайных величин. При этом важным свойством производящей функции случайной величины является возможность вычислять начальные моменты распределения . Напомним, что k-м начальным моментом случайной величины с непрерывной функцией плотности распределения называется интеграл , k = 0, 1, … . (5.26) В частности, , ‑ математическое ожидание случайной величины ; второй момент позволяет определить дисперсию случайной величины: . Справедливо утверждение [32]: начальные моменты распределения случайной величины , заданного функцией , равны значениям -й производной от функции в точке : , . (5.27) В частности, первый момент, т.е. математическое ожидание случайной величины определяется выражением , (5.28) а второй момент . (5.29) В таблице 5.3 приведены выражения для некоторых функций распределения, их производящих функций, и первых двух моментов Использование производящих функций позволяет представить характеристику дуги в виде вектора , а произведение этих компонентов (5.30) называется передаточной функцией дуги или ее W-функцией. Смысл передаточной функции заключается в следующем. Если во входном узле ni некоторой дуги aij действует сигналy, то в выходной узел этой дуги nj поступит сигнал x=Wij(s)y. Понятие передаточной функции используется во многих научных дисциплинах, связанных с изучением динамических процессов – в электротехнике, радиотехнике, теории управления и других. Особенность W‑функций, применяемых в ГЕРТ-сетях состоит в том, что W(s) - функция является вещественной функцией вещественного аргумента, в отличие от других определений передаточных функций, которые рассматриваются как комплексные функции комплексного аргумента. Кроме того, преобразование сигнала происходит не в узлах, а на дугах. Таблица 5.3 Характеристики некоторых распределений Тип распределения Производящая функция Мат. ожида-ние Второй момент Пара-метры распре-деления Дискретное Биномиальное Экспоненциальное Нормальное Бета-распределение (равномерное) на отрезке Бета-распределение на отрезке, 5.4.3 Вычисление W-функций для типовых соединений дуг Использование W-функций позволяет вычислять вероятностные характеристики системы, содержащей множество дуг. Для этого необходимо уметь вычислять W-функции для трех типовых соединений: • последовательное соединение дуг; • параллельное соединение дуг; • встречно-параллельное соединение двух дуг, или соединение обратной связью (иногда говорят – петля). Рассмотрим эти случаи. Последовательное соединение а б Рис .5.24 Последовательное соединение дуг ГЕРТ-сети На рисунке 5.24 а изображены две последовательно соединенные дуги, и , на которых заданы независимые случайные величины и со своими распределениями и . В результате выполнения этих дуг получится случайная величина с функцией распределения, равной произведению функций и : . Тогда в соответствии с формулой (5.26) получим выражение для производящей функции величины : (5.31) Обратимся теперь к W-функциям. Для каждой дуги известны функции и . Вероятности выполнения дуг и независимы, следовательно, вероятность выполнения обеих дуг равна их произведению: . Таким образом, получаем, что дуги и эквивалентны одной дуге с передаточной функцией . (5.32) Нетрудно обобщить этот результат на любое число последовательно соединенных дуг. Параллельное соединение Рис. 5.25 Параллельное соединение дуг ГЕРТ-сети На рисунке 5.25 представлена сеть, состоящая из двух параллельных ветвей и , каждая из которых определена своей W-функцией и , причем выходная сторона узла является стохастической. Это означает, что в каждый момент может быть исполнена только одна выходящая дуга, поэтому итоговая W‑функция представляет собой сумму W‑функций отдельных ветвей: . (5.33) Этот результат обобщается на любое количество параллельных дуг при условии, что все они исполняются по правилу EXCLUSIVE-OR («исключающее ИЛИ»). Встречно-параллельное соединение На рисунке 5.26 представлен фрагмент ГЕРТ-сети, содержащей петлю, когда сигнал с выхода узла подается на вход предшествовавшего узла . Рис. 5.26 Встречно-параллельное соединение дуг ГЕРТ-сети Пусть на вход узла приходит сигнал y , он складывается с сигналом обратной связи v, и сумма этих сигналов u проходит через дугу , в результате чего на выходе узла образуется выходной сигнал x. Но этот сигнал по дуге с передаточной функцией возвращается на вход узла , превращаясь в v. Учитывая свойство передаточных функций, получаем следующие соотношения между сигналами: , , , откуда, исключая переменные u и v, получаем , то есть передаточная функция встречно-параллельного соединения равна . (5.34) 5.4.4 Модель процесса обучения как ГЕРТ-сеть Проиллюстрируем возможности ГЕРТ-сетей на примере модели процесса интерактивного прохождения учебного курса. Процесс заключается в следующем. Учащийся входит в обучающую систему и регистрируется в ней, после чего приступает к изучению разделов учебного курса. Изучив очередной раздел и выполнив контрольные задания, обучаемый переходит к изучению следующего раздела. Изучив все разделы, обучаемый получает возможность сдать экзамен. Если экзамен сдан с положительной оценкой, то процесс изучения курса считается успешно завершенным. В противном случае имеются две альтернативы: повторное изучение курса или отказ от дальнейшего обучения. Рис. 5.27 ГЕРТ-сеть, моделирующая процесс обучения Модель процесса в виде ГЕРТ-сети представлена на рисунке 5.27. Как видно из рисунка, эта сеть содержит множество узлов и множество A, содержащее 7 дуг, на которых выполняются следующие операции: a12 ‑ вход и регистрация в обучающей системе; a23 – изучение очередного раздела; a32 – переход к изучению следующего раздела; a34 – сдача экзамена; a42 – переход к повторному изучению курса; a45 – отказ от дальнейшего изучения; a46 – успешное завершение курса. Характеристики процессов, выполняемых на дугах (в часах), приводятся в таблице 5.4. Таблица 5.4 Характеристики ГЕРТ-сети Название дуги Вероятность выполнения Тип распределения Параметры распределения Производящая функция 1 Равномерное 1 Нормальное 0,2 Нормальное 0,8 Нормальное 0,1 Нормальное 0,05 Постоянная величина 0,85 Постоянная величина Выпишем выражения для передаточных функций : (5.35) Составим передаточные функции для рассматриваемой системы. Предварительно рассмотрим фрагмент сети, состоящий из узлов , и дуг , . Этот фрагмент образует соединение обратной связью, и в соответствии с формулой (5.34) его передаточная функция будет равна . (5.36) В результате схема ГЕРТ сети упростится и примет вид, показанный на рисунке 5.28. Рис.5.28 Преобразованная ГЕРТ-сеть. Воспользуемся формулами (5.32) и (5.34) и получим передаточную функцию ГЕРТ-сети от узла до узла , что по условиям задачи соответствует успешному завершению курса: (5.37) Подставив в формулу (5.37) выражения для передаточных функций всех дуг и проделав некоторые преобразования, получим . (5.38) Для того, чтобы определить производящую функцию рассмотренной системы, воспользуемся формулой , которая следует из соотношений , , т.к. . Из (5.38) следует , следовательно, производящая функция системы имеет вид . (5.39) Перейдем теперь к вычислению моментов распределений сигнала на выходе системы – поступившего по дуге . В соответствии с формулой (5.28), вычислив производную при , получим оценку первого момента – математического ожидания час. Далее, вычислив вторую производную при по формуле (4.28), получим второй момент распределения функции : час2, откуда час2, час. (5.40) Таким образом, мы получили, что в данной системе среднее ожидаемое время успешного прохождения курса обучения составляет 12,08 часа, а среднеквадратичное отклонение от среднего равно 6,37 часа. Вероятность такого исхода равна 0,85/(0,85+0,05)=0,945. Рассмотрим теперь цепочку узлов от до , что соответствует неудачному завершению процесса обучения. Эта цепочка отличается от рассмотренной ранее только последним звеном ‑ вместо . Проделав выкладки, аналогичные приведенным выше, получим откуда (5.41) Вычислив первый и второй моменты случайной величины y5, получим час, час2, час2, час. Итак, среднее время обучения при неудачном завершении курса составляет 11,08 часа, а среднеквадратичное отклонение от среднего равно 6,36 часа. Вероятность такого исхода равна 0,05/(0,85+0,05)=0,055. Формулы для первой и второй производных функций здесь не приводятся ввиду их громоздкости. Сложность аналитического вычисления производных для систем реальной размерности требует либо применения методов численного дифференцирования, либо использования систем символьных вычислений, которые в настоящее время получили достаточное развитие и реализованы в пакетах MATHCAT и MATLAB [36]. При численном дифференцировании задаются значениями параметра sв окрестности точки s=0 и малым шагом h. Например, вычислив значения функции в точках , можно затем по формулам численного дифференцирования оценить значения производных: Аналогичным образом можно оценить и моменты функции распределения более высоких порядков. Следует учесть, что для некоторых видов распределений (например, для бета-распределений и ) при вычислении и возникают неопределенности типа , а попытка определить эти функции численно по формулам вида (5.42) приводит к ошибке типа «деление на ноль». Поэтому такие неопределенности нужно либо устранять аналитически (например, по правилу Лопиталя), либо – причисленном определении производных – строить вычисление в окрестности нулевой точки таким образом, чтобы окрестность не включала саму эту точку. Располагая вычисленными моментами функции распределения выходной величины, можно затем оценить саму функцию распределения, задавшись ее видом [37]. Однако мы этот вопрос не рассматриваем. Задания для самостоятельной работы 1. Составьте обыкновенную сеть Петри (СП) для моделирования системы массового обслуживания заявок (рисунок 5.10 б) с использованием ингибиторных связей. 2. Составьте СП для моделирования очереди (правило работы FIFO) из трех ячеек. Решение показано на рисунке 5.29. p0 - буфер входных заявок, p7 - буфер обслуженных заявок, p8 - разрешение разгрузки выходного буфера, p2, p4, p6 - ячейки очереди свободны, p1, p3, p5 - ячейки очереди заняты, t0 - загрузка входного буфера, ti - начало обслуживания заявки i-й ячейкой (i=1,2,3), t4 - загрузка выходного буфера, t5 - разгрузка выходного буфера. Рис. 5.29 Сеть Петри, моделирующая очередь Составьте дерево маркировок данной сети при обслуживании двух заявок, поступивших в систему. 3. На основе решения задачи 2 составьте СП для моделирования стека из 3 ячеек (правило работы LIFO). 4. На основе решения задач 2 и 3 составьте СП для моделирования дека из 3 ячеек (примечание: дек - это очередь с двусторонним движением, загрузка и выгрузка происходит с обоих концов). 5. Решите задачу 2 с использованием ингибиторных связей. 6. Составьте СП для моделирования одноколейной кольцевой железной дороги из 5 участков и 5 станций, по которой в одном направлении движутся два поезда. 7. Составьте обыкновенную СП и дерево всех маркировок в задаче о мудрецах для (п. 5.3.1) и выпишите все слова свободного языка СП. 8. Модификация задачи о мудрецах (п. 5.3.1.). Составьте СП для этой ситуации при условии, что палочки складываются в одну коробочку и извлекаются из нее следующим образом: а) по одной; б) по две; в) сперва мудрец берет правую палочку, затем левую, а освобождает палочки одновременно. Составьте дерево маркировок для каждого из указанных случаев (). 9. Составьте и проанализируйте работу ГЕРТ-сети для системы, изображенной на рисунке 5.11 б, задавшись распределением вероятностей на дугах. Переходы рассматривайте как узлы ГЕРТ-сети, а позиции – как дуги. Вероятности и распределения задайте сами. Глава 6 Примеры систем поддержки принятия решений В первой главе в разделе 1.4 были приведены общие сведения о системах поддержки принятия решений (СППР). В данной главе мы попытаемся конкретизировать эту информацию. В настоящее время разработано и эксплуатируется множество систем поддержки принятия решений (СППР) [2, 4, 21, 22, 26]. Архитектура и структура СППР существенно зависят от вида задач, для решения которых они разрабатывается, от доступных данных, информации и знаний, а также от пользователей системы. В книге [35] описаны две системы поддержки принятия решений – Quick Choice и NEYDIS, в которых реализованы методы решения широкого круга задач. Кроме того, в настоящее время несколько десятков различных фирм выпускают продукты, способные решать те или иные задачи, возникающие в процессе проектирования и эксплуатации систем СППР. Сюда входят СУБД, средства загрузки, трансформации, выгрузки данных, инструменты для OLAP-анализа и многое другое. Анализ рынка таких средств далеко выходит за рамки данного пособия, поэтому мы ограничимся кратким описанием двух действующих систем поддержки принятия решений, которые актуальны для Красноярского края и близки к профилю Сибирского федерального университета. 6.1 Система ЭСПЛА Система поддержки принятия решений ЭСПЛА (Экспертная система по ликвидации аварий) разработана коллективом специалистов Института вычислительного моделирования СО РАН (г. Красноярск) под руководством доктора технических наук профессора Л.Ф. Ноженковой [12, 24]. ЭСПЛА предназначена для решения следующих задач. • Создание единого информационного пространства органов управления МЧС на уровне субъекта Федерации и Федерального округа путем внедрения во все подчиненные органы управления системы сквозного оперативного сбора данных, актуализации баз данных, контроля и оперативного анализа информации. • Обеспечение оперативного управления, осуществляемого Центрами управления в кризисных ситуациях, а в повседневном режиме функционирования – мониторинг и контроль обстановки, работу с прогностической и аналитической информацией. • Обеспечение оперативного управления в режиме повышенной готовности и в режиме чрезвычайной ситуации (ЧС) – моделирование масштабов и последствий стихийных бедствий, техногенных аварий и катастроф, формирование оперативных отчетных форм и рекомендаций по действиям в ЧС в соответствии с реальной обстановкой. Функциональная структура системы показана на рисунке 6.1. Система позволяет организовать сбор, контроль, анализ, агрегацию большого объема информации и передачу ее в вышестоящие органы управления, а также применять для поддержки принятия решений при угрозе или возникновении ЧС различного характера. Ниже приведена краткая характеристика работы системы в различных режимах функционирования. Риc. 6.1 Схема сбора, хранения и использования данных на уровне Регионального центра и Главных управлений МЧС субъектов 6.1.1 Режимы функционирования системы В повседневном режиме деятельности органы управления МЧС получают данные ежедневного мониторинга геофизической, сейсмической, радиационной, химической, гидрологической, лавинной, лесопожарной, лесопатологической, санитарно-эпидемиологической, экологической обстановки. Также проводится контроль состояния потенциально опасных объектов, транспортных коммуникаций, территорий крайнего Севера, готовности аварийно-спасательных формирований, материально-технических резервов для ликвидации ЧС, объектов защиты населения и многое другое. Все это представляет собой огромные массивы данных, необходимых для принятия решений по предупреждению ЧС, управления силами и средствами МЧС. На основе данных мониторинга обстановки можно оценить вероятность ЧС, ранжировать территории по степени опасности, определять показатели рисков. Для этого необходимы длинные ряды наблюдений, которые формируются в хранилищах данных органов управления МЧС, интегрированных со средствами анализа и отображения данных. Для более детального анализа выборки из больших наборов применяются средства оперативного on-line анализа (OLAP), интегрированные с ГИС. Эксперт-аналитик может просмотреть изменение ситуации за произвольный период, отобразить данные на карте, сформировать отчетные документы по стандартным формам. Экспертная система позволяет автоматически отслеживать резкие изменения обстановки и оповещать оператора о предпосылках ЧС. В режиме чрезвычайной ситуации управление ликвидацией ЧС происходит обычно в себя несколько этапов. На каждом этапе жизненно необходимо выполнение в короткий срок определенной последовательности действий, характер которых может меняться в зависимости от условий аварийной ситуации. В основу действий всех сил и средств в чрезвычайной ситуации, независимо от уровня управления, должно быть положено решение руководителя. Сущность решения состоит в определении цели действий, способов ее достижения, сил, средств и времени, требующихся для этого, порядка действий в соответствии с протеканием процесса ликвидации ЧС. Оперативное управление процессом ликвидации ЧС включает следующие этапы: • информирование персонала объекта и населения близлежащих кварталов об аварийной обстановке и принимаемых мерах по обеспечению безопасности; • выявление, оценку и прогнозирование аварийной обстановки, факторов техногенного воздействия на человека и окружающую среду; • организацию и осуществление аварийного технологического контроля, локализацию аварийных процессов; • формирование и принятие управленческих решений по локализации аварии (катастрофы), предотвращению формирования опасных факторов техногенного воздействия, а также, в случае развития и эскалации аварии, предотвращению или максимальному ослаблению воздействия этих факторов на человека и окружающую среду; • доведение задач до специальных служб и формирований, других структур, привлекаемых для реализации принятых решений. Общая схема оперативной деятельности по ликвидации чрезвычайных ситуаций приведена на рисунке 6.2. Процессы ликвидации техногенной ЧС характеризуют следующие четыре блока: • блок экстренных мер, • блок анализа и формирования решений, • блок защиты и обеспечения, • блок аварийно-спасательных и других неотложных работ (АС и ДНР). Первые два блока выполняются последовательно, причем в зависимости от типа аварии, угрозы или возникновения ЧС, их состав может изменяться. Блок защиты и обеспечения и блок АС и ДНР работают одновременно, причем происходит постоянное обращение к блоку анализа и формирования решений для того, чтобы скорректировать действия формирований, участвующих в ликвидации ЧС согласно складывающейся обстановке. Схема разработана с учетом действий в самой сложной обстановке – в условиях аварии с выбросом опасного химического вещества. При других типах аварий блоки изменяют свою структуру, например, при радиационной аварии «обеззараживание» заменяется на «дезактивацию», а при пожарах или авариях на коммунально-энергетических сетях эти процессы могут быть не нужны. Рис. 6.2 Схема оперативного управления ликвидацией ЧС 6.1.2 Принятие решений при техногенных авариях Рассмотрим процедуры принятия решений при техногенных авариях. В этом случае система выполняет следующие действия: • запрашивает у пользователя тип ЧС и в зависимости от этого загружает необходимый модуль расчета масштабов аварии; • производит расчет зон действия поражающих факторов ЧС, выводит отчет результаты моделирования; • запрашивает у пользователя информацию о месте аварии; • моделирует зону поражения, формирует тематическую карту и список объектов в зоне ЧС; • экспертная подсистема формирует текст оповещения персонала объекта и населения, отчетные документы по формам 2/ЧС, ОДС-2, ОДС-4, рекомендации по действиям в ЧС, справку об объекте и типе вещества, участвующего в аварии. Модель ситуации задается в редакторе баз знаний и может быть дополнена или изменена администратором системы. Экспертная подсистема формирует необходимые решения по управлению в ЧС, обращаясь к другим модулям системы. Необходимая информация о месте аварии и характеристиках формирований извлекается из баз данных, последствия ЧС моделируются в ГИС и с помощью базы знаний с применением расчетных методик формируются рекомендации по действиям в ЧС. Вывод представляет собой эстафету присоединенных процедур, которые автоматически вызывают необходимые модули системы. На рисунке 6.3 показаны результаты расчета последствий химической аварии по методике ТОКСИ. Эту методику обычно применяют для проведения сложных расчетов при составлении Деклараций и Паспортов безопасности промышленных объектов. В условиях ЧС обычно применяются упрощенные методики (например, РД-52.254-90), не требующие ввода большого числа параметров. В данной системе пользователь может выбирать метод расчета, способ визуализации (карта, график) и формы представления результатов. Сформированные рекомендации системы представляют собой проекты документов, оформленные согласно стандартам МЧС России. Интегрированные в систему методики оценки последствий взрывов и пожаров нефтепродуктов позволяют значительно расширить функциональные возможности. Система используется на различных уровнях принятия решений – от промышленного объекта до регионального центра. База данных по потенциально опасным объектам сформирована на основе Реестра потенциально опасных объектов, содержащего основную информацию по химически, взрыво- и пожароопасным объектам. Она представляет собой сложную многостраничную форму, позволяющую просмотреть всю необходимую информацию об объекте и вывести ее в виде отчета. Все промышленные объекты имеют картографическую привязку, причем система использует картографический материал, детализированный в зависимости от задачи. База данных по опасным веществам представляет собой электронный справочник, содержащий аварийные карточки, используемые при перевозках опасных грузов железнодорожным транспортом. Она содержит более 650 карточек, в которых описаны физические и химические свойства веществ, их взрыво- и пожароопасность, действия при различного рода авариях – оказание первой медицинской помощи пострадавшим, использование средств индивидуальной защиты и так далее. Рис. 6.3 Результаты моделирования разгерметизации емкости с аммиаком по методике ТОКСИ-3 6.1.3 Использование информационных ресурсов ЭСПЛА-ПРО интегрирует не только программные ресурсы на основе модульного принципа, но и большие объемыинформационных ресурсов. Информационная среда содержит базы знаний, базы данных, картографические базы. Продукционные базы знаний представляют информацию о возможных сценариях ЧС и мероприятиях, направленных на смягчение их последствий. Базы данных содержат сведения об источниках и реципиентах риска, силах и средствах мониторинга, предупреждения и ликвидации ЧС, статистическую и оперативную информацию. Картографические базы данных содержат электронные карты местности. Используемая в системе технология OLAP (On-Line Analytical Processing) использует многомерную модель данных, которая позволяет адекватно представить процесс работы с информационными объектами, наглядно описать основные аналитические операции, оптимальным образом построить физическую модель данных для хранения и обработки запросов. OLAP обеспечивает высокую скорость работы с данными при выполнении аналитических операций, наглядное представление результатов и оперативное построение отчетов. Cпецифика OLAP-технологии требует концентрации данных в так называемых хранилищах данных (ХД). Организация ХД отличается от обычных реляционных баз. ХД системы содержит собственно информационные таблицы, обновляемые с помощью системы СтатЭкспересс, согласно Регламенту сбора и обмена информацией и справочники, которые необходимы при анализе данных. Кроме того, в Хранилище может находиться дополнительная информация: базы знаний, шаблоны отчетных форм и другое. Оперативный анализ данных можно выполнять как в самой системе ЭСПЛА-ПРО, так и в виде отдельной программы Аналитик. Система позволяет строить различные представления информации в виде кросс-таблиц и кросс-диаграмм на основе оперативной аналитической обработки данных. Особого внимания заслуживают картографические данные. Большая часть объектов в хранилище данных имеет пространственную привязку, что позволяет строить тематические карты, аналитические картограммы, оперативно «собирать» карты обстановки, сложившейся или прогнозируемой при возникновении ЧС. Система ЭСПЛА получила высокую оценку специалистов, она стоит на боевом дежурстве в органах управления по делам ГО и ЧС Красноярского края с 1998 года. 6.2 Информационная система дистанционного мониторинга лесных пожаров Федерального агентства лесного хозяйства РФ В настоящем разделе описана одна из наиболее крупных распределенных систем дистанционного мониторинга природных процессов, охватывающая всю территорию России – Информационная система мониторинга лесных пожаров Федерального агентства лесного хозяйства (ИСДМ-Рослесхоз)[1, 2]. Дана краткая характеристика системы, перечислены решаемые системой задачи и основные потребители информации, описаны источники космических данных, а также центры приема и обработки информации. Описаны информационные продукты, создаваемые системой, а также методы прогнозирования параметров лесных пожаров и принятия решений на основе данных ИСДМ-Рослесхоз. 6.2.1 Общая характеристика системы Система ИСДМ-Рослесхоз создавалась, начиная с 1995 года, в рамках различных проектов. Создание ее элементов в различные годы финансировалось Рослесхозом, МПР России, РАН, фондами РФФИ и TASIS. По заказу Рослесхоза в 2003 году были проведены работы по унификации элементов ИСДМ-Рослесхоз, и в конце пожароопасного сезона она была введена в опытную эксплуатацию. В 2004 году проводилась опытная эксплуатация и доработка элементов системы. В 2005 году был разработан и утвержден первый регламент работы системы, и она была введена в промышленную эксплуатацию. Следует отметить, что система, даже находясь в промышленной эксплуатации, продолжает постоянно развиваться, у нее появляются новые возможности и задачи, связанные, в том числе, с совершенствованием системы управления лесами в Российской Федерации. Система создавалась большим консорциумом, в состав которого в различные годы входили организации и институты Рослесхоза, Российской академии наук, Росгидромета, организации других ведомств и частные предприятия. Все эти годы постоянно участвовали в создании, внедрении, эксплуатации и развитии системы, в частности, следующие организации: ФГУ «Авиалесоохрана» (АЛО), Институт космических исследований Российской академии наук (ИКИ РАН), Центр по проблемам экологии и продуктивности лесов Российской академии наук (ЦЭПЛ РАН), Институт солнечно-земной физики Сибирского отделения Российской академии наук (ИСЗФ СО РАН), Санкт-Петербургский научно-исследовательский институт лесного хозяйства (СПбНИИЛХ) и другие организации. Космический мониторинг лесных пожаров, проведение которого обеспечивает ИСДМ-Рослесхоз, является в настоящее время составной частью государственной программы инвентаризации лесов и, в соответствии с Постановлением Правительства РФ от 26 июня 2007 г. № 407 «О проведении государственной инвентаризации лесов», выполняется с целью выявления и учёта изменений состояния лесов, происходящих в результате негативных воздействий лесных пожаров, и причин их возникновения. Космический мониторинг выполняется также в целях проведения оценки эффективности мероприятий по охране лесов от пожаров, их тушению и соответствия этих мероприятий плану субъекта Российской Федерации, лесохозяйственному регламенту и проекту освоения лесов. При этом одной из важных задач космического мониторинга является оценка последствий действия лесных пожаров. Эти задачи являются сегодня основными для ИСДМ-Рослесхоз. В то же время ИСДМ-Рослесхоз продолжает также решать задачи по оперативному обеспечению информацией работ по организации мониторинга и тушения пожаров. Следует отметить, что создание ИСДМ-Рослесхоз еще в 2005 году позволило фактически определить новые уровни мониторинга и охраны лесов. В зависимости от уровня интенсивности соответствующих мероприятий вся территория лесного фонда РФ делится в настоящее время на следующие зоны мониторинга: • наземного и авиационного мониторинга; • космического мониторинга первого уровня; • космического мониторинга второго уровня. Общая картина расположения данных зон приведена на рисунке 6.4. К зоне космического мониторинга первого уровня относятся удаленные и труднодоступные территории, на которых авиапатрулирование не производится и не планируется, а тушение лесных пожаров выполняется только при наличии угрозы населённым пунктам или объектам экономики. Следует отметить, что на этих территориях статистика о действующих пожарах и их последствиях формируется исключительно на основе спутниковых данных. К зоне космического мониторинга второго уровня относятся территории, на которых плановое авиационное патрулирование не проводится. Обнаружение лесных пожаров производится преимущественно с использованием данных мониторинга лесных пожаров ИСДМ-Рослесхоз. Тушение лесных пожаров производится с применением авиации и авиапожарных команд. Рис. 6.4 Зоны мониторинга лесных пожаров в Российской Федерации ИСДМ-Рослесхоз должна обеспечивать информацией следующих основных пользователей: • Федеральное агентство лесного хозяйства Российской Федерации (Рослесхоз); • заинтересованные федеральные министерства, агентства и службы, ответственные за мониторинг и охрану окружающей среды; • агентства, службы, министерства и организации, обеспечивающие работы по мониторингу и тушению лесных пожаров в субъектах РФ и федеральных округах; • отраслевые институты и научные организации Рослесхоза; • аппарат, службы и региональные представительства Министерства по ГО и чрезвычайным ситуациям РФ. Для решения поставленных задач ИСДМ-Рослесхоз должна оперативно обеспечивать предоставление пользователям системы объективной, однородной (сопоставимой по всей территории России) информации. Для этого она производит: • сбор данных о регистрации пожаров на охраняемой и неохраняемой территориях; • сбор данных о состоянии окружающей среды, необходимых для организации работ по обнаружению и тушению лесных пожаров; • сбор информации, необходимой для проведения оценок последствий действия лесных пожаров; • оперативную обработку данных с целью построения информационных продуктов, необходимых для принятия управленческих решений при организации и проведении работ по обнаружению и тушению лесных пожаров; • оперативное предоставление информации, необходимой для принятия управленческих решений, в том числе для оценки эффективности принимаемых мер и использования средств для организации мониторинга и тушения лесных пожаров. • оценку последствий действия лесных пожаров по данным дистанционных наблюдений; • формирования различных отчетных форм на основе информации наземного, авиационногои спутникового мониторинга; • организацию оперативного и долговременного хранения данных, собранных и обработанных системой, и информационных продуктов; • проведение комплексных проверок и детального анализа информации по отдельным действующим пожарам с целью оценки качества и объективности информации, полученной на основе данных наземного, авиационного и спутникового мониторинга; • информационную поддержку и обучение пользователей по вопросам использования данных ИСДМ-Рослесхоз; • постоянное совершенствование и развитие элементов ИСДМ-Рослесхоз для устранения выявленных в процессе эксплуатации недостатков и расширения ее функциональности. Основными источниками информации для ИСДМ-Рослесхоз в настоящее время являются: • данные о лесных пожарах, полученные от организаций и служб, обеспечивающих мониторинг и тушение лесных пожаров; • информация, полученная на основе данных, поступающих со спутниковых систем дистанционного зондирования Земли (далее спутниковые данных); • метеоинформация, поступающая из организаций Федеральной службы по гидрометеорологии и мониторингу окружающей среды и других открытых источников; • данные регистрации молниевых разрядов; • данные наземных и авиационных обследований отдельных пожаров, выполненных специалистами авиалесоохраны (АЛО); • различная картографическая информация. 6.2.2 Использование спутниковых данных Безусловно, ключевыми в системе являются спутниковые данные, поскольку именно они позволяют оперативно получать информацию по всей территории лесного фонда Российской Федерации (1100 млн га). Поэтому подробнее рассмотрим работу ИСДМ-Рослесхоз именно со спутниковыми данными. Основными задачами, для решения которых в ИСДМ-Рослесхоз используются в настоящее время спутниковые данные, являются: • получение оперативной информации для оценки метеообстановки (в первую очередь, о состоянии облачности); • оперативная регистрация зон с подозрениями на лесные пожары на охраняемых территориях; • оперативная оценка характеристик действующих пожаров (площадь, направление развития, задымленность и т.д.) по данным о зонах активного горения; • оценка площадей, пройденных огнем, на основе анализа данных об изменении состояния растительности до и после пожара; оценка степени повреждений лесов на площадях, пройденных огнем; • определение типов территории, на которой действуют пожары (покрытая лесом, не покрытая лесом), уточнение площадей, пройденных огнем, на основе анализа данных высокого пространственного разрешения; комплексный анализ данных об отдельных пожарах, в том числе для проверки информации, предоставляемой региональными службами; • получение отчетных форм и статистической информации о пожарах и их последствиях; • уточнение картографической информации; выявление «устойчивых огней» (постоянно действующих тепловых источников). Для решения указанных задач в ИСДМ-Рослесхоз используются следующие спутниковые данные. Данные, получаемые приборами AVHRR, установленными на спутниках серии NOAA. Эти данные используются в системе для детектирования подо-зрений на действующие пожары и построения различных изображений облачности. Данные, получаемые приборами MODIS, установленными на спутниках TERRA и AQUA. Эти данные также используются в системе для детектирования подозрений на действующие пожары и построения различных изображений облачности. Они используются при оперативной оценке площадей, пройденных огнем на основе информации об активном горении. Данные MODIS используются для оценки площадей, пройденных огнем, и повреждений лесов на этих площадях на основе анализа состояния растительности до и после действия пожаров. Данные, получаемые прибором SPOT-VGT, который установлен на спутнике SPOT. Эти данные используются для оценки площадей, пройденных огнем, и повреждений лесов на этих площадях на основе анализа состояния растительности до и после действия пожаров. Результаты обработки данных приборов HRV и HRVIR, установленных на спутниках SPOT2 и SPOT 4. Эти данные используются для уточнения оценок площадей, пройденных огнем, а также верификации автоматических алгоритмов выявления площадей, пройденных огнем, и оценки степени повреждений лесов. В ряде случаев они также используются для уточнения картографических основ. Данные прибора Ресурс ДК и LANSATETM+, установленных соответственно на спутниках РЕСУРС ДК и LANDSAT. Эти данные в основном используются для выборочного контроля площадей, пройденных огнем, и верификации автоматических алгоритмов выявления площадей, пройденных огнем, и оценки степени повреждений лесов. В ряде случаев они также используются для уточнения картографических основ. Данные прибора LANSATETM+ используются в системе также для обеспечения автоматического уточнения географической привязки данных приборов HRV и HRVIR.При необходимости в систему также поступают данные других спутников. Для работы с указанной информацией в ИСДМ-Рослесхоз создана распределенная автоматизированная система сбора и обработки спутниковых данных, которая позволяет в настоящее время оперативно получать информацию практически по всей территории России. Система позволяет в настоящее время получать данные перечисленных выше приборов в следующем режиме. Данные AVHRR получаются ежедневно, частота их получения для отдельных регионов может превышать 12 раз в сутки. Данные MODIS получаются ежедневно, частота их получения для отдельных регионов может превышать 6 раз в сутки. Данные SPOT-VGT поступают в систему 1 раз в 10 дней (безоблачный композит). Результаты обработки данных HRV и HRVIR получаются ежедневно, однако, поскольку эти приборы имеют достаточно узкую полосу наблюдения, по отдельным регионам в среднем имеется 2-3 безоблачных наблюдения за сезон. При этом по некоторым регионам могут быть получены более частые серии данных, и в то же время могут встретиться регионы, по которым данные за сезон отсутствуют. Данные Ресурс ДК, LANSATETM+ и других спутниковых систем получаются эпизодически, обычно по районам, по которым требуется провести дополнительный анализ и проверку информации. 6.2.3 Центры приема и обработки спутниковых данных В настоящее время в систему автоматически поступают данные из многих источников. Оперативные данные прибора AVHRR (спутники NOAA) поступают из следующих центров: • Центр приема Института космических исследований Российской академии наук (ИКИ РАН) г. Москва. • Западносибирский региональный центр приема и обработки данных (ЗапСибРЦПОД) г. Новосибирск. • Центр приема Института леса СО РАН (ИЛ СО РАН) г. Красноярск. • Дальневосточный региональный центр приема и обработки данных (ДВРЦПОД) г. Хабаровск; • Центр приема ЮНИИ ИТ г. Ханты-Мансийск. Оперативные данные прибора MODIS (спутники TERRA, AQUA) поступают из следующих центров: • Центр приема ГУ НИЦ «Планета» г. Москва; • Западносибирский региональный центр приема и обработки данных (ЗапСибРЦПОД) г. Новосибирск; • Центр приема Института леса СО РАН (ИЛ СО РАН) г. Красноярск; • Дальневосточный региональный центр приема и обработки данных (ДВРЦПОД) г. Хабаровск; • Центр приема ЮНИИ ИТ г. Ханты-Мансийск; • Центр приема и обработки спутниковых данных ОАО «Самара-Информспутник» г. Самара. Продукты обработки данных прибора MODIS (MOD09 и MOD 14) поступают: • из архивов данных Геологической службы США (USGS) (ежедневных продуктов MOD09), • из центра обработки Университета штата Мериленд США (результаты детектирования пожаров MOD 14). Продукты обработки данных прибора VGT (спутник SPOT) поступают из архивов компании VITO. Результаты обработки данных приборов HRV и HRVIR (спутник SPOT) поступают из следующих центров; • Западносибирский региональный центр приема и обработки данных (ЗапСибРЦПОД) г. Новосибирск; • Дальневосточный региональный центр приема и обработки данных (ДВРЦПОД) г. Хабаровск; • Центр приема и обработки спутниковых данных ОАО «Самара-Информспутник» г. Самара. Центры, через которые в систему поступают оперативные данные, обеспечивают покрытие практически всей территории России. Зоны покрытия этих центров приведены на рисунке 6.5. При этом для некоторых территорий достигается пятикратное потенциальное дублирование приема. В основном же по территории обеспечивается трехкратное дублирование. Это обеспечивает достаточно устойчивое поступление в систему оперативных данных. Автоматические комплексы обработки и архивации данных установлены в следующих организациях: • ФГУ «Авиалесоохрана» г. Пушкино (основной центральный узел системы) и Институт космических исследований Российской академии наук (ИКИ РАН) г. Москва (дублирующий центральный узел системы). • Центр приема ГУ НИЦ «Планета» г. Москва; • Западносибирский региональный центр приема и обработки данных (ЗапСибРЦПОД) г. Новосибирск; • Дальневосточный региональный центр приема и обработки данных (ДВРЦПОД) г. Хабаровск; • Центр приема ЮНИИ ИТ г. Ханты-Мансийск; • Центр приема Института леса СО РАН (ИЛ СО РАН) г. Красноярск; • Центр приема и обработки спутниковых данных ОАО «Самара-Информспутник» г. Самара. Рис. 6.5 Зоны видимости станций центров приема, использующихся в ИСДМ-Рослесхоз В этих же центрах установлены и информационные узлы, обеспечивающие пользователям оперативный доступ к данным. Эти узлы обеспечивают представление данных через WEB-интерфейсы (http://www.nffc.aviales.ru), специализированные ГИС и систему автоматизированной рассылки данных. 6.2.4 Информационные продукты, формируемые системой Поскольку ИСДМ-Рослесхоз предоставляет информацию по очень большой территории, одним из основных требований к предоставляемой системой информации является ее однотипность и сопоставимость для разных территорий. Поэтому в системе автоматически формируются однотипные информационные продукты по всей территории России. Схема расположения информационных серверов ИСДМ-Рослесхоз приведена на рисунке 6.6. К основным продуктам, формирующимся в системе на основе спутниковых данных, сегодня можно отнести следующие. • Различные пространственные и цветосинтезированные композитные изображения, полученные по данным AVHRR и MODIS, предназначенные для оценки состояния и динамики облачных структур и действующих пожаров. Для работы с этими данными создана система динамических интерфейсов, позволяющих пользователям самостоятельно выбирать произвольный регион и осуществлять анализ данных, полученных по этому региону. Пример такого интерфейса приведен на рисунке 6.7. • Автоматически выделенные точки с подозрениями на действующие пожары. Данные точки получаются на основе обработки данных приборов AVHRR и MODIS. Для обработки данных AVHHR используется алгоритм, разработанный в ИСЗФ СО РАН, для обработки данных MODIS используется стандартный алгоритм MOD 14. Рис. 6.7 Пример динамического интерфейса ИСДМ Рослесхоз, обеспечивающего работу с архивами данных высокого пространственного разрешения После выполнения автоматической обработки в центрах приема и обработки спутниковых данных может быть также проведена их ручная коррекция с помощью программного обеспечения и методик, разработанных для ИСДМ-Рослесхоз в ИСЗФ СО РАН. Выделенные точки с подозрениями на действующие пожары заносятся в специализированные базы данных, использующиеся в системе. В дальнейшем эти базы данных используются для создания следующих динамических картографических продуктов на информационных серверах или в ГИС ИСДМ-Рослесхоз. • Информация о площадях, пройденных огнем, получается на основе автоматической обработки временных рядов данных приборов SPOT-VGT и MODIS. Обработка производится с помощью специального алгоритма. • Информация о степени повреждения лесов на площадях, пройденных огнем. Обработка производится с помощью специализированного алгоритма, разработанного в ИКИ РАН. • Устойчивые цветосинтезированные изображения высокого пространственного разрешения, полученные на основе данных приборов HRV, HRVIR, LANDSATETM+, РЕСУРС ДК. Для работы с этими данными в системе также реализованы специальные динамические интерфейсы, обеспечивающие возможность оперативного выбора и анализа информации. • На основе информации о выделенных подозрениях на действующие пожары и оценок площадей, пройденных огнем, в системе оперативно формируются различные отчетные формы - как по отдельным действующим пожарам, так и по административным субъектам. Доступ ко всем этим и другим информационным продуктам можно получить на информационных серверах ИСДМ-Рослесхоз. Следует также отметить, что в ИСДМ-Рослесхоз формируется большое число различных информационных продуктов (формы, карты) на основе не только спутниковой информации, но и метеоданных, информации наземного и авиационного мониторинга и данных грозопеленгации. В настоящее время система доступа к данным и интерфейсы, использующиеся на информационных серверах ИСДМ-Рослесхоз, позволяют проводить комплексный анализ этих данных совместно с информационными продуктами, получаемыми на основе спутниковых данных. Следует отметить, что ИСДМ-Рослесхоз постоянно развивается. Ее развитие в основном связано с появлением возможностей получения новых типов информации (в основном спутниковых данных) и расширением круга задач, стоящих перед системой. Так, например, в связи с изменением структуры управления лесами, связанной с вводом в действие нового лесного кодекса, одной из основных задач системы стало предоставление информации для оценки эффективности проводимых в регионах работ по мониторингу и тушению лесных пожаров. Для решения этих задач в 2007 году были существенно переработаны блоки и методики, обеспечивающие сравнение информации, полученной на основе спутниковых, авиационных и наземных наблюдений, а в настоящее время в системе создается специализированный блок, который должен обеспечить проведение выборочных проверок данных по отдельным пожарам (включая их наземные и авиационные обследования). Следует также отметить, что сегодня ИСДМ-Рослесхоз начинает обеспе-чивать работы не только по решению задач мониторинга лесных пожаров, но и по мониторингу различных процессов, происходящих в лесах (например, процессов гибели лесов от различных воздействий). Как показал опыт эксплуа-тации системы, реализованные в ней технологии и созданная для обеспечения ее работы инфраструктура могут стать основой для организации дистанционного мониторинга практически всех происходящих в лесах процессов. 6.2.5 Прогнозирование параметров лесных пожаров по данным ИСДМ-Рослесхоз В данном разделе рассмотрена одна из задач принятия решений при мониторинге лесных пожаров – задача прогнозирования поведения пожара. Наличие достоверного прогноза распространения и развития лесного пожара позволяет оценить угрозу природной среде, объектам экономики и населенным пунктам, заблаговременно принять необходимые меры по предотвращению ущерба, спланировать работу противопожарных сил. Ниже кратко описаны возможные методы решения задачи прогнозирования параметров лесных пожаров [13]. В настоящее время прогнозирование лесных пожаров ведется с использо-ванием математических моделей и компьютерной техники. Известны десятки моделей распространения пожара, основанных на различных походах и методах. Задача разработки системы прогноза развития крупных лесных пожаров и оценки их последствий на основе информации, собранной в ИСДМ-Рослесхоз с охватом всей лесной территории, охраняемой ФГУ «Авиалесоохрана», является достаточно сложной. Трудность задачи определяется несколькими факторами. • Сложный характер и изменчивость поведения крупных многодневных лесных пожаров, которые развиваются на большой площади в изменяющихся природных и погодных условиях. • Недостаточная или неточная информация о характеристиках леса, топографии местности, локальных метеоданных. • Малая разрешающая способность имеющихся космических снимков пожаров. • Не всегда достоверная отчетная информация, поступающая с мест. В силу сказанного перед разработкой непосредственно программного обеспечения прогноза развития лесных пожаров необходимо провести исследование различных методов прогнозирования на основе имеющейся в системе ИСДМ-Рослесхоз архивной информации о пожарах прошлых лет. Важным этапом любого исследования является статистическая обработка экспериментальных данных. В случае лесных пожаров такими данными являются ретроспективные данные о пожарах, то есть о площади регистрации и ликвидации пожара и метеорологических данных на период пожара. Важнейшим параметром, по которому оценивается опасность лесного пожара, является скорость прироста площади, пройденной огнем. При прогнозировании этой величины для крупного многодневного лесного пожара важно определить характер зависимости площади пожара от времени. В случае моделирования динамики пожара с учетом воздействия противопожарных сил и средств величина площади, пройденной огнем, обычно представляется в виде кривой, приведенной на рисунке 6.8. На этом графике отмечены три характерных момента времени: - момент возникновения пожара, - момент начала борьбы с пожаром, - момент ликвидации пожара. Рис. 6.8 График прироста площади пожара: - момент возникновения пожара; - момент начала борьбы с пожаром, - момент ликвидации пожара; - соответственно, площади пожара в момент начала тушения и в момент ликвидации (общая площадь, пройденная огнем) График показывает, что после возникновения пожар развивается свободно, с нарастающей скоростью. После начала тушения скорость прироста площади замедляется и стремится к нулю, а пожар останавливается на площади, равной . Для описания динамики свободного распространения пожара (т.е. его распространения без воздействия противопожарных сил и средств – до момента tS) удобно использовать выражение , (6.1) где - текущее время, - экспериментально определяемый показатель скорости роста площади пожара, постоянный множитель; при пожар развивается с постоянной скоростью, при скорость развития уменьшается, а при - увеличивается. Используя модель вида (6.1) при выбранном параметре, можно по данным о зарегистрированной площади пожара в различные моменты времени оценить параметры модели и , а затем использовать модель для прогнозирования дальнейшего хода пожара. для грубой оценки указанных параметров достаточно знать площадь свободно распространяющегося пожара в два момента времени, т.е. иметь две точки на кривой (рисунок 6.8) в интервале времени от до . Пусть известны площади пожара и , где . Тогда из (5.1) следует: , (6.2) , (6.3) . (6.4) Если имеются данные о площади пожара в несколько моментов времени, то эту задачу можно решить методом наименьших квадратов. Более точная оценка скорости прироста площади требует использования данных о множестве параметров, характеризующих природные и погодные условия, в которых происходит пожар. Эффективным методом прогнозирования скорости прироста площади лесного пожара оказались нейронные сети. Данный метод позволяет выявить скрытые зависимости между входными параметрами, что особенно важно в случае сложных многофакторных систем, какими являются лесные пожары. По архивным и оперативным данным из ИСДМ-Рослесхоз, с использованием математической модели (6.1) можно сформи-ровать выборки данных, по которым обучаются и тестируются нейронные сети. Прогнозируемым (выходным) параметром является среднесуточный прирост площади пожара, или коэффициент k в модели (6.1). В качестве входных параметров используются: • код лесхоза, • площадь регистрации пожара в гектарах, • количество дней наблюдения пожара, • код растительности местности пожара, • температура воздуха на дату начала пожара, • точка росы на дату начала пожара, • дефицит точки росы в градусах Цельсия на дату начала пожара, • осадки за сутки на дату начала пожара, • классы природной пожарной опасности КППО, • комплексные показатели пожарной опасности – ПВ-1 и ПВ-2. Размерность входного слоя нейронной сети варьируется в зависимости от количества входных параметров, которое изменялось в зависимости от условий прогнозирования. Выходной слой состоит из одного нейрона, определяющего прогноз площади пожара. В качестве нейроимитаторов используются программы NeuroPro 0.25 и Statistica Neural Network. В рамках исследования были обучены и протестированы более 300 нейронных сетей различной конфигурации. Процент достоверности, выдаваемых ими ответов, колеблется в пределах от 86 до 94 %. Применение нейронных сетей без учителя оказалось малоэффективным для решения задач прогнозирования, однако они могут оказаться полезными при подготовке данных и классификации пожаров. Наилучшие результаты показывают нейросети с конфигурациями: • 8 скрытых слоёв по 10 нейронов; • 7 скрытых слоёв по 12 нейронов. Для решения задачи подготовки данных к нейросетевому прогнозированию использовались методы OLAP. Данные представляются в виде абстрактного многомерного куба, ребрами которого являются измерения, а внутри куба находятся значения. В качестве измерений можно задавать наиболее существенные входные параметры модели, в качестве значений используется критерий, по которому отбираются пожары для прогнозирования. В нашем случае это была общая площадь, пройденная огнем. На основе полученных данных о динамике площади можно решать задачу построения контуров пожаров. Контур пожара (внешняя граница кромки пожара) рассчитывался на основе теории процессов распространения [13]. Для построения контуров может быть использован метод подвижных сеток[12]. Вопросы для самопроверки 1. Каково назначение системы ЭСПЛА? 2. Что такое «банк пространственных данных»? 3. Для каких целей используют технологию OLAP? 4. Какие информационные ресурсы необходимы для принятия решения? 5. Назовите основания, по которым выделены зоны мониторинга лесных пожаров. 6. Назовите типы спутников и бортовой аппаратуры, используемых для мониторинга состояния лесов. В каких диапазонах волн они работают? 7. Перечислите пункты приема и обработки спутниковой информации системы на территории РФ. 8. Какие природные и погодные характеристики влияют на возникновение и распространение лесного пожара, как их учитывают в системе? 9. Перечислите основные параметры лесного пожара, которые определяются на основе спутниковых данных. 10. Назовите основные документы, которые готовит система ИСДМ-Рослесхоз. Кто является их пользователем? 11. Зачем нужны и в чем состоят задачи прогнозирования параметров лесных пожаров? 12. Опишите технологию обучения нейронных сетей применительно к задачам прогнозирования лесных пожаров. Заключение Курс теории принятия решений, представленный в данной книге, знакомит студента главным образом с традиционными математическимиметодами, разработанной в связи с развитием техники, экономики и социальных наук в последние десятилетия. Эта теория имеет тесную связь с фундаментальными науками, она опирается на обширный математический аппарат и вычислительные методы. В то же время практикапринятия решений при управлении – весьма широкая область человеческой деятельности, далеко выходящая за пределы данного пособия. Предполагаемый читатель данной книги – современный специалист по информатике и вычислительной технике – в своей профессиональной деятельности, несомненно, встретится с разработкой и использованием систем принятия решений, однако, возможно, это будут системы другого рода, а именно: • организационного управления; • управления персоналом; • управления в социальной сфере; • управления проектами (в том числе проектами разработки программного обеспечения); • логистического управления и другие. В перечисленных областях выработаны собственные подходы, методы и средства управления и принятия решений, не всегда опирающиеся на сложный математический аппарат. В учебных планах профессиональной подготовки бакалавра по информатике и вычислительной технике предусмотрены дисциплины, посвященные указанным аспектам инженерной деятельности, с которыми студенты познакомятся на старших курсах. Необходимо отметить, что все большее распространение принимают методы искусственного интеллекта при принятии решений, которые не рассмотрены в данной книге. Кроме того, бурное развитие технологий Интернет открывает ранее невиданные возможности создания распределенных систем на основе так называемых облачных вычислений, которые могут изменить идеологию и подходы к методам и процедурам принятия решений. Однако независимо от того, какую профессиональную траекторию выберет специалист – производство, бизнес, наука или педагогическая деятельность, знания основ теории принятия решений окажутся полезными в его работе. Библиографический список 1. Барталев, С.А. Информационная система дистанционного мониторинга лесных пожаров Федерального агентства лесного хозяйства РФ (состояние и перспективы развития)/С.А. Борталев // Современные проблемы дистанционного зондирования Земли из космоса. – Москва: Институт космических исследований РАН, 2008. т.5, №11– С.419-429. 2. Беляев, А.И. Использование спутниковых данных в системе дистанционного мониторинга лесных пожаров МПР РФ/ А.И. Беляев, Г.Н. Коровин, Е.А. Лупян // Современные проблемы дистанционного зондирования Земли из космоса: Физические основы, методы и технологии мониторинга окружающей среды, потенциально опасных объектов и явлений: сборник научных статей. М.: GRANP polygraph, 2005. –Т. 1. –С. 20-29. 3. Бенькович, Е. Практическое моделирование динамических систем./ Е.Бенькович, Ю.Б.Колесов, Ю.Б.Сениченков. –СПб.: БХВ-Петербург, 2002. – 464 с. 4. Блюмин С.Л. Шуйкова И.А. Модели и методы принятия решений в условиях неопределенности. /С.Л. Блюмин, И.А. Шуйкова– Липецк: ЛЭГИ, 2001. – 138с. 5. Боев, В.Д. Компьютерное моделирование: пособие для курсового и дипломного проектирования. /В.Д.Боев, Д.И Кирик., Р.П.Сыпченко.– СПб.: ВАС, 2011. – 348 с. 6. Вероятностные методы в вычислительной технике / под ред. А.Н. Лебедева и Е.А. Чернявского. М.: Высшая школа, 1986. – 312 с. 7. Вильчик, С.И. Формирование баз знаний для интеллектуальной системы по предупреждению и ликвидации ЧС на промышленном предприятии. Автореф. канд. дисс. /С.И.Вильчик.–Красноярск, ИВМ СО РАН, 2003. – 24 c. 8. Гантмахер, Ф.Р. Теория матриц. / Ф.Р. Гантмахер, М.: Наука, 1966. – 576с. 9. Дейкстра, Э. Дисциплина программирования. / Э. Дейкстра.– М.: Мир, 1978. – 275 с. 10. Доррер, Г.А. Применение вычислительной техники в лесной и деревообрабатывающей промышленности: учебное пособие. /Г.А. Доррер, Г.А. Воротовов. –Красноярск: СТИ, 1978. – 140с. 11. Доррер, Г.А. Методы моделирования дискретных систем.:учебное пособие. /Г.А. Доррер. – Красноярск: ИПЦ КГТУ, 2005. – 171 с. 12. Доррер, Г.А. Распределенные информационные системы экологического мониторинга: учебное пособие./ Г.А. Доррер, В.В. Ничепорчук. –Красноярск, СибГТУ, 2010.– 232 с. 13. Доррер, Г.А. Оценка и прогнозирование динамики крупных лесных пожаров./ Г.А. Доррер, В.С. Коморовсий // Технологии техносферной безопасности: Интернет-журнал. МЧС России, Академия ГПС. 2011, вып.2. 14. Доррер, Г.А. Исследование жизненного цикла электронных информационных ресурсов./ Доррер Г.А., Попов А.А., Сысенко К.В. // Вестник СибГАУ. – 2009, №2.– С. 128 – 132. 15. Кемени, Дж. Конечные цепи Маркова./ Дж.Кемени, Дж.Снелл. – М.: Наука, 1970. –450 с. 16. Константинова, Н.С. Онтологии как системы хранения знаний. /Н.С.Константинова, О.А. Митрофанова. – СПб.: СПбГУ, 2008. – 54с. 17. Королюк, В.С. Полумарковские процессы и их приложения./ В.С.Королюк, А.Ф Турбин. – Киев: Наукова думка, 1976. –290 с. 18. Котов В.Е.Сети Петри/ В.Е. Котов. – М.: Наука, 1984.–158с. 19. Кофман, А. Займемся исследованием операций:пер. с франц. /А. Кофман, Р.Фор. – М.: Мир, 1966. –280 с. 20. Ломазова, И.А. Вложенные сети Петри: моделирование и анализ распределенных систем с объектной структурой./И.А. Ломазова.–М.: Научный мир, 2004. – 208 с. 21. Максимов, В.И. Когнитивные технологии для поддержки принятия управленческих решений./В.И.Максимов, К.Корноушенко,С.В.Качаев. //Информационное общество, 1999, вып. 2, С. 50 – 54. 22. Нейлор, К. Как построить свою экспертную систему / Крис Нейлор. М.: Энергоатомиздат 1991.– 266 с. 23. Ноженкова, Л.Ф./ Средства построения систем поддержки принятия решений по предупреждению и ликвидации ЧС. / Ноженкова Л.Ф., Исаев С.В., Ничепорчук В.В., Евсюков А.А., Морозов Р.В., Марков А.А.// Проблемы безопасности и чрезвычайных ситуаций. №4. М.: 2008. С. 46-54. 24. Ноженкова, Л.Ф. Применение экспертной ГИС для анализа пожарной обстановки в Красноярском крае. /Л.Ф.Ноженкова, С.В. Исаев, В.В.Ничепорчук, А.А.Евсюков, Р.В.Морозов, А.А. Марков //Проблемы безопасности и чрезвычайных ситуаций. №2. М.: 2009.– С. 75–85. 25. Константинова, Н.С. Онтологии как системы хранения знаний. /Н.С.Константинова, О.А. Митрофанова. –СПб.: СПбГУ, 2008. – 54 с. 26. Орлов, А.И. Основы теории принятия решений: учебное пособие. / А.И. Орлов. –М.: МГТУ им. Баумана, 2002. – 37с. 27. Основы теории вычислительных систем /под ред. проф. С.А. Майорова, М.: Высшая школа, 1978, – 408 с. 28. Питерсон, Дж. Теория сетей Петри и моделирование систем. / Дж Питерсон. –М.: Мир, 1984.– 234 с. 29. Плотинский, Ю.М.Теоретические и эмпирические модели социальных процессов: учебное пособие для высших учебных заведений. /Ю.М. Плотинский. М.:Издательская компания «Логос», 1998. – 280 с. 30. Подиновский, В.В., Ногин В.Д. Парето-оптимальные решения многокритериальных задач./ В.В.Подиновский, В.Д. Ногин. –М.: Наука, 2007. – 255 с. 31. Советов, Б.Я. Моделирование систем./Б.Я.Советов, С.А.Яковлев.– М.: Высшая школа, 1985, – 350 с. 32. Соловьев, В.Д. Онтологиии тезаурусы. /В.Д.Соловьев, Б.В. Добров, Н.В. Лукашевич. –Казань, Москва: Казанский ГУ, МГУ им. М.В. Ломоносова, 2006. – 157с. 33. Филипс, Д. Методы анализа сетей. /Д.Филипс, А. М. Гарсиа-Диас.–М:, Мир. 1984. Черноруцкий И.Г.–400с. 34. Черноруцкий, И.Г. Методы оптимизации в теории управления: учебное пособие. / И.Г. Черноруцкий. –Спб.: Питер, 2004. – 256 с. 35. Черноруцкий И.Г. Методы принятия решений. /И.Г.Черноруцкий.– СПб.:БХВ-Петербург, 2005. – 416с. 36. Шибанов А.П. Обобщенные GERT-сети для моделирования протоколов, алгоритмов и программ телекоммуникационных систем.: Диссертация на соиск. уч. степ. доктора технич. наук./А.П. Шибанов.–Рязань: РГРА, 2003. – 307с. 37. Юдин, Д.Б. Линейное программирование (теория, методы и приложения)./Д.Б.Юдин, Е.Г. Гольштейн. – М.: «Наука». Главнаяредакцияфизико-математическойлитературы, 1969. – 424с. 38. Axelrod, R. The Structure of Decision: Cognitive Maps of Political Elites. / R.Axelrod. –Princeton. University Press. – 1976. 39. Checland, P.B. Models Validation in Soft Systems Practice/ P.B Checland.–System Research, 1995. Vol. 12. № 1. P. 47 – 54. 40. Cherchman, C.W. The system approach and its enemies. /C.W. Cherchman. – N.Y.: Basic books. – 1979. 41. Dublin Core Metadata Element Set: Reference Description [Электронныйресурс]/DCMI.–Version1.1.– [USA]: DCMI, 1999. – Режимдоступа: http://dublincore.org/documents/dces. 42. Jensen, K. Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use. / K. Jensen. –Berlin, Spingler. Vol.1 – 1996, Vol.2 – 1997, Vol.3 – 1997. 43. Markovitz, H. Portfolioselection /H. Markovitz // The Journal of FInanceб vol. VII, №1б 1952. –р. 60–91. 44. Niessen, J. Introduction to ITService[Электронныйресурс]/J. Niessen – Режимдоступаhttp://allitil.ru/book/42-vvedenie-v-itsm.-glava-1.html. Г.А. Доррер МЕТОДЫ И СИСТЕМЫ ПРИНЯТИЯ РЕШЕНИЙ Учебное пособие Красноярск 2016
«Методы и системы принятия решений» 👇
Готовые курсовые работы и рефераты
Купить от 250 ₽
Решение задач от ИИ за 2 минуты
Решить задачу
Помощь с рефератом от нейросети
Написать ИИ
Получи помощь с рефератом от ИИ-шки
ИИ ответит за 2 минуты

Тебе могут подойти лекции

Автор(ы) Смолина Е.С.
Автор(ы) Кварацхелия Н.Г.
Смотреть все 173 лекции
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot