Оглавление
Л 14   Л 15   Л 16   Л 17   Л 18   Л 19   Л 20

Лекция 17.
Моделирование систем
с распределенными параметрами

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

Пример 1. Рассмотрим процесс сушки материала (см. рис. 17.1). Допустим, что материал представляет собой кучу сырья, над которой установлен нагреватель. В процессе сушки тепло неравномерно проникает в глубь кучи, и в различных слоях материал имеет различную температуру. То есть в данном примере можно сказать, что параметр температуры распределен по объекту «куча». Опишем каждый слой своим уравнением, используя процедуру построения модели для отдельного слоя из лекции 11.

[ Рис. 17.1. Схема технологического процесса сушки материала, разбитого на слои ]
Рис. 17.1. Схема технологического процесса
сушки материала, разбитого на слои

Изменение температуры в первом слое (Tн — температура нагревателя, Tср — температура среды):

[ Формула 01 ]

Изменение температуры в i-ом слое:

[ Формула 02 ]

Изменение температуры в n-ом слое:

[ Формула 03 ]

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

Алгоритм расчета такой системы показан на рис. 17.2. Особенностью алгоритма является то, что он содержит в дополнение к циклу по времени (см. алгоритм на рис. 10.5) вложенный цикл по номеру слоя. Действительно, на каждом такте необходимо отдельно просчитать изменения в каждом из слоев «кучи». Распределенность объекта (введение дополнительной координаты) имитируется дополнительным циклическим блоком.

[ Рис. 17.2. Блок-схема моделирования распределенной системы (на примере процесса сушки) ]
Рис. 17.2. Блок-схема моделирования распределенной
системы (на примере процесса сушки)

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

Итак, инструментом моделирования распределенных систем являются вложенные циклы, по крайней мере, двойные — внутри цикла «по времени» содержится цикл «по пространству».

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

[ Рис. 17.3. Фон неймановская архитектура вычислительной системы (с общей шиной, звезда) ]
Рис. 17.3. Фон неймановская архитектура вычислительной системы (с общей шиной, звезда)

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

[ Рис. 17.4. Не фон неймановская архитектура вычислительной системы (однородная, параллельная сеть вычислительных элементов) ]
Рис. 17.4. Не фон неймановская архитектура
вычислительной системы (однородная,
параллельная сеть вычислительных элементов)

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

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

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

[ Рис. 17.5. Иллюстрация принципа объектного отражения мира в информационных моделях ]
Рис. 17.5. Иллюстрация принципа объектного отражения мира в информационных моделях

Для нашей задачи расчета теплопроводности запись закона изменения температуры для элементарного объема будет иметь следующий вид:

s := s + (al · (sl – s) + ar · (sr – s) + au · (su – s) + ab · (sn – s)) · dt.

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

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

Тогда элемент будет передавать сведения о своей температуре s левому элементу в его переменную sr, правому элементу — в его переменную sl, верхнему элементу — в его переменную sb, нижнему от него элементу — в его переменную st (см. рис. 17.5, б). at, ar, al, ab — коэффициенты теплопроводности в соответствующих направлениях. Переменная s изменяется на величину подходящих с этих направлений тепловых потоков за такт времени dt: s := s + (...) · dt. Установив, таким образом, связи всех элементов, мы получим подобие вычислительной сети реальному распределенному объекту.

Обратите внимание, алгоритм, показанный нами на рис. 17.2, исчезает, уступая место модели. В записи модели ничто не напоминает нам о специфике среды реализации. Здесь нет алгоритмических структур, соответственно и нет необходимости в посторонних по отношению к имитируемому объекту конструкциях (if, while и т.п.). Это происходит за счет того, что мы используем более полное подобие имитируемой системы платформе, на которой производится ее моделирование. При использовании фон неймановской структуры мы вынуждены осуществлять особый дополнительный перевод с языка объекта на язык машины (процедура алгоритмизации), не имеющий отношения к реальному объекту, но имеющий отношение к среде реализации. Поэтому надо стараться уделять внимание АДЕКВАТНОСТИ платформы (архитектуры, языка описания), на которой производится моделирование, реальному устройству окружающего нас мира. Стараться установить наибольшее ПОДОБИЕ между ними еще на стадии разработки.

Итак, есть две принципиально разные вычислительные архитектуры — фон неймановская и не фон неймановская (обе предложены фон Нейманом):

  • фон неймановская — последовательная машина, удобная для описания процессов, последовательностей, развертывающихся во времени, и использующая нотацию алгоритмов, задач. Это централизованная система, реализующаяся по схеме «звезда»;
  • не фон неймановская — параллельная машина, удобная для описания сущностей, использующая нотацию объектов, моделей. Это децентрализованная архитектура, реализующая схему «сеть».

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

Запустите последовательно три проекта: «Дом-1», «Дом-2» и «Дом-3».

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

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

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

[ Рис. 17.6. Результат работы модели распределенной системы при различных условиях и внешних воздействиях ]
Рис. 17.6. Результат работы модели распределенной системы
при различных условиях и внешних воздействиях

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

То есть в проекте 3 мы фактически видим параллельную объектно-ориентированную систему. Структура не фон неймановской машины поддерживает объектно-ориентированный способ моделирования (см. лекцию 32).

[ ] Лекция 16. Методы прогноза и коррекции… Лекция 18. Моделирование систем… [ ]
Л 14   Л 15   Л 16   Л 17   Л 18   Л 19   Л 20