Непрерывное моделирование относится к подходам к моделированию, при которых система моделируется с помощью переменных, которые непрерывно изменяются в соответствии с набором дифференциальных уравнений . [1] [2]
Это примечательно тем, что это одно из первых применений компьютеров, начиная с Eniac в 1946 году. Непрерывное моделирование позволяет предсказывать
Основанное в 1952 году, Общество моделирования и симуляции International (SCS) является некоммерческой, движимой добровольцами корпорацией, которая стремится продвигать использование моделирования и симуляции для решения реальных проблем. Их первая публикация настоятельно предполагала, что ВМС тратят много денег на безрезультатные летные испытания ракет, но что аналоговый компьютер Совета по симуляции может предоставить более качественную информацию посредством симуляции полетов. С тех пор непрерывное моделирование доказало свою бесценность в военных и частных начинаниях со сложными системами. Ни один запуск Apollo на Луну не был бы возможен без него.
Различие между непрерывным и дискретным применимо как к реальным динамическим системам, так и к их моделированию.
(Реальная) динамическая система может быть непрерывной или дискретной. Непрерывные динамические системы (например, физические системы с материальными объектами, движущимися в пространстве) характеризуются переменными состояния, значения которых изменяются непрерывно, в то время как значения переменных состояния дискретных динамических систем (например, экосистем хищник-жертва) «скачут», то есть они изменяются только на дискретных временных шагах.
В непрерывном моделировании непрерывно изменяющиеся переменные состояния системы моделируются дифференциальными уравнениями. Однако в цифровых вычислениях действительные числа не могут быть точно представлены, а дифференциальные уравнения могут быть решены только численно с помощью приближенных алгоритмов (например, метода Эйлера или Рунге-Кутты ) с использованием некоторой формы дискретизации. Следовательно, цифровые компьютеры не могут выполнять действительно непрерывные моделирования. Только аналоговые компьютеры могут выполнять действительно непрерывные моделирования. Однако во многих случаях подходы цифровых вычислений, основанные на инкрементной временной прогрессии (с фиксированными или динамически регулируемыми приращениями) для дискретизации времени на малые временные шаги, обеспечивают удовлетворительные приближения.
С другой стороны, дискретное событийное моделирование изменяет переменные состояния только в ответ на события, обычно используя последовательность времени следующего события .
Непрерывные динамические системы могут быть охвачены только непрерывной имитационной моделью, в то время как дискретные динамические системы могут быть охвачены либо более абстрактным образом непрерывной имитационной моделью (например, уравнениями Лотки-Вольтерры для моделирования экосистемы хищник-жертва), либо более реалистичным образом дискретно-событийной имитационной моделью (в экосистеме хищник-жертва рождение, смерть и встречи хищника и жертвы являются дискретными событиями). При использовании непрерывной имитационной модели дискретной динамической системы популяции животных можно получить результаты вроде 23,7 животных, которые сначала нужно округлить для придания смысла.
В примере справа показаны продажи определенного продукта с течением времени. Использование дискретно-событийной симуляции делает необходимым наличие происходящего события для изменения количества продаж. В отличие от этого, непрерывная симуляция имеет плавное и устойчивое развитие количества продаж. [5] Стоит отметить, что продажи являются дискретными событиями, которые сопровождаются дискретными изменениями состояния. Непрерывная симуляция продаж подразумевает возможность дробных продаж, например, 1/3 от продажи. По этой причине непрерывная симуляция продаж не является точной моделью реальности, но тем не менее может приблизительно отражать динамику системы.
Непрерывные симуляции основаны на наборе дифференциальных уравнений. Эти уравнения определяют особенность переменных состояния, так сказать, факторов окружающей среды, системы. Эти параметры системы изменяются непрерывно и, таким образом, изменяют состояние всей системы. [6]
Набор дифференциальных уравнений может быть сформулирован в концептуальной модели, представляющей систему на абстрактном уровне. Для разработки концептуальной модели возможны 2 подхода:
Широко известным примером непрерывной концептуальной имитационной модели является модель «хищник-жертва».
Эта модель типична для выявления динамики популяций. Пока популяция жертв растет, популяция хищников также растет, так как у них достаточно еды. Но очень скоро популяция хищников становится слишком большой, так что охота превышает размножение жертвы. Это приводит к уменьшению популяции жертвы и, как следствие этого, к уменьшению популяции хищников, так как у них не хватает пищи, чтобы прокормить всю популяцию. [8]
Любая динамика популяции включает в себя события рождений и смертей и, следовательно, по сути является дискретной динамической системой. Однако моделирование дискретных изменений состояния с помощью дифференциальных уравнений часто дает полезные идеи. Непрерывное моделирование динамики популяции представляет собой аппроксимацию, эффективно подгоняющую кривую к конечному набору измерений/точек.
В непрерывном моделировании непрерывный временной отклик физической системы моделируется с помощью ОДУ , встроенных в концептуальную модель. Временной отклик физической системы зависит от ее начального состояния. Задача решения ОДУ для заданного начального состояния называется задачей начального значения.
В очень немногих случаях эти ОДУ можно решить простым аналитическим способом. Более распространенными являются ОДУ, которые не имеют аналитического решения. В этих случаях приходится использовать численные процедуры аппроксимации.
Два хорошо известных семейства методов решения задач с начальными значениями:
При использовании численных решателей необходимо учитывать следующие свойства решателя:
Эти моменты имеют решающее значение для успеха использования одного метода. [10]
Второй закон Ньютона , F = m a , является хорошим примером одной непрерывной системы ОДУ. Для решения этой конкретной системы ОДУ можно использовать методы численного интегрирования, такие как Рунге-Кутта или Булирша-Штера .
Объединив решатель ОДУ с другими числовыми операторами и методами, можно использовать непрерывный симулятор для моделирования множества различных физических явлений, таких как
Фактически нет ограничений на виды физических явлений, которые могут быть смоделированы системой ОДУ. Однако некоторые системы не могут иметь все производные члены, заданные явно из известных входов и других выходов ОДУ. Эти производные члены определяются неявно другими системными ограничениями, такими как закон Кирхгофа, согласно которому поток заряда в соединение должен быть равен потоку из него. Для решения этих неявных систем ОДУ должна использоваться сходящаяся итерационная схема, такая как Ньютон-Рафсон .
Для ускорения создания непрерывных симуляций можно использовать графические программные пакеты программирования, такие как VisSim или Simcad Pro . Пакеты предоставляют опции для метода интеграции, размера шага, метода оптимизации, неизвестных и функции стоимости, а также позволяют условное выполнение подсистем для ускорения выполнения и предотвращения числовых ошибок для определенных доменов. Такое графическое программное обеспечение для моделирования может работать в режиме реального времени и использоваться в качестве учебного пособия для менеджеров и операторов. [11]
Обнаружено непрерывное моделирование
Действительно, значительная часть современных технологий, которыми мы пользуемся сегодня, была бы невозможна без непрерывного моделирования.