Вводится понятие модели, анализируются различные классы моделей, связь моделирования с общей теорией систем. Обсуждается численное, статистическое и имитационное моделирование, его место в системе других методов познания. Рассматриваются различные классификации компьютерных моделей и области их применения.
1.1. Понятие модели. Цели моделирования
В процессе изучения окружающего мира субъекту познания противостоит исследуемая часть объективной реальности –– объект познания. Ученый, используя эмпирические методы познания (наблюдение и эксперимент), устанавливает факты, характеризующие объект. Элементарные факты обобщаются и формулируются эмпирические законы. Следующий шаг состоит в развитии теории и построении теоретической модели, объясняющей поведение объекта и учитывающей наиболее существенные факторы, влияющие на изучаемое явление. Эта теоретическая модель должна быть логичной и соответствовать установленным фактам. Можно считать, что любая наука представляет собой теоретическую модель определенной части окружающей действительности.
Часто в процессе познания реальный объект заменяется некоторым другим идеальным, воображаемым или материальным объектом , несущим изучаемые черты исследуемого объекта , и называемым моделью. Эта модель подвергается исследованию: на нее оказывают различные воздействия, изменяют параметры и начальные условия, и выясняют, как изменяется ее поведение. Результаты исследования модели переносят на объект исследования , сопоставляют с имеющимися эмпирическими данными и т.д.
Таким образом, модель –– это материальный или идеальный объект, замещающий исследуемую систему и адекватным образом отображающий ее существенные стороны. Модель должна в чем–то повторять исследуемый процесс или объект со степенью соответствия, позволяющей изучить объект–оригинал . Чтобы результаты моделирования можно было бы перенести на исследуемый объект, модель должна обладать свойством адекватности. Преимущество подмены исследуемого объекта его моделью в том, что часто модели проще, дешевле и безопаснее исследовать. Действительно, чтобы создать самолет, следует построить теоретическую модель, нарисовать чертеж, выполнить соответствующие расчеты, изготовить его уменьшенную копию, исследовать ее в аэродинамической трубе и т.д.
Модель объекта должна отражать его наиболее важные качества, пренебрегая второстепенными [4]. Тут уместно вспомнить притчу о трех незрячих мудрецах, решивших узнать что такое слон. Один мудрец подержал слона за хобот, и заявил, что слон –– гибкий шланг. Другой потрогал слона за ногу и решил, что слон – это колонна. Третий мудрец подергал за хвост и пришел к мнению, что слон – это веревка. Ясно, что все мудрецы ошиблись: ни один из названных объектов (шланг, колонна, веревка) не отражают существенных сторон изучаемого объекта (слон), поэтому их ответы (предлагаемые модели) не являются правильными.
При моделировании могут преследоваться различные цели: 1) познание сущности изучаемого объекта, причин его поведения, “устройства” и механизма взаимодействия элементов; 2) объяснение уже известных результатов эмпирических исследований, верификация параметров модели по экспериментальным данным; 3) прогнозирование поведения систем в новых условиях при различных внешних воздействиях и способах управления; 4) оптимизация функционирования исследуемых систем, поиск правильного управления объектом в соответствии с выбранным критерием оптимальности.
1.2. Различные виды моделей
Используемые модели чрезвычайно разнообразны. Системный анализ требует классификации и систематизации, то есть структурирование изначально неупорядоченного множества объектов и превращение его в систему. Известны различные способы классификации существующего многообразия моделей. Так, в [11] выделяют следующие виды моделей: 1) детерминированные и стохастические; 2) статические и динамические; 3) дискретные, непрерывные и дискретно–непрерывные; 4) мысленные и реальные. В других работах [1, 6], модели классифицируют по следующим основаниям (рис. 1): 1) по характеру моделируемой стороны объекта; 2) по отношению ко времени; 3) по способу представления состояния системы; 4) по степени случайности моделируемого процесса; 5) по способу реализации.
При классификации по характеру моделируемой стороны объекта выделяют следующие виды моделей (рис. 1): 1.1. Кибернетические или функциональные модели; в них моделируемый объект рассматривается как “черный ящик”, внутреннее устройство которого неизвестно. Поведение такого “черного ящика” может описываться математическим уравнением, графиком или таблицей, которые связывают выходные сигналы (реакции) устройства с входными (стимулами). Структура и принципы действия такой модели не имеют ничего общего с исследуемым объектом, но функционирует она похожим образом. Например, компьютерная программа, моделирующая игру в шашки. 1.2. Структурные модели –– это модели, структура которых соответствует структуре моделируемого объекта. Примерами являются командно-штабные учения, день самоуправления, модель электронной схемы в Electronics Workbench и т.д. 1.3.Информационные модели, представляющие собой совокупность специальным образом подобранных величин и их конкретных значений, которые характеризуют исследуемый объект. Выделяют вербальные (словесные), табличные, графические и математические информационные модели. Например, информационная модель студента может состоять из оценок за экзамены, контрольные и лабораторные работы. Или информационная модель некоторого производства представляет набор параметров, характеризующих потребности производства, его наиболее существенные характеристики, параметры выпускаемого товара.
По отношению ко времени выделяют: 1. Статические модели –– модели, состояние которых не изменяется с течением времени: макет застройки квартала, модель кузова машины. 2. Динамические модели представляют собой функционирующие объекты, состояние которых непрерывно изменяется. К ним относятся действующие модели двигателя и генератора, компьютерная модель развития популяции, анимационная модель работы ЭВМ и т.д.
По способу представления состояния системы различают: 1. Дискретные модели –– это автоматы, то есть реальные или воображаемые дискретные устройства с некоторым набором внутренних состояний, преобразующие входные сигналы в выходные в соответствии с заданными правилами. 2. Непрерывные модели –– это модели, в которых протекают непрерывные процессы. Например, использование аналоговой ЭВМ для решения дифференциального уравнения, моделирования радиоактивного распада с помощью конденсатора, разряжающегося через резистор и т.д. По степени случайности моделируемого процесса выделяют (рис. 1): 1. Детерминированные модели, которым свойственно переходить из одного состояния в другое в соответствии с жестким алгоритмом, то есть между внутренним состоянием, входными и выходными сигналами имеется однозначное соответствий (модель светофора). 2. Стохастические модели, функционирующие подобно вероятностным автоматам; сигнал на выходе и состояние в следующий момент времени задается матрицей вероятностей. Например, вероятностная модель ученика, компьютерная модель передачи сообщений по каналу связи с шумом и т.д.
Рис. 1. Различные способы классификации моделей.
По способу реализации различают: 1. Абстрактные модели, то есть мысленные модели, существующие только в нашем воображении. Например, структура алгоритма, которая может быть представлена с помощью блок–схемы, функциональная зависимость, дифференциальное уравнение, описывающее некоторый процесс. К абстрактным моделям также можно отнести различные графические модели, схемы, структуры, а также анимации. 2. Материальные (физические) модели представляют собой неподвижные макеты либо действующие устройства, функционирующие в чем–то подобно исследуемому объекту. Например, модель молекулы из шариков, макет атомной подводной лодки, действующая модель генератора переменного тока, двигателя и т.д. Реальное моделирование предусматривает построение материальной модели объекта и выполнение с ней серии экспериментов. Например, для изучения движения подводной лодки в воде строят ее уменьшенную копию и моделируют течение с помощью гидродинамической трубы.
Нас будут интересовать абстрактные модели, которые в свою очередь подразделяются на вербальные, математические и компьютерные. К вербальным или текстовым моделям относятся последовательности утверждений на естественном или формализованном языке, описывающие объект познания. Математические модели образуют широкий класс знаковых моделей, в которых используются математические действия и операторы. Часто они представляют собой систему алгебраических или дифференциальных уравнений. Компьютерные модели представляют собой алгоритм или компьютерную программу, решающую систему логических, алгебраических или дифференциальных уравнений и имитирующую поведение исследуемой системы. Иногда мысленное моделирование подразделяют на: 1. Наглядное, –– предполагает создание воображаемого образа, мысленного макета, соответствующих исследуемому объекту на основе предположений о протекающем процессе, или по аналогии с ним. 2. Символическое, –– заключается в создании логического объекта на основе системы специальных символов; подразделяется на языковое (на основе тезауруса основных понятий) и знаковое. 3. Математическое, –– состоит в установлении соответствия объекту исследования некоторого математического объекта; подразделяется на аналитическое, имитационное и комбинированное. Аналитическое моделирование предполагает написание системы из алгебраических, дифференциальных, интегральных, конечно–разностных уравнений и логических условий. Для исследования аналитической модели могут быть использованы аналитический метод и численный метод. В последнее время численные методы реализуются на ЭВМ, поэтому компьютерные модели можно рассматривать как разновидность математических.
Математические модели довольно разнообразны и тоже могут быть классифицированы по разным основаниям [6]. По степени абстрагирования при описании свойств системы они делятся на мета–, макро– и микромодели. В зависимости от формы представления различают инвариантные, аналитические, алгоритмические и графические модели. По характеру отображаемых свойств объекта модели классифицируют на структурные, функциональные и технологические. По способу получения различают теоретические, эмпирические и комбинированные. В зависимости от характера математического аппарата модели бывают линейные и нелинейные, непрерывные и дискретные, детерминированные и вероятностные, статические и динамические. По способу реализации различают аналоговые, цифровые, гибридные, нейронечеткие модели, которые создаются на основе аналоговых, цифровых, гибридных вычислительных машин и нейросетей.
1.3. Моделирование и системный подход
В основе теории моделирования лежит общая теория систем, также известная как системный подход. Это общенаучное направление, согласно которому объект исследования рассматривается как сложная система, взаимодействующая с окружающей средой. Объект является системой, если он состоит из совокупности взаимосвязанных между собой элементов, сумма свойств которых не равна свойствам объекта. Система отличается от смеси наличием упорядоченной структуры и определенных связей между элементами. Например, телевизор, состоящий из большого числа радиодеталей, соединенных между собой определенным образом, является системой, а те же радиодетали, беспорядочно лежащие в ящике, системой не являются. Различают следующие уровни описания систем: 1) лингвистический (символический); 2) теоретико-множественный; 3) абстрактно-логический; 4) логико-математический; 5) теоретико-информа-ционный; 6) динамический; 7) эвристический.
Рис. 2. Исследуемая система и окружающая среда.
Система взаимодействует с окружающей средой, обменивается с ней веществом, энергией, информацией (рис. 2). Каждый ее элемент является подсистемой. Система, включающая анализируемый объект как подсистему, называется надсистемой. Можно считать, что система имеет входы, на которые поступают сигналы, и выходы, выдающие сигналы в среду. Отношение к объекту познания как к целому, составленному из многих взаимосвязанных между собой частей, позволяет увидеть за огромным количеством несущественных деталей и особенностей нечто главное и сформулировать системообразующий принцип. Если внутреннее устройство системы неизвестно, то ее считают “черным ящиком” и задают функцию, связывающую состояния входов и выходов. В этом состоит кибернетический подход. При этом анализируется поведение рассматриваемой системы, ее отклик на внешние воздействия и изменения окружающей среды.
Исследование состава и структуры объекта познания называется системным анализом. Его методология нашла свое выражение в следующих принципах [4]: 1) принцип физичности: поведение системы описывается определенными физическими (психологическими, экономическими и др.) законами; 2) принцип моделируемости: система может быть промоделирована конечным числом способов, каждый из которых отражает ее существенные стороны; 3) принцип целенаправленности: функционирование достаточно сложных систем приводит к достижению некоторой цели, состояния, сохранения процесса; при этом система способна противостоять внешним воздействиям.
Как указывалось выше, система имеет структуру –– множество внутренних устойчивых связей между элементами, определяющее основные свойства данной системы. Ее можно представить графически в виде схемы, химической или математической формулы или графа. Это графическое изображение характеризует пространственное расположение элементов, их вложенность или подчиненность, хронологическую последовательность различных частей сложного события. При построении модели рекомендуется составлять структурные схемы изучаемого объекта, особенно если он достаточно сложен. Это позволяет понять совокупность всех интегративных свойств объекта, которыми не обладают его составные части.
Одной из важнейших идей системного подхода является принцип эмерджентности, –– при объединении элементов (частей, компонентов) в единое целое возникает системный эффект: у системы появляются качества, которым не обладает ни один из входящих в нее элементов. Принцип выделения основной структуры системы состоит в том, что изучение достаточно сложного объекта требует выдвижения на первый план некой части его структуры, являющейся главной или основной. Иными словами, нет необходимости учитывать все многообразие деталей, а следует отбросить менее существенное и укрупнить важные части объекта для того, чтобы понять основные закономерности.
Любая система взаимодействует с другими не входящими в нее системами и образующими среду. Поэтому ее следует рассматривать как подсистему некоторой более обширной системы. Если ограничиться анализом только внутренних связей, то в некоторых случаях не удастся создать правильной модели объекта. Следует учесть существенные связи системы со средой, то есть внешние факторы, и тем самым “замкнуть” систему. В этом состоит принцип замкнутости.
Чем сложнее исследуемый объект, тем больше разнообразных моделей (описаний) можно построить. Так, глядя на цилиндрическую колонну с различных сторон, все наблюдатели скажут, что ее можно промоделировать однородным цилиндрическим телом определенных размеров. Если вместо колонны наблюдатели станут рассматривать какую–то сложную архитектурную композицию, то каждый увидит свое и построит свою модель объекта. При этом, как и в случае с мудрецами, получатся различные результаты, противоречащие друг другу. И дело тут не в том, что истин много или объект познания непостоянен и многолик, а в том, что объект сложен и истина сложна, а используемые методы познания поверхностны и не позволили понять сущность до конца.
При изучении больших систем исходят из принципа иерархичности, который заключается в следующем.Изучаемый объект содержит несколько связанных подсистем первого уровня, каждая из которых сама является системой, состоящая из подсистем второго уровня и т.д. Поэтому описание структуры и создание теоретической модели должно учитывать “расположение” элементов на различных “уровнях”, то есть их иерархию. К основным свойствам систем относятся: 1) целостность, то есть несводимость свойств системы к сумме свойств отдельных элементов; 2) структурность, –– неоднородность, наличие сложной структуры; 3) множественность описания, –– система может быть описана различными способами; 4) взаимозависимость системы и среды, –– элементы системы связаны с объектами, не входящими в нее и образующими окружающую среду; 5) иерархичность, –– система имеет многоуровневую структуру.
1.4. Качественные и количественные модели
Задача науки состоит в построении теоретической модели окружающего мира, которая бы объясняла известные и предсказывала неизвестные явления. Теоретическая модель может быть качественной или количественной. Рассмотрим качественное объяснение электромагнитных колебаний в колебательном контуре, состоящем из конденсатора и катушки индуктивности. При подключении заряженного конденсатора к катушке индуктивности он начинает разряжаться, через катушку индуктивности течет ток, энергия электрического поля переходит в энергию магнитного поля. Когда конденсатор полностью разрядился, ток через катушку индуктивности достигает максимального значения. За счет инерционности катушки индуктивности, обусловленной явлением самоиндукции, происходит перезарядка конденсатора, он заряжается в обратном направлении и т.д. Эта качественная модель явления позволяет проанализировать поведение системы и предсказать, например, что при уменьшении емкости конденсатора частота собственных колебаний контура возрастет.
Важным шагом на пути познания является переход от качественно–описательных методов к математическим абстракциям. Решение многих проблем естествознания потребовало оцифровки пространства и времени, введения понятия системы координат, разработки и совершенствования методов измерения различных физических, психологических и иных величин, что позволило оперировать с численными значениями. В результате были получены достаточно сложные математические модели, представляющие систему алгебраических и дифференциальных уравнений. В настоящее время исследование природных и иных явлений уже не ограничивается качественными рассуждениями, а предусматривает построение математической теории.
Создание количественной модели электромагнитных колебаний в RLC-цепи предполагает введение точных и однозначных способов определения и измерения таких величин, как сила тока , заряд , напряжение , емкость , индуктивность , сопротивление . Не зная, как измерить силу тока в цепи или емкость конденсатора, бессмысленно говорить о каких–то количественных соотношениях. Имея однозначные определения перечисленных величин, и установив процедуру их измерения, можно приступать к построению математической модели, записи системы уравнений. В результате получается неоднородное дифференциальное уравнение второго порядка . Его решение позволяет, зная заряд конденсатора и ток через катушку индуктивности в начальный момент, определить состояние цепи в последующие моменты времени.
Построение математической модели требует определения независимых величин, однозначно описывающих состояние исследуемого объекта. Например, состояние механической системы определяется координатами входящих в нее частиц и проекциями их импульсов. Состояние электрической цепи задается зарядом конденсатора, силой тока через катушку индуктивности и т.д. Состояние экономической системы определяется набором таких показателей, как количество денежных средств, вложенных в производство, прибыль, число рабочих, занятых изготовлением продукции и т.д.
Поведение объекта во многом определяется его параметрами, то есть величинами, которые характеризуют его свойства. Так, параметрами пружинного маятника являются жесткость пружины и масса подвешенного к ней тела. Электрическая RLC–цепь характеризуется сопротивлением резистора, емкостью конденсатора, индуктивностью катушки. К параметрам биологической системы относятся коэффициент размножения, количество биомассы, потребляемой одним организмом и т.д. Другим важным фактором, влияющим на поведение объекта, является внешнее воздействие. Очевидно, что поведение механической системы зависит от действующих на нее внешних сил. На процессы в электрической цепи влияет приложенное напряжение, а развитие производства связано с внешней экономической ситуацией в стране. Таким образом, поведение исследуемого объекта (а значит и его модели) зависит от его параметров, начального состояния и внешнего воздействия.
Создание математической модели требует определения совокупности состояний системы, множества внешних воздействий (входных сигналов) и откликов (выходных сигналов), а также задания соотношений, связывающих отклик системы с воздействием и ее внутренним состоянием. Они позволяют исследовать огромное количество различных ситуаций, задавая иные параметры системы, начальные условия и внешние воздействия. Искомая функция, характеризующая отклик системы, получается в табличном или графическом виде.
Все существующие способы исследования математической модели можно разделить на две группы.Аналитическое решение уравнения часто предусматривает проведение громоздких и сложных математических выкладок и в результате приводит к уравнению, выражающему функциональную связь между искомой величиной, параметрами системы, внешним воздействием и временем. Результаты такого решения нуждаются в интерпретации, предполагающей анализ полученных функций, построение графиков. Численные методы исследования математической модели на ЭВМ предполагают создание компьютерной программы, которая решает систему соответствующих уравнений и выводит на экран таблицу либо графическое изображение. Получающиеся статические и динамические картинки наглядно пояснять сущность исследуемых процессов.
1.5. Компьютерное моделирование
Эффективным способом изучения явлений окружающей действительности является научный эксперимент, состоящий в воспроизведении изучаемого явления природы в управляемых и контролируемых условиях. Однако часто проведение эксперимента невозможно либо требует слишком больших экономических затрат и может привести к нежелательным последствиям. В этом случае исследуемый объект заменяют компьютерной моделью и исследуют ее поведение при различных внешних воздействиях. Повсеместное распространение персональных компьютеров, информационных технологий, создание мощных суперЭВМ сделало компьютерное моделирование одним из результативных методов изучения физических, технических, биологических, экономических и иных систем. Часто компьютерные модели проще и удобнее исследовать, они позволяют проводить вычислительные эксперименты, реальная постановка которых затруднена или может дать непредсказуемый результат. Логичность и формализованность компьютерных моделей позволяет выявить основные факторы, определяющие свойства изучаемых объектов, исследовать отклик физической системы на изменения ее параметров и начальных условий.
Компьютерное моделирование требует абстрагирования от конкретной природы явлений, построения сначала качественной, а затем и количественной модели. За этим следует проведение серии вычислительных экспериментов на компьютере, интерпретация результатов, сопоставление результатов моделирования с поведением исследуемого объекта, последующее уточнение модели и т.д. Вычислительный эксперимент фактически является экспериментом над математической моделью исследуемого объекта, проводимого с помощью ЭВМ [10]. Часто он значительно дешевле и доступнее натурного эксперимента, его выполнение требует меньшего времени, он дает более подробную информацию о величинах, характеризующих состояние системы.
Сущность компьютерного моделирования системы заключается в создании компьютерной программы (пакета программ), описывающей поведение элементов исследуемой системы в процессе ее функционирования, учитывающей их взаимодействие между собой и внешней средой, и проведении на ЭВМ серии вычислительных экспериментов. Это делается с целью изучения природы и поведения объекта, его оптимизации и структурного развития, прогнозирования новых явлений. Перечислим требования, которым должна удовлетворять модель исследуемой системы [9, c.85-86]: 1. Полнота модели, то есть возможность вычисления всех характеристик системы с требуемой точностью и достоверностью. 2. Гибкость модели, что позволяет воспроизводить и проигрывать различные ситуации и процессы, изменять структуру, алгоритмы и параметры изучаемой системы. 3. Длительность разработки и реализации, характеризующая временные затраты на создание модели. 4. Блочность структуры, допускающая добавление, исключение и замену некоторых частей (блоков) модели. Кроме того, информационное обеспечение, программные и технические средства должны позволять модели обмениваться информацией с соответствующей базой данных и обеспечивать эффективную машинную реализацию и удобную работу пользователя.
К основным этапам компьютерного моделирования относятся (рис. 3): 1) постановка задачи, описание исследуемой системы и выявление ее компонентов и элементарных актов взаимодействия; 2) формализация, то есть создание математической модели, представляющей собой систему уравнений и отражающей сущность исследуемого объекта; 3) разработка алгоритма, реализация которого позволит решить поставленную задачу; 4) написание программы на конкретном языке программирования; 5) планирование и выполнение вычислений на ЭВМ, доработка программы и получение результатов; 6) анализ и интерпретация результатов, их сопоставление с эмпирическими данными. Затем все это повторяется на следующем уровне.
Разработка компьютерной модели объекта представляет собой последовательность итераций: сначала на основе имеющейся информации о системе S строится модель , проводится серия вычислительных экспериментов, результаты анализируются. При получении новой информации об объекте S учитываются дополнительные факторы, получается модель , поведение которой тоже исследуется на ЭВМ. После этого создаются модели , и т.д. до тех пор, пока не получится модель, с требуемой точностью соответствующая системе S.
Рис. 3. Этапы компьютерного моделирования.
В общем случае поведение исследуемой системы описывается законом функционирования , где –– вектор входных воздействий (стимулов), –– вектор выходных сигналов (откликов, реакций), –– вектор воздействий внешней среды, –– вектор собственных параметров системы [9]. Закон функционирования может иметь вид словесного правила, таблицы, алгоритма, функции, совокупности логических условий и т.д. В случае, когда закон функционирования содержит время, говорят о динамических моделях и системах. Например, разгон и торможение асинхронного двигателя, переходный процесс в цепи, содержащей конденсатор, функционирование вычислительной сети, системы массового обслуживания. Во всех этих случаях состояние системы, а значит и ее модели, изменяется с течением времени.
Если поведение системы описывается законом , не содержащим время явно, то речь идет о статических моделях и системах, решении стационарных задач и т.д. Приведем несколько примеров: расчет нелинейной цепи постоянного тока, нахождение стационарного распределения температуры в стержне при постоянных температурах его концов, формы упругой пленки, натянутой на каркас, профиля скоростей в установившемся течении вязкой жидкости и т.д.
Функционирование системы можно рассматривать как последовательную смену состояний , , … , , которым соответствуют некоторые точки в многомерном фазовом пространстве. Множество всех точек , отвечающих всевозможным состояниям системы, называют пространством состояний объекта (или модели). Каждой реализации процесса соответствует одна фазовая траектория, проходящая через некоторые точки из множества . Если математическая модель содержит элемент случайности, то получается стохастическая компьютерная модель. В частном случае, когда параметры системы и внешние воздействия однозначно определяют выходные сигналы, говорят о детерминированной модели.
Принципы компьютерного моделирования. Связь c другими методами познания
Итак, модель –– это объект, заменяющий исследуемую систему, и имитирующий ее структуру и поведение. Моделью может являться материальный объект, совокупность особым образом упорядоченных данных, система математических уравнений или компьютерная программа.Под моделированием понимают представление основных характеристик объекта исследования с помощью другой системы (материального объекта, совокупности уравнений, компьютерной программы). Перечислим принципы моделирования [5]:
1. Принцип адекватности: Модель должна учитывать наиболее существенные стороны исследуемого объекта и отражать его свойства с приемлемой точностью. Только в этом случае результаты моделирования можно распространить на объект исследования.
2. Принцип простоты и экономичности: Модель должна быть достаточно простой для того чтобы ее использование было эффективно и экономически выгодно. Она не должна быть более сложной, чем это требуется для исследователя.
3. Принцип информационной достаточности: При полном отсутствии информации об объекте построить модель невозможно. При наличии полной информации моделирование лишено смысла. Существует уровень информационной достаточности, при достижении которого может быть построена модель системы.
4. Принцип осуществимости: Создаваемая модель должна обеспечивать достижение поставленной цели исследования за конечное время.
5. Принцип множественности и единства моделей: Любая конкретная модель отражает лишь некоторые стороны реальной системы. Для полного исследования необходимо построить ряд моделей, отражающих наиболее существенные стороны исследуемого процесса и имеющих что–то общее. Каждая последующая модель должна дополнять и уточнять предыдущую.
6. Принцип системности. Исследуемая система представима в виде совокупности взаимодействующих друг с другом подсистем, которые моделируются стандартными математическими методами. При этом свойства системы не являются суммой свойств ее элементов.
7. Принцип параметризации. Некоторые подсистемы моделируемой системы могут быть охарактеризованы единственным параметром (вектором, матрицей, графиком, формулой).
Модель должна удовлетворять следующим требованиям: 1) быть адекватной, то есть отражать наиболее существенные стороны исследуемого объекта с требуемой точностью; 2) способствовать решению определенного класса задач; 3) быть простой и понятной, основываться на минимальном количестве предположений и допущений; 4) позволять модифицировать и дополнять себя, переходить к другим данным; 5) быть удобной в использовании.
Связь компьютерного моделирования с другими методами познания показана из рис. 4. Объект познания исследуется эмпирическими методами (наблюдение, эксперимент), установленные факты являются основой для построения математической модели. Получившаяся система математических уравнений может исследоваться аналитическими методами или с помощью ЭВМ, –– в этом случае речь идет о создании компьютерной модели изучаемого явления. Проводится серия вычислительных экспериментов или компьютерных имитаций, и получающиеся результаты сопоставляются с результатами аналитического исследования математической модели и экспериментальными данными. Выводы учитываются для улучшения методики экспериментального изучения объекта исследования, развития математической модели и совершенствования компьютерной модели. Исследование социальных и экономических процессов отличается лишь невозможностью в полной мере использовать экспериментальные методы.
Рис. 4. Компьютерное моделирование среди других методов познания.
1.6. Виды компьютерных моделей
Под компьютерным моделированием в самом широком смысле будем понимать процесс создания и исследования моделей с помощью компьютера. Выделяют следующие виды моделирования [1, 4, 6, 9]:
1. Физическое моделирование: компьютер –– часть экспериментальной установки или тренажера, он воспринимает внешние сигналы, осуществляет соответствующие расчеты и выдает сигналы, управляющие различными манипуляторами. Например, учебная модель самолета, представляющая собой кабину, установленную на соответствующих манипуляторах, соединенных с компьютером, который реагирует на действия пилота и изменяет наклон кабины, показания приборов, вид из иллюминатора и т.д., имитируя полет реального самолета.
2. Динамическое или численное моделирование, предполагающее численное решение системы алгебраических и дифференциальных уравнений методами вычислительной математики и проведение вычислительного эксперимента при различных параметрах системы, начальных условиях и внешних воздействиях. Используется для моделирования различных физических, биологических, социальных и других явлений: колебания маятника, распространение волны, изменение численности населения, популяции данного вида животных и т.д.
3. Имитационное моделирование состоит в создании компьютерной программы (или пакета программ), имитирующей поведение сложной технической, экономической или иной системы на ЭВМ с требуемой точностью. Имитационное моделирование предусматривает формальное описание логики функционирования исследуемой системы с течением времени, которое учитывает существенные взаимодействия ее компонентов и обеспечивает проведение статистических экспериментов. Объектно-ориентированные компьютерные симуляции используются для исследования поведения экономических, биологических, социальных и иных систем, для создания компьютерных игр, так называемого “виртуального мира”, обучающих программ и анимаций. Например, модель технологического процесса, аэродрома, некоторой отрасли производства и т.д.
4. Статистическое моделирование используется для изучения стохастических систем и состоит в многократном проведении испытаний с последующей статистической обработкой получающихся результатов. Подобные модели позволяют исследовать поведение всевозможных систем массового обслуживания, многопроцессорных систем, информационно-вычислительных сетей, различных динамических систем, на которые воздействуют случайные факторы. Статистические модели применяются при решении вероятностных задач, а также при обработке больших массивов данных (интерполяция, экстраполяция, регрессия, корреляция, расчет параметров распределения и т.д.). Они отличаются от детерминированных моделей, использование которых предполагает численное решение систем алгебраических или дифференциальных уравнений, либо замену изучаемого объекта детерминированным автоматом.
5. Информационное моделирование заключается в создании информационной модели, то есть совокупности специальным образом организованных данных (знаков, сигналов), отражающих наиболее существенные стороны исследуемого объекта. Различают наглядные, графические, анимационные, текстовые, табличные информационные модели. К ним относятся всевозможные схемы, графы, графики, таблицы, диаграммы, рисунки, анимации, выполненные на ЭВМ, в том числе цифровая карта звездного неба, компьютерная модель земной поверхности и т.д.
6. Моделирование знаний предполагает построение системы искусственного интеллекта, в основе которой лежит база знаний некоторой предметной области (части реального мира). Базы знаний состоят из фактов (данных) и правил. Например, компьютерная программа, умеющая играть в шахматы (рис. 5), должна оперировать информацией о “способностях” различных шахматных фигур и “знать” правила игры. К данному виду моделей относят семантические сети, логических модели знаний, экспертные системы, логические игры и т.д. Логические модели используются для представления знаний в экспертных системах, для создания систем искусственного интеллекта, осуществления логического вывода, доказательства теорем, математических преобразований, построения роботов, использования естественного языка для общения с ЭВМ, создания эффекта виртуальной реальности в компьютерных играх и т.д.
Рис. 5. Компьютерная модель поведения шахматиста.
Исходя из целей моделирования, компьютерные модели подразделяют на группы: 1) дискриптивные модели, используемые для понимания природы исследуемого объекта, выявления наиболее существенных факторов, влияющих на его поведение; 2) оптимизационные модели, позволяющие выбрать оптимальный способ управления технической, социально-экономической или иной системой (например, космической станцией); 3) прогностические модели, помогающие прогнозировать состояние объекта в последующие моменты времени (модель земной атмосферы, позволяющая предсказать погоду); 4) учебные модели, применяемые для обучения, тренинга и тестирования учащихся, студентов, будущих специалистов; 5) игровые модели, позволяющие создать игровую ситуацию, имитирующую управление армией, государством, предприятием, человеком, самолетом и т.д., либо играющие в шахматы, шашки и другие логические игры.
Классификация компьютерных моделей
по типу математической схемы
В теории моделирования систем компьютерные модели подразделяются на численные, имитационные, статистические и логические. При компьютерном моделировании, как правило, используют одну из типовых математических схем: дифференциальные уравнения, детерминированные и вероятностные автоматы, системы массового обслуживания, сети Петри и т.д. Учет способа представления состояния системы и степени случайности моделируемых процессов позволяет построить таблицу 1.
Таблица 1.
По типу математической схемы различают [5, 9]: 1. Непрерывно–детеминированные модели, которые используются для моделирования динамических систем и предполагают решение системы дифференциальных уравнений. Математические схемы этого вида называются D-схемами (от англ. dynamic). 2. Дискретно–детерминированные модели используются для исследования дискретных систем, которые могут находиться в одном из множества внутренних состояний. Они моделируются абстрактным конечным автоматом, задаваемым F–схемой (от англ. finite automata): . Здесь , –– множества входных и выходных сигналов, –– множеством внутренних состояний, –– функция переходов, –– функция выходов. 3. Дискретно–стохастические модели предполагают использование схемы вероятностных автоматов, функционирование которых содержит элемент случайности. Они также называются P–схемами (от англ. probabilistic automat). Переходы такого автомата из одного состояния в другое определяется соответствующей матрицей вероятностей. 4. Непрерывно-стохастические модели как правило применяются для изучения систем массового обслуживания и называются Q–схемами (от англ. queueing system). Для функционирования некоторых экономических, производственных, технических систем присуще случайное появление требований (заявок) на обслуживание и случайное время обслуживания. 5. Сетевые модели используются для анализа сложных систем, в которых одновременно протекает несколько процессов. В этом случае говорят о сетях Петри и N–схемах (от англ. Petri Nets). Сеть Петри задается четверкой , где – множество позиций, – множество переходов, – входная функция, – выходная функция. Маркированная N-схема позволяет промоделировать параллельные и конкурирующие процессы в различных системах. 6. Комбинированные схемы основываются на понятии агрегативной системы и называются A-схемами (от англ. aggregate system). Этот универсальных подход, разработанный Н.П.Бусленко [3], позволяет исследовать всевозможные системы, которые рассматриваются как совокупность взаимосвязанных между собой агрегатов. Каждый агрегат характеризуется векторами состояний, параметров, воздействия внешней среды, входных воздействий (управляющих сигналов), начальных состояний, выходных сигналов, оператором переходов, оператором выходов.
Исследование имитационной модели производится на цифровых и аналоговых вычислительных машинах. Используемая имитационная система включает в себя математическое, программное, информационное, техническое и эргономическое обеспечение. Эффективность имитационного моделирования характеризуется точностью и достоверностью получающихся результатов, стоимостью и временем создания модели и работы с ней, затратами машинных ресурсов (времени вычислений и требуемой памяти). Для оценки эффективности модели необходимо получающиеся результаты сравнить с результатами натурного эксперимента, а также результатами аналитического моделирования.
В некоторых случаях приходится объединять численное решение дифференциальных уравнений и имитацию функционирования той или иной достаточно сложной системы. В этом случае говорят о комбинированном или аналитико-имитационном моделировании. Его основное преимущество состоит в возможности исследования сложных систем, учета дискретных и непрерывных элементов, нелинейности различных характеристик, случайные факторы. Аналитическое моделирование позволяет проанализировать только достаточно простые системы.
Одним из эффективных методов исследования имитационных моделей является метод статистических испытаний. Он предусматривает многократное воспроизведение того или иного процесса при различных параметрах, изменяющихся случайным образом по заданному закону. ЭВМ может провести 1000 испытаний и зарегистрировать основные характеристики поведения системы, ее выходные сигналы, а затем определить их математическое ожидание, дисперсию, закон распределения. Недостаток использования машинной реализации имитационной модели состоит в том, что полученное с ее помощью решение имеет частный характер и соответствует конкретным параметрам системы, ее начальному состоянию и внешним воздействиям. Преимущество заключается в возможности исследования сложных систем.
1.8. Области применения компьютерных моделей
Совершенствование информационных технологий обусловило использование компьютеров практически во всех сферах деятельности человека. Развитие научных теорий предполагает выдвижение основных принципов, построение математической модели объекта познания, получение из нее следствий, которые могут быть сопоставлены с результатами эксперимента. Использование ЭВМ позволяет, исходя из математических уравнений, рассчитать поведение исследуемой системы в тех или иных условиях. Часто это единственный способ получения следствий из математической модели. Например, рассмотрим задачу о движении трех или более частиц, взаимодействующих друг с другом, которая актуальна при исследовании движении планет, астероидов и других небесных тел. В общем случае она сложна и не имеет аналитического решения, и лишь использование метода компьютерного моделирования позволяет рассчитать состояние системы в последующие моменты времени.
Совершенствование вычислительной техники, появление ЭВМ, позволяющей быстро и достаточно точно осуществлять вычисления по заданной программе, ознаменовало качественный скачок на пути развития науки. На первый взгляд кажется, что изобретение вычислительных машин не может непосредственно влиять на процесс познания окружающего мира. Однако это не так: решение современных задач требует создания компьютерных моделей, проведения огромного количества вычислений, что стало возможным лишь после появления электронно–вычислительных машин, способных выполнять миллионы операций в секунду. Существенным является и то, что вычисления производятся автоматически, в соответствии с заданным алгоритмом и не требуют вмешательства человека. Если ЭВМ относится к технической базе проведения вычислительного эксперимента, то ее теоретическую основу составляют прикладная математика, численные методы решения систем уравнений.
Успехи компьютерного моделирования тесно связаны с развитием численных методов, начавшегося с фундаментальных работ Исаака Ньютона, который еще в 17 веке предложил их использовать для приближенного решения алгебраических уравнений. Леонард Эйлер разработал метод решения обыкновенных дифференциальных уравнений. Из современных ученых весомый вклад в развитие компьютерного моделирования сделал академик А.А.Самарский [7], основоположник методологии вычислительного эксперимента в физике. Именно им была предложена знаменитая триада "модель – алгоритм – программа" и разработана технология компьютерного моделирования, успешно используемая для изучения физических явлений. Одним из первых выдающихся результатов компьютерного эксперимента в физике является открытие в 1968 году температурного токового слоя в плазме, создаваемой в МГД–генераторах (эффект Т–слоя). Оно было выполнено на ЭВМ и позволило предсказать исход реального эксперимента, проведенного через несколько лет. В настоящее время вычислительный эксперимент используется для выполнения исследований в следующих направлениях [2, 9, 10]: 1) расчет ядерных реакций; 2) решение задач небесной механики, астрономии и космонавтики; 3) изучение глобальных явлений на Земле, моделирование погоды, климата, исследование экологических проблем, глобального потепления, последствий ядерного конфликта и т.д.; 4) решение задач механики сплошных сред, в частности, гидродинамики; 5) компьютерное моделирование различных технологических процессов; 6) расчет химических реакций и биологических процессов, развитие химической и биологической технологии; 7) социологические исследования, в частности, моделирование выборов, голосования, распространение сведений, изменение общественного мнения, военных действий; 8) расчет и прогнозирование демографической ситуации в стране и мире; 9) имитационное моделирование работы различных технических, в частности, электронных устройств; 10) экономические исследования развития предприятия, отрасли, страны.
Булавин Л.А., Выгорницкий Н.В., Лебовка Н.И. Компьютерное моделирование физических систем. –– Долгопрудный: Издательский Дом “Интеллект”, 2011. – 352 c.
Бусленко Н.П. Моделирование сложных систем. –– М.: Наука, 1968. –– 356 с.
Дворецкий С.И., Муромцев Ю.Л., Погонин В.А. Моделирование систем. –– М.: Изд. центр “Академия”, 2009. –– 320 с.
Кунин С. Вычислительная физика. –– М.: Мир, 1992. –– 518 с.
Рубанов В.Г., Филатов А.Г. Моделирование систем учебное пособие. –– Белгород: Изд–во БГТУ, 2006. –– 349 с.
Самарский А.А., Михайлов А.П. Математическое моделирование: Идеи. Методы. Примеры. –– М.: Физматлит, 2001. –– 320 с.
Советов Б.Я., Яковлев С.А. Моделирование систем: Учеб для вузов –– М.: Высш. Шк., 2001. – 343 с.
10. Федоренко Р.П. Введение в вычислительную физику: Учеб. пособие: Для вузов. –– М.: Изд–во Моск. физ.–техн. ин–та, 1994. –– 528 с.
11. Шеннон Р. Имитационное моделирование систем: искусство и наука. –– М.: Мир, 1978. –– 302 с.
22
Библиографическая ссылка
Майер Р.В. КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ: МОДЕЛИРОВАНИЕ КАК МЕТОД НАУЧНОГО ПОЗНАНИЯ.КОМПЬЮТЕРНЫЕ МОДЕЛИ И ИХ ВИДЫ
// Научный электронный архив.
URL: http://econf.rae.ru/article/6722 (дата обращения: 23.11.2024).