Введение в анализ, синтез и моделирование систем

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

Рубрика Экономико-математическое моделирование
Вид курс лекций
Язык русский
Дата добавления 29.06.2016
Размер файла 696,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

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

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

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

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

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

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

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

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

Пример. Закон Ньютона F=am - это статическая модель движущейся с ускорением a материальной точки массой m. Эта модель не учитывает изменение ускорения от одной точки к другой.

Модель динамическая, если среди ее параметров есть временной параметр, т.е. она отображает систему (процессы в системе) во времени.

Пример. Модель S=gt2/2 - динамическая модель пути при свободном падении тела. Динамическая модель типа закона Ньютона: F(t)=a(t)m(t). Еще лучшей формой динамической модели Ньютона является F(t)=s?(t)m(t).

Модель дискретная, если она описывает поведение системы только в дискретные моменты времени.

Пример. Если рассматривать только t=0, 1, 2, :, 10 (сек), то модель St=gt2/2 или числовая последовательность S0=0, S1=g/2, S2=2g, S3=9g/2, :, S10=50g может служить дискретной моделью движения свободно падающего тела.

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

Пример. Модель S=gt2/2, 0<t<100 непрерывна на промежутке времени (0;100).

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

Пример. Пусть модель экономической системы производства товаров двух видов 1 и 2, соответственно, в количестве x1 и x2 единиц и стоимостью каждой единицы товара a1 и a2 на предприятии описана в виде соотношения: a1x1+a2x2=S, где S - общая стоимость произведенной предприятием всей продукции (вида 1 и 2). Можно ее использовать в качестве имитационной модели, по которой можно определять (варьировать) общую стоимость S в зависимости от тех или иных значений объемов производимых товаров.

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

Пример. Приведенные выше физические модели - детерминированные. Если в модели S=gt2/2, 0<t<100 мы учли бы случайный параметр - порыв ветра с силой p при падении тела, например, так: S(p)=g(p)t2/2, 0<t<100, то мы получили бы стохастическую модель (уже не свободного!) падения.

Модель функциональная, если она представима в виде системы каких- либо функциональных соотношений.

Пример. Непрерывный, детерминированный закон Ньютона и модель производства товаров (см. выше) - функциональные.

Модель теоретико-множественная, если она представима с помощью некоторых множеств и отношений принадлежности им и между ними.

Пример. Пусть заданы множество X={Николай, Петр, Николаев, Петров, Елена, Екатерина, Михаил, Татьяна} и отношения: Николай - супруг Елены, Екатерина - супруга Петра, Татьяна - дочь Николая и Елены, Михаил - сын Петра и Екатерины, семьи Михаила и Петра дружат друг с другом. Тогда множество X и множество перечисленных отношений Y могут служить теоретико-множественной моделью двух дружественных семей.

Модель логическая, если она представима предикатами, логическими функциями.

Пример. Совокупность двух логических функций вида: z=xyxy, p=xy может служить математической моделью одноразрядного сумматора.

Модель игровая, если она описывает, реализует некоторую игровую ситуацию между участниками игры (лицами, коалициями).

Пример. Пусть игрок 1 - добросовестный налоговый инспектор, а игрок 2 - недобросовестный налогоплательщик. Идет процесс (игра) по уклонению от налогов (с одной стороны) и по выявлению сокрытия уплаты налогов (с другой стороны). Игроки выбирают натуральные числа i и j (i,jn), которые можно отождествить, соответственно, со штрафом игрока 2 за неуплату налогов при обнаружении факта неуплаты игроком 1 и с временной выгодой игрока 2 от сокрытия налогов (в средне- и долгосрочном плане штраф за сокрытие может оказаться намного более ощутимым). Рассмотрим матричную игру с матрицей выигрышей порядка n. Каждый элемент этой матрицы A определяется по правилу aij=|i-j|. Модель игры описывается этой матрицей и стратегией уклонения и поимки. Эта игра - антагонистическая, бескоалиционная (формализуемые в математической теории игр понятия мы пока будем понимать содержательно, интуитивно).

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

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

Модель структурная, если она представима структурой данных или структурами данных и отношениями между ними.

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

Модель графовая, если она представима графом или графами и отношениями между ними.

