Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие по математике для магистров.doc
Скачиваний:
8
Добавлен:
01.07.2025
Размер:
9.51 Mб
Скачать

3.Модели систем

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

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

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

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

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

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

По уровню, "глубине" моделирования модели бывают:

  • эмпирические - на основе эмпирических фактов, зависимостей;

  • теоретические - на основе математических описаний;

  • смешанные, полуэмпирические - на основе эмпирических зависимостей и математических описаний.

Проблема моделирования состоит из трех задач:

  • построение модели (эта задача менее формализуема и конструктивна, в том смысле, что нет алгоритма для построения моделей);

  • исследование модели (эта задача более формализуема, имеются методы исследования различных классов моделей);

  • использование модели (конструктивная и конкретизируемая задача).

Модель М, описывающая систему S(x1, x2, ..., xn; R), имеет вид: М=(z1, z2, ..., zm; Q), где zi Z, i=1, 2, ..., n, Q, R - множества отношений над X - множеством входных, выходных сигналов и состояний системы, Z - множество описаний, представлений элементов и подмножеств X.

Схема построения модели М системы S с входными сигналами X и выходными сигналами Y изображена на рис. 10.1.

Рис. 10.1.  Схема построения модели

Если на вход М поступают сигналы из X и на входе появляются сигналы Y, то задан закон, правило f функционирования модели, системы.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Сложная динамическая система

Под “динамической системой в широком смысле” понимается объект, функционирующий в непрерывном времени, непрерывно наблюдаемый и изменяющий свое состояние под воздействием внешних и внутренних причин. [Н.П. Моделирование сложных систем, М.: Наука, 1978].

Простая динамическая система

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

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

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

Структурно сложная динамическая система

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

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

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

1) однонаправленные (ориентированные), и тогда, соединяемые контакты, делятся на приемник и источник, а также постулируется, что приемник не может влиять на источник;

2) двунаправленные (неориентированные), в этом случае соединяемые контакты равноправны.

В случае использования только однонаправленных связей контакты блоков делятся на входы и выходы (такие блоки также называются ориентированными). Входная переменная не может находиться в левой части формулы или дифференциального уравнения, а также являться искомой переменной в алгебраических уравнениях. Источником на данном уровне иерархии может быть выход внутреннего или вход внешнего блока, а приемником - вход внутреннего или выход внешнего блока. Любой источник может участвовать в любом числе связей, в то время как приемник может участвовать только в одной связи. Объединение ориентированных блоков выполняется достаточно просто: локальные уравнения и формулы механически объединяются, и каждая связь заменяется дополнительной формулой "<приемник> = <источник>". Объединение локально корректных совокупностей уравнений и формул дает корректную совокупность. Единственной дополнительной проблемой является возникновение в некоторых случаях "алгебраических циклов" в совокупности формул, порожденных связями (выражение в правой части формулы неявно зависит от переменной в левой части этой формулы). В случае обнаружения алгебраического цикла он разрывается путем замены одной из входящих в него формул на алгебраическое уравнение (начальные условия для таких уравнений автоматически согласованы). Предварительная подготовка, таким образом, сводится к сортировке дополнительных формул, а также выявлению и устранению алгебраических циклов. Заметим, что из-за возможности появления алгебраических уравнений при объединении локальных описаний, их не содержащих, следует считать, что "минимально" сложной формой локального поведения является система алгебро-дифференциальных уравнений.

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

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

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

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

Сложная динамическая система, меняющая свое поведение во времени

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

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

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

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

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

Структурно-сложная гибридная система

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

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