Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник Информатика.doc
Скачиваний:
123
Добавлен:
28.08.2019
Размер:
4.53 Mб
Скачать

1.5. Моделирование информационных систем

1.5.1. Основные понятия

Моделирование – замещение одного объекта (оригинала) другим (моделью) и фиксация или изучение свойств оригинала путём исследования свойств модели.

Модель – представление объекта, системы или понятия (идеи) в некоторой форме, отличной от формы их реального существования.

Определение модели по А. А. Ляпунову: моделирование – это опосредованное практическое или теоретическое исследование объекта, при котором непосредственно изучается не сам интересующий нас объект, а некоторая вспомогательная искусственная или естественная система (модель), во-первых, находящаяся в некотором объективном соответствии с познаваемым объектом; во-вторых, способная замещать его в определённых отношениях; в третьих, дающая при её исследовании, в конечном счёте, информацию о самом моделируемом объекте [109].

Объективность моделирования может быть достигнута только при соблюдении следующих достаточно очевидных условий:

– модель должна адекватно отображать свойства оригинала, существенные с точки зрения цели исследования;

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

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

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

Вариант 1: соответствие 100%. Очевидно, что точность решения в этом случае максимальна, а ущерб от применения модели минимален. Но затраты на построение такой модели бесконечно велики, так как объект повторяется во всех своих деталях; фактически создаётся точно такой же объект путём копирования его до атомов (что само по себе не имеет смысла).

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

Конечно, варианты 1 и 2 — это крайности. На самом деле модель создаётся из соображений компромисса между затратами на её построение и ущербом от неточности её применения. Это точка между двумя бесконечностями. То есть, моделируя, следует иметь в виду, что исследователь (разработчик модели) должен стремиться к оптимуму суммарных затрат, включающих ущерб от применения и затраты на изготовление модели (рисунок 1.1).

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

Рисунок 1.1. Соотношение суммарных затрат и точности для различных вариантов детализации прикладной модели

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

К сожалению, указанная на рисунке 1.1 кривая является умозрительной и реально до начала моделирования построена быть не может. Поэтому на практике действуют таким образом: двигаются по шкале точности слева направо, то есть от простых моделей («Модель 1», «Модель 2»…) к всё более сложным («Модель 3», «Модель 4»…). А процесс моделирования имеет циклический спиралевидный характер: если построенная модель не удовлетворяет требованиям точности, то её детализируют, дорабатывают на следующем цикле разработок. Улучшая модель, следят, чтобы эффект от усложнения модели превышал связанные с этим затраты. Как только исследователь замечает, что затраты на уточнение модели превышают эффект от точности при применении модели, следует остановиться, поскольку точка оптимума достигнута. Такой подход всегда гарантирует окупаемость вложений.

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

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

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

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

Иногда модели пишут на языках программирования, но это долгий и дорогой процесс. Для моделирования можно использовать пакеты математических программ (Mathlab Mathcad, пакеты имитационного моделирования VENSIM PLE, GPSS, ITHINC, Powersim и многие другие) но, как показывает опыт, в них обычно не хватает многих инженерных инструментов.

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

Исторически сложились два основных подхода при моделировании процессов и систем.

Классический (индуктивный) подход рассматривает систему путём перехода от частного к общему, т. е., модель системы синтезируется путём слияния моделей её компонент, разрабатываемых отдельно.

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

Качество моделирования определяется тем, в какой степени решаются задачи, поставленные исследователем.

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

Принципы моделирования

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

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

P(t) ≥ P0 и tt0 .

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

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

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

Свойства моделей

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

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

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

С усложнением объектов моделирования усложняются и модели, которые характеризуются следующими показателями (свойствами).

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

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

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

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

5. Адаптивность – свойство высокоорганизованной системы. Благодаря адаптивности система приспосабливается к различным внешним возмущающим факторам. Применительно к модели существенно изучение её поведения в изменяющихся условиях, близких к реальным.

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

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

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

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

Использование различных математических аппаратов впоследствии приводит к различным возможностям в решении задач.

Модели могут быть:

  • феноменологические и абстрактные;

  • активные и пассивные;

  • статические и динамические;

  • дискретные и непрерывные;

  • детерминированные и стохастические;

  • функциональные и объектные.

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

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

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

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

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

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

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

Распределённые, структурные, сосредоточенные модели. Если параметр, описывающий свойство объекта, в любых его точках имеет одинаковое значение (хотя может меняться во времени!), то это система с сосредоточенными параметрами. Если параметр принимает разные значения в разных точках объекта, то говорят, что он распределён, а модель, описывающая объект, распределённая. Иногда модель копирует структуру объекта, но параметры объекта сосредоточенны, тогда модель структурная.

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

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

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

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

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

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

Здесь можно упомянуть два направления. Первое инструментальное. Проектировщику необходим инструмент для формального описания рассматриваемого им объекта. Известно несколько таких инструментов: Rational Rose, IDEF12 по технологии SADT13, Есть инструменты, подсказывающие решения, есть просто пассивные наборы, библиотеки. Одним из инструментов нахождения решений является технология АЛРИЗ14; следуя её алгоритму, отвечая на вопросы этой технологии, можно гарантированно придти к решению.

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