Модель иерархическая (древовидная), если представима некоторой иерархической структурой (деревом).

Пример. Для решения задачи нахождения маршрута в дереве поиска можно построить, например, древовидную модель (рис. 10.2):

Рис. 10.2. Модель иерархической структуры

Модель сетевая, если она представима некоторой сетевой структурой.

Пример. Строительство нового дома включает операции, приведенные в нижеследующей таблице.

Таблица работ при строительстве дома

Операция

Время выполнения (дни)

Предшествующие операции

Дуги графа

1

Расчистка участка

1

нет

-

2

Закладка фундамента

4

Расчистка участка (1)

1-2

3

Возведение стен

4

Закладка фундамента (2)

2-3

4

Монтаж электропроводки

3

Возведение стен (3)

3-4

5

Штукатурные работы

4

Монтаж электропроводки (4)

4-5

6

Благоустройство территории

6

Возведение стен (3)

3-6

7

Отделочные работы

4

Штукатурные работы (5)

5-7

8

Настил крыши

5

Возведение стен (3)

3-8

Сетевая модель (сетевой график) строительства дома дана на рис. 10.3.

Рис. 10.3. Сетевой график строительства работ

Две работы, соответствующие дуге 4-5, параллельны, их можно либо заменить одной, представляющей совместную операцию (монтаж электропроводки и настил крыши) с новой длительностью 3+5=8, либо ввести на одной дуге фиктивное событие, тогда дуга 4-5 примет вид.

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

Пример. Правила дорожного движения - языковая, структурная модель движения транспорта и пешеходов на дорогах. Пусть B - множество производящих основ существительных, C - множество суффиксов, P - прилагательных, "+" - операция конкатенации слов, ":=" - операция присваивания, "=>" - операция вывода (выводимости новых слов), Z - множество значений (смысловых) прилагательных. Языковая модель M словообразования: <zi><=<pi>:=<bi>+<si>. При bi - "рыб(а)", si - "н(ый)", получаем по этой модели pi - "рыбный", zi - "приготовленный из рыбы".

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

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

Модель натурная, если она есть материальная копия объекта моделирования.

Пример. Глобус - натурная географическая модель земного шара.

Модель геометрическая, графическая, если она представима геометрическими образами и объектами.

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

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

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

Пример. Классическая клеточно-автоматная модель - игра "Жизнь" Джона Конвея. Она описана во многих книгах. Мы рассмотрим другую клеточно-автоматную модель загрязнения среды, диффузии загрязненителя в некоторой среде. 2D-клеточный автомат (на плоскости) для моделирования загрязнения среды может быть сгенерирован следующими правилами:

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

· клеточное поле разбивается на блоки 2Ч2 двумя способами, которые будем называть четным и нечетным разбиениями (у чётного разбиения в кластере или блоке находится четное число точек или клеток поля, у нечетного блока - их нечетное число);

· на очередном шаге эволюции каждый блок четного разбиения поворачивается (по задаваемому правилу распространения загрязнения или генерируемому распределению случайных чисел) на заданный угол (направление поворота выбирается генератором случайных чисел);

· аналогичное правило определяется и для блоков нечетного разбиения;

· процесс продолжается до некоторого момента или до очищения среды.

Пусть единица времени - шаг клеточного автомата, единица длины - размер его клетки. Если перебрать всевозможные сочетания поворотов блоков четного и нечетного разбиения, то видим, что за один шаг частица может переместиться вдоль каждой из координатных осей на расстояние 0, 1 или 2 (без учета направления смещения) с вероятностями, соответственно, p0=1/4, p1=1/2, p2=1/4. Вероятность попадания частицы в данную точку зависит лишь от ее положения в предыдущий момент времени, поэтому рассматриваем движение частицы вдоль оси х (y) как случайное.

На рис. 10.4 - фрагменты работы программы клеточно-автоматной модели загрязнения клеточной экосреды (размеры клеток увеличены).

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

Модель фрактальная, если она описывает эволюцию моделируемой системы эволюцией фрактальных объектов. Если физический объект однородный (сплошной), т.е. в нем нет полостей, можно считать, что плотность не зависит от размера. Например, при увеличении R до 2R масса увеличится в R2 раз (круг) и в R3 раз (шар), т.е. M(R)~Rn (связь массы и длины), n - размерность пространства. Объект, у которого масса и размер связаны этим соотношением, называется "компактным". Плотность его

Если объект (система) удовлетворяет соотношению M(R)~Rf(n), где f(n)<n, то такой объект называется фрактальным. Его плотность не будет одинаковой для всех значений R, а масштабируется так:

Так как f(n)-n<0, то плотность фрактального объекта уменьшается с увеличением размера, а с(R) является количественной мерой разряженности, ветвистости (структурированности) объекта.

Пример. Пример фрактальной модели - множество Кантора. Рассмотрим [0;1]. Разделим его на 3 части и выбросим средний отрезок. Оставшиеся 2 промежутка опять разделим на три части и выкинем средние промежутки и т.д. Получим множество, назывемое множеством Кантора. В пределе получаем несчетное множество изолированных точек (рис. 10.5)

Рис. 10.5. Множество Кантора для 3-х делений

Можно показать, что если n - размерность множества Кантора, то n=ln2/ln3?0,63, т.е. этот объект (фрактал) еще не состоит только из изолированных точек, хотя уже и не состоит из отрезка. Фрактальные объекты самоподобны, если они выглядят одинаково в любом пространственном масштабе, масштабно инвариантны, фрагменты структуры повторяются через определенные пространственные промежутки. Поэтому они очень хорошо подходят для моделирования нерегулярностей, так как позволяют описывать (например, дискретными моделями) эволюцию таких систем для любого момента времени и в любом пространственном масштабе.

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

Пример. Самоподобны ветки деревьев, снежинки, экономические системы (волны Кондратьева), горные системы.

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

Тип модели зависит от информационной сущности моделируемой системы, от связей и отношений его подсистем и элементов, а не от его физической природы.

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

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

Модель включает в себя: объект О, субъект (не обязательный) А, задачу Z, ресурсы B, среду моделирования С: М=<O, Z, A, B, C>.

Основные свойства любой модели:

· целенаправленность - модель всегда отображает некоторую систему, т.е. имеет цель;

· конечность - модель отображает оригинал лишь в конечном числе его отношений и, кроме того, ресурсы моделирования конечны;

· упрощенность - модель отображает только существенные стороны объекта и, кроме того, должна быть проста для исследования или воспроизведения;

· приблизительность - действительность отображается моделью грубо или приблизительно;

· адекватность - модель должна успешно описывать моделируемую систему;

· наглядность, обозримость основных ее свойств и отношений;

· доступность и технологичность для исследования или воспроизведения;

· информативность - модель должна содержать достаточную информацию о системе (в рамках гипотез, принятых при построении модели) и должна давать возможность получить новую информацию;

· сохранение информации, содержавшейся в оригинале (с точностью рассматриваемых при построении модели гипотез);

· полнота - в модели должны быть учтены все основные связи и отношения, необходимые для обеспечения цели моделирования;

· устойчивость - модель должна описывать и обеспечивать устойчивое поведение системы, если даже она вначале является неустойчивой;

· целостность - модель реализует некоторую систему (т.е. целое);

· замкнутость - модель учитывает и отображает замкнутую систему необходимых основных гипотез, связей и отношений;

· адаптивность - модель может быть приспособлена к различным входным параметрам, воздействиям окружения;

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

· эволюционируемость - возможность развития моделей (предыдущего уровня).

Жизненный цикл моделируемой системы:

· сбор информации об объекте, выдвижение гипотез, предмодельный анализ;

· проектирование структуры и состава моделей (подмоделей);

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

· исследование модели - выбор метода исследования и разработка алгоритма (программы) моделирования;

· исследование адекватности, устойчивости, чувствительности модели;

· оценка средств моделирования (затраченных ресурсов);

· интерпретация, анализ результатов моделирования и установление некоторых причинно-следственных связей в исследуемой системе;

· генерация отчетов и проектных (народно-хозяйственных) решений;

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

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

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

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

Модели и моделирование применяются по основным направлениям:

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

· познание и разработка теории исследуемых систем (с помощью каких-либо моделей, моделирования, результатов моделирования);

· прогнозирование (выходных данных, ситуаций, состояний системы);

· управление (системой в целом, отдельными подсистемами системы), выработка управленческих решений и стратегий;

· автоматизация (системы или отдельных подсистем системы).

Вопросы для самоконтроля

1. Что такое модель, для чего она нужна и как используется? Какая модель называется статической (динамической, дискретной и т.д.)?

2. Каковы основные свойства моделей и насколько они важны?

3. Что такое жизненный цикл моделирования (моделируемой системы)?

Задачи и упражнения

1. В последнее время наиболее актуальной проблемой в экономике стало воздействие уровня налогообложения на хозяйственную деятельность. В ряду прочих принципов взимания налогов важное место занимает вопрос о той предельной норме, превышение которой влечет потери общества и государства, несоизмеримые с текущими доходами бюджета. Определение совокупной величины налоговых сборов таким образом, чтобы она, с одной стороны, максимально соответствовала государственным расходам, а с другой, оказывала минимум отрицательного воздействия на деловую активность, относится к числу главных задач управления государства. Опишите, какие, на ваш взгляд, параметры необходимо учесть в модели налогообложения хозяйственной деятельности, соответствующей указанной цели. Составьте простую (например, рекуррентного вида) модель сбора налогов, исходя из налоговых ставок, изменяемых в указанных диапазонах: налог на доход - 8-12 %, налог на добавленную стоимость - 3-5 %, налог на имущество юридических лиц - 7-10%. Совокупные налоговые отчисления не должны превышать 30-35% прибыли. Укажите в этой модели управляющие параметры. Определите одну стратегию управления с помощью этих параметров.

2. Заданы числовой - xi, i=0, 1, ..., n и символьный - yi, i=0, 1, ..., m массивы X и Y. Составить модель стекового калькулятора, который позволяет осуществлять операции:

1. циклический сдвиг вправо массива X или Y и запись заданного числа в x0 или символа операции - y0 (в "верхушку стека" X(Y)) т.е. выполнение операции "вталкивание в стек";

2. считывание "верхушки стека" и последующий циклический сдвиг влево массива X или Y - операция "выталкивания из стека";

3. обмен местами x0 и x1 или y0 и y1;

4. "раздваивание верхушки стека", т.е. получение копии x0 или y0 в x1 или y1;

5. считывание "верхушки стека" Y (знака +, -, * или /), затем расшифровка этой операции, считыавние операндов операций с "верхушки" X, выполнение этой операции и помещение результата в "верхушку" X.

3. Известна классическая динамическая модель В.Вольтерра системы типа "хищник-жертва", являющейся моделью типа "ресурс-потребление". Рассмотрим клеточно-автоматную модель такой системы. Алгоритм поведения клеточного автомата, моделирующего систему типа "хищник-жертва", состоит из следующих этапов:

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

2. определяются законы "соседства" особей (правила взаимоотношений) клеток, например, "соседями" клетки с индексами (i,j) считаются клетки (i-1,j), (i,j+1), (i+1,j), (i,j-1);

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

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

Темы научных исследований и рефератов, интернет-листов

1. Моделирование как метод, методология, технология.

2. Модели в микромире и макромире.

3. Линейность моделей (наших знаний) и нелинейность явлений природы и общества.

11. Лекция: Математическое и компьютерное моделирование

Рассматриваются основные понятия математического и компьютерного моделирования, вычислительный эксперимент, операции моделирования.

Цель лекции: введение в математические и компьютерные системные основы информационных систем и информационного менеджмента.

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

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

Отметим основные операции (процедуры) математического моделирования.

1. Линеаризация. Пусть дана математическая модель М=М(X, Y, A), где X - множество входов, Y - множество выходов, А - множество состояний системы. Схематически можно это изобразить так: XAY. Если X, Y, A - линейные пространства (множества), а : XA, : AY - линейные операторы (т.е. любые линейные комбинации ax+by аргументов и преобразуют в соответствующие линейные комбинации a(x)+bi;(y) и a(x)+b(y)), то система (модель) называется линейной. Все другие системы (модели) - нелинейные. Они труднее поддаются исследованию, хотя и более актуальны. Нелинейные модели менее изучены, поэтому их часто линеаризуют - сводят к линейным моделям каким-то образом, какой-то корректной линеаризующей процедурой.

Пример. Применим операцию линеаризации к модели (какой физической системы, явления?) у=at2/2, 0t4, которая является нелинейной (квадратичной). Для этого заменим один из множителей t на его среднее значение для рассматриваемого промежутка, т.е. на t=2. Такая (пусть простят меня знакомые с линеаризацией читатели, - хоть и очень наглядная, но очень грубая!) процедура линеаризации дает уже линейную модель вида y=2at. Более точную линеаризацию можно провести следующим образом: заменим множитель t не на среднее, а на значение в некоторой точке (это точка - неизвестная!); тогда, как следует из теоремы о среднем из курса высшей математики, такая замена будет достаточно точна, но при этом необходимо оценить значение неизвестной точки. На практике используются достаточно точные и тонкие процедуры линеаризации.

2. Идентификация. Пусть М=М(X, Y, A), A={ai}, ai=(ai1, ai2, ..., aik) - вектор состояния объекта (системы). Если вектор ai зависит от некоторых неизвестных параметров, то задача идентификации (модели, параметров модели) состоит в определении по некоторым дополнительным условиям, например, экспериментальным данным, характеризующим состояние, системы в некоторых случаях. Идентификация - задача построения по результатам наблюдений математических моделей некоторого типа, адекватно описывающих поведение системы. Если S={s1, s2, ..., sn} - некоторая последовательность сообщений, получаемых от источника информации о системе, М={m1, m2, ..., mz} - последовательность моделей, описывающих S, среди которых, возможно, содержится оптимальная (в каком-то смысле) модель, то идентификация модели М означает, что последовательность S позволяет различать (по рассматриваемому критерию адекватности) две разные модели в М. Последовательность сообщений (данных) S назовем информативной, если она позволяет различать разные модели в М. Цель идентификации - построение надежной, адекватной, эффективно функционирующей гибкой модели на основе минимального объема информативной последовательности сообщений. Наиболее часто используемые методы идентификации систем (параметров систем): метод наименьших квадратов, метод максимального правдоподобия, метод байесовских оценок, метод марковских цепных оценок, метод эвристик, экспертное оценивание и другие.

Пример. Применим операцию идентификации параметра a в модели предыдущего примера. Для этого необходимо задать дополнительно значение y для некоторого t, например, y=6 при t=3. Тогда из модели получаем: 6=9a/2, a=12/9=4/3. Идентифицированный параметр а определяет следующую модель y=2t2/3. Методы идентификации моделей могут быть несоизмеримо сложнее, чем приведенный прием.

3. Оценка адекватности (точности) модели.

Пример. Оценим адекватность (точность) модели у=at2/2, 0t4, полученной в результате линеаризации выше. В качестве меры (критерия) адекватности рассмотрим привычную меру - абсолютное значение разности между точным (если оно известно) значением и значением, полученным по модели (почему берется по модулю?). Отклонение точной модели от линеаризованной будет в рамках этого критерия равно |at2/2-2at|, 0t4. Если a>0, то, как несложно оценить с помощью производной, эта погрешность будет экстремальна при t=2a. Например, если a=1, то эта величина не превосходит 2. Это достаточно большое отклонение, и можно заключить, что наша линеаризованная модель в данном случае не является адекватной (как исходной системе, так и нелинеаризованной модели).

4. Оценка чувствительности модели (чувствительности к изменениям входных параметров).

Пример. Из предыдущего примера следует, что чувствительность модели у=at2/2, 0t4 такова, что изменение входного параметра t на 1% приводит к изменению выходного параметра y на более, чем 2%, т.е. эта модель является чувствительной.

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

Отметим основные причины, несколько тормозящие выход математического моделирования на новые информационные технологии:

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

· существующие средства описания и представление моделей на ЭВМ не учитывают специфику моделирования, нет единого представления моделей, генерации новых моделей по банку моделей;

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

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

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

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

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

Основные функции компьютера при моделировании систем:

· исполнение роли вспомогательного средства для решения задач, доступных и для обычных вычислительных средств, алгоритмам, технологиям;

· исполнение роли средства постановки и решения новых задач, не решаемых традиционными средствами, алгоритмами, технологиями;

· исполнение роли средства конструирования компьютерных обучающих и моделирующих сред типа: "обучаемый - компьютер - обучающий", "обучающий - компьютер - обучаемый", "обучающий - компьютер - группа обучаемых", "группа обучаемых - компьютер - обучающий", "компьютер - обучаемый - компьютер";

· исполнение роли средства моделирования для получения новых знаний;

· исполнение роли "обучения" новых моделей (самообучение модели).

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

Вычислительный эксперимент - разновидность компьютерного моделирования.

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

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

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

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

1. Постановка задачи.

1. Формулировка задачи.

2. Определение цели и приоритетов моделирования.

3. Сбор информации о системе, объекте моделирования.

4. Описание данных (их структуры, диапазона, источника и т.д.).

2. Предмодельный анализ.

1. Анализ существующих аналогов и подсистем.

2. Анализ технических средств моделирования (ЭВМ, периферия).

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

4. Анализ математического обеспечения (модели, методы, алгоритмы).

3. Анализ задачи (модели).

1. Разработка структур данных.

2. Разработка входных и выходных спецификаций, форм представления данных.

3. Проектирование структуры и состава модели (подмоделей).

4. Исследование модели.

1. Выбор методов исследования подмоделей.

2. Выбор, адаптация или разработка алгоритмов, их псевдокодов.

3. Сборка модели в целом из подмоделей.

4. Идентификация модели, если в этом есть необходимость.

5. Формулировка используемых критериев адекватности, устойчивости и чувствительности модели.

5. Программирование (проектирование программы).

1. Выбор метода тестирования и тестов (контрольных примеров).

2. Кодирование на языке программирования (написание команд).

3. Комментирование программы.

6. Тестирование и отладка.

1. Синтаксическая отладка.

2. Семантическая отладка (отладка логической структуры).

3. Тестовые расчеты, анализ результатов тестирования.

4. Оптимизация программы.

7. Оценка моделирования.

1. Оценка средств моделирования.

2. Оценка адекватности моделирования.

3. Оценка чувствительности модели.

4. Оценка устойчивости модели.

8. Документирование.

1. Описание задачи, целей.

2. Описание модели, метода, алгоритма.

3. Описание среды реализации.

4. Описание возможностей и ограничений.

5. Описание входных и выходных форматов, спецификаций.

6. Описание тестирования.

7. Создание инструкций для пользователя.

9. Сопровождение.

1. Анализ применения, периодичности использования, количества пользователей, типа использования (диалоговый, автономный и др.), анализ отказов во время использования модели.

2. Обслуживание модели, алгоритма, программы и их эксплуатация.

3. Расширение возможностей: включение новых функций или изменение режимов моделирования, в том числе и под модифицированную среду.

4. Нахождение, исправление скрытых ошибок в программе, если таковые найдутся.

10. Использование модели.

Пример. Математическое и компьютерное моделирование подробно, поэтапно, мы рассмотрим на примере следующей простой модели производства. Итак, возьмем укрупненные этапы моделирования производства.

Этап 1. Содержательная постановка задачи

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

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

Рассмотрим одну такую простую модель социально-экономического процесса.

Этап 2. Формулировка гипотез, построение, исследование модели

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

Пусть x(t) - величина основных фондов (капитала) в момент времени t, где 0tN. Через промежуток времени Дt она будет равна x(t+Дt). Абсолютный прирост равен Дx=x(t+Дt)-x(t). Относительный прирост будет равен x=[x(t+Дt)-x(t)]/Дt.

Примем следующие гипотезы:

1. социально-экономические условия производства достаточно хорошие и способствуют росту производства, а поток инвестиций задается в виде известной функции y(t);

2. коэффициент амортизации фондов считается неизменным и равным m, и при достаточно малом значении Дt, изменение основных фондов прямо пропорционально текущей величине капитала, т.е. dx=y(t) - mx(t).

Считая Дt0, а также учитывая определение производной, получим из предыдущего соотношения следующее математическое выражение закона изменения величины капитала - математическую модель (дифференциальное уравнение) динамики капитала:

xґ(t) = y(t) - mx(t), x(0)=х0,

где х(0) - начальное значение капитала в момент времени t=0.

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

xґ(t) = y(t-T)-mx(t), x(0)=х0

Этой непрерывной, дифференциальной, динамической модели можно поставить в соответствие простую дискретную модель:

хi+1=хi +yj - mхi , x0=с, i=0, 1, 2, :, n, 0<j<n,

где n - предельное значение момента времени при моделировании.

Дискретная модель следует из непрерывной при Дt=1, при замене производной xґ(t) на относительное приращение (из определения производной, это справедливо при малых значениях Дt).

Этап 3. Построение алгоритма и программы моделирования

Возьмем для простоты режим моделирования, когда m, c - известны и постоянны, y - увеличивается на каждый следующий момент времени на 1%, а также рассмотрим наиболее простой алгоритм моделирования в укрупненных шагах.

1. Ввод входных данных для моделирования: с=х(0) - начальный капитал; n - конечное время моделирования; m - коэффициент амортизации; s - единица измерения времени; y - инвестиции.

2. Вычисление xi от i=1 до i=n по рекуррентной формуле, приведенной выше.

3. Поиск стационарного состояния - такого момента времени j, 0jn, начиная с которого все хj, хj +1, :, хn постоянны или изменяются на малую допустимую величину е >0.

4. Выдача результатов моделирования и, по желанию пользователя, графика.

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

алг Производство (арг вещ m, c, n, рез вещ таб х[1:366], лит p, q);

дано | производство с основными фондами, изменяющимися по закону:

| х[i+1]=х[i]+y-mx[i], x[0]=c, i=0, 1, 2, :, n, 0<j<n,

| t=i*h, h=1 - шаг по времени (день),

| i - текущий момент времени,

| m - коэффициент амортизации,

| х[0]=с - заданная начальная величина капитала,

| y - увеличиваемая на 1% каждый раз величина инвестиций

надо | промоделировать динамику основных фондов, т.е. выяснить:

| 1) чему они равны на момент времени n;

| 2) наступает ли гибель предприятия, т.е. обращается ли капитал

| (основные фонды) в нуль при некотором t, и найти это t;

| 3) наступает ли ситуация, когда капитал стабилизируется

нач | начало тела алгоритма

| описание типов переменных

цел i, | i - переменная цикла прогноза (текущее время)

j, | j - задаваемая величина лага

k, | k - момент гибели предприятия (если есть)

y | y - величина инвестиций, увеличиваемая по закону y:=1.01*y

ввод (m, n, c, y) | ввод исходных данных

p:='предприятие не гибнет' | задаем начальное значение s

q:='капитал не стационарен' | задаем начальное значение q

х[0]:=с | начальное значение капитала (не нулевое)

i:=0 | задаем начальный момент времени моделирования

нц пoка (i<=n) и (х[i]>0) | заголовок цикла прогноза капитала

| тело цикла прогноза капитала

х[i+1]=х[i]+y-mx[i] | вычисление прибыли в следующий момент

y:=1.01*y | и увеличиваем на 1% - для следующего момента

если х[i+1]<=0 | проверка гибели

то | если гибнет, - выполняется блок погибшего предприятия

p:="предприятие гибнет" | заменяем значение s

k:=i-1 | и фиксируем время гибели

нц для j от k до n | цикла вычисления всех

x[j]=0 | остальных, нулевых значений прибыли

кц | конец блок обработки погибшего предприятия

если х[i+1]=х[i] | проверка стационарности прибыли

то q:="капитал стационарен" | заменяем старое значение q

кц

кон.

Приведем программу на Паскале для имитационного моделирования (программа реализована для функции типа y=at+b, где a, b - коэффициенты потока инвестиций; структурированность и интерфейс программы "принесены в жертву" компактности, простоте и понятности программы).

PROGRAM MODFOND;

{Исходные данные находятся в файле in.dat текущего каталога}

{Результаты записываются в файл out.dat текущего каталога}

Uses

Crt, Graph, Textwin;

Type

Vector = Array[0..2000] of Real;

Mas = Array[0..2000] of LongInt;

Var

Time, Lag, t, dv, mv, i, yi, p :Integer;

tmax, tmin :LongInt;

a, b, m, X0, maxx, minx, aa, bb, cc, sx, tk :Real;

x :Vector;

ax, ay :Mas;

ch :Char;

f1, f2 :Text;

{-------------------------------------------------------------------------------------------}

Procedure InputKeyboard; { Ввод с клавиатуры }

Begin

OpenWindow(10,5,70,20,' Ввод данных ',14,4);

ClrScr; WriteLn;

WriteLn('Введите время Т прогнозирования системы:');

Repeat

Writeln('Для удобства построения графика введите Т не меньше 2');

Write('Т='); ReadLn(Time);

until Time>=2;

WriteLn('Введите лаг:');

Repeat

Write('Лаг должен быть строго меньше Т - '); ReadLn(Lag);

until Lag<Time;

WriteLn('Введите коэффициенты для вычисления потока инвестиций');

Write('Введите a>0: a= '); ReadLn(a);

Write('Введите b>0: b= '); ReadLn(b);

Repeat

Write('Введите коэффициент амортизации ( 0<M<1 ) - '); Readln(m);

until (m<1) and (m>0);

Write('Введите значение фондов в начальный момент - '); Readln(X0);

CloseWindow;

end;

{-------------------------------------------------------------------------------------------}

Procedure InputFile; { Ввод из файла }

Begin

Assign(f1,'in.dat'); Reset(f1); Readln(f1,time,lag,a,b,m,X0); Close(f1);

End;

{-------------------------------------------------------------------------------------------}

Procedure OutputFile; { Запись результата работы в файл }

Begin

Assign(f2,'out.dat'); Rewrite(f2);

WriteLn(f2,' Результаты моделирования:');

WriteLn(f2,'Значение фондов в заданное время Т = ',x[time]:4:2);

WriteLn(f2,'Максимальное значение фондов = ',maxx:4:2);

Write(f2,'Минимальное значение фондов = ',minx:4:2);

Close(f2);

End;

{------------------------------------------------------------------------------------------}

Procedure InputRnd; { Ввод случайными числами }

Begin

Randomize;

Repeat Time:=Random(90); until Time>=2;

Repeat Lag:=Random(80); until Lag<Time;

a:=Random(10); b:=Random(10); m:=Random; X0:=Random(200);

End;

{------------------------------------------------------------------------------------------}

Procedure OutputScreen; { Вывод данных на экран }

Begin

OpenWindow(10,5,70,20,' Вывод данных: ',4,3); WriteLn;

WriteLn(' Данный набор входных параметров:'); WriteLn;

WriteLn(' Время Т - ',time);

WriteLn(' Лаг - ',lag); WriteLn;

WriteLn('Коэффициенты потока инвестиций:'); WriteLn;

WriteLn(' a - ',a:4:2);

WriteLn(' b - ',b:4:2); WriteLn;

WriteLn('Эмпирический коэффициент амортизации - ',m:4:3);

Write('Состояние фондов в начальный момент - ',X0:4:2);

ReadKey; CloseWindow;

End;

{-------------------------------------------------------------------------------------------}

Procedure Worker; { Рабочая процедура }

Var

yt :real;

Begin

x[0]:=X0;

For t:=1 to Time do

Begin

If t<Lag+1 then yt:=0 else yt:=a*(t-1-Lag)+b; x[t]:=yt+(1-m)*x[t-1];

End;

maxx:=x[0]; minx:=x[0]; tmin:=0; tmax:=0;

For t:=1 to Time do

If x[t]>maxx

then begin maxx:=x[t]; tmax:=t; end

else if x[t]<minx then begin minx:=x[t]; tmin:=t; end;


Подобные документы

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

    контрольная работа [47,7 K], добавлен 11.10.2012

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

    курсовая работа [78,8 K], добавлен 20.05.2013

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

    курсовая работа [367,1 K], добавлен 09.06.2010

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

    реферат [40,4 K], добавлен 21.01.2015

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

    курсовая работа [97,3 K], добавлен 07.10.2013

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

    учебное пособие [514,6 K], добавлен 17.06.2011

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

    контрольная работа [47,5 K], добавлен 04.08.2010

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

    презентация [253,7 K], добавлен 19.12.2013

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

    реферат [26,4 K], добавлен 06.03.2011

  • Общие принципы системного анализа. Основные этапы построения эконометрических моделей и использования их для прогнозирования. Экстраполяция трендов и ее использование в анализе. Правила составления информации подсистем. Модель "спрос-предложение".

    реферат [190,5 K], добавлен 24.01.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.