сбор эмпирических данных для конкретных значений базовых системных параметров;
структурирование и обработка эмпирической информации и разработка функциональной схемы модели;
определение априорной информации и дефиниционные области рабочих параметров для разработки подходящей математической модели объекта-оригинала;
реализация модельных экспериментов, накапливание модельной информации и ее последующий анализ.
Обобщенная формализованная процедура модельного исследования для организации модельного эксперимента показана на рис. 4.
Рис. 4. Процедура модельного исследования.
Первоначальная цель определяется необходимостью исследования реального объекта (система или процесс). Основные этапы процедуры следующие:
Определение базовой концепции построения модели декомпозированием объекта на подсистемы и введение допустимой степени идеализации для некоторых аспектов поведения системных процессов.
Математическая формализация структуры и взаимосвязи в исследованном объекте на базе подходящей формальной системой.
Математическое описание функционирования реальной системы и разработка подходящей функциональной модели в зависимости от цели моделирования.
Реализация математической модели с использованием самого подходящего метода моделирования.
Описание созданной математической модели средствами подходящей программной среды (специлизированной или универсальной).
Выполнение экспериментов на базе созданной модели и последующая обработка и интерпретация модельной информации для оценки параметров объекта исследования.
Основные методы компьютерного моделирования следующие:
Аналитические методы - используют математические средства для описания компонентов реальной системы и протекающих процессов. На базе выбранного математического подхода математическая модель обычно строится как система уравнений, позволяющая легко программировать, но для реализации необходимы высокая точность формулировок и принятых рабочих гипотез, а также значительная верификация.
Симуляционные (имитационные) методы - поведение реального объекта подражается программному имитатору, который при своей работе использует реальную рабочую нагрузку (эмуляция), либо программную модель рабочей нагрузки (симуляция). Такие модели позволяют исследование сложных систем и получение достоверных результатов, но выполняются во времени и это определяет основной надостаток метода - значительное потребление машинного времени.
Эмпирические методы - это количественные приемы для регистрации, накопления и анализа информации функционирования реального объекта, на базе которых можно построить статистическую модель для его исследования. Обычно применаются линейные или нелинейные уравнения для представления взаимосвязи выбранных параметров (например, из множества первычных факторов) и для вычисления статистических храктеристик.
Основной задачей компьютерного моделирования является создание адекватной модели, при помощи которой достаточно точно можно представить структуру исследуемой системы и протекающих процессов [Sargent, 2003]. Разработка компьютерной модели включает три последовательных уровня - концептуальная модель (идейная концепция структурирования модели), математическая модель (изображение концептуальной модели средством математической формальной системы) и программная модель (программная реализация математической модели с подходящей языковой средой). На каждом уровне компьютерного моделирования необходимо проверять адекватность модели, чтобы обеспечить достоверность конечной модели и точность результатов модельных экспериментов. Специфика отдельных этапов процедуры моделирования определяет применяемые подходы и средства оценки адекватности. Эти особенности нашли место в разработанной методологии компьютерного моделирования, которая представлена ниже.
Методология модельного исследования
В процессе компьютерного моделирования, независимо от применяемого метода, можно определить обобщенную матодологическую схему модельного исследования (рис. 5). Предложенная формализованная методологическая последовательность предусматривает несколько основных фаз, представленных ниже. В основном, она представляет итерационную процедуру для получения необходимой достоверности разрабатываемой компьютерной модели на базе формулировки начальной модельной гипотезы и ее последовательной модификации. Такой подход является удачным при исследовании сложных систем, а также и при отсуствии достаточной априорной информации для исследуемого обьекта.
Стадия "Формулирование"
На первом этапе разработки модели необходимо точно и ясно определить объект моделирования, условия и гипотезы исследования, а также критерии оценки модельной эффективности. Это позволит разработать концептуальную модель и дефинировать ее абстрактными терминами и понятиями. Обычно абстрактное описание определяет начальные принципы модельного построения (основные апроксимации, дефиниционные области переменных, критерии эффективности и типы ожидаемых результатов). На этой стадии можно определить следующие подэтапы:
Дефинирование и анализ поставленной задачи. Включает ясно определенную сущность задачи исследования и планирование необходимых мероприятий. На базе анализа проблемы определяется объем предпологаемых действий и необходимость декомпозиции задачи.
Уточнение типа начальной информации. Эта информация позволяет получить корректные выходные результаты моделирования и поэтому надо обеспечить необходимый уровень достоверности оценок.
Введение допусщенйх и гипотез. Это необходимо при отсуствии достаточной информации для реализации модели. Допусщения заменяют отсуствующие данные, либо отсуствие их полности. Гипотезы относятся к типу возможных результатов или к среде реализации исследуемых процессов. В процессе моделирования эти гипотезы и допусщения могут быть приняты, отброшены, либо модифицированы.
Определение основного содержания модели. На базе применяемого метода моделирования отчитывается особеность реального объекта, поставленая задача и средства ее решения. Результаты этого подэтапа включают формулировку базовой концепции модели, формализованное описание реальных процессов и выбор подходящей апроксимацией.
Определение модельных параметров и выбор критериев эффективности. На этом подэтапе определяются первычные и вторычные факторы, входные воздействия и ожидаемые на выходе реакции модели, что является особенно важным для достижения необходимой точности математического описания. Уточнение критериев эффективности связано с дефинированием функциональных зависимостей оценки реакции системы при изменении модельных параметров.
Абстрактное описание модели. Фаза общего формулирования концептуальной модели заканчивает построение абстрактой модели в подходящей среде абстрактных терминов - например, в виде структурной схемы, как потоковой диаграмы (Data Flow Diagram), в виде графической схемы (State Transition Network) и т.д. Это абстрактное представление позволить легко построить математическую модель.
Рис. 5. Методологическая схема модельного исследования.
Стадия "Проектирование"
Проектирование компьютерной модели связано с разработкой математической модели и ее программным описанием.
Математическая модель является представлением структуры исследуемого объекта и протекающих процессов в подходящем математическом виде Y=Ф(X, S, A, T), где: X - множество внешних воздействий; S - множество системных параметров; A - отражает функциональное поведение (алгоритмы функционирования); T - время работы. Таким образом поведение (реакция) объекта Y моделирует набор функциональных воздействий Ф, представляющих аналитические зависимости (детерминированные или вероятностные). В этом смысле, математическая модель является описанием абстрактной модели средствами выбранной математической системы, оценивая принятые гипотезы и апроксимации, начальные условия и дефинированные параметры исследования. При разработке математической модели возможно применить известные математические формулы, зависимости или математические законы (например, вероятностные распределения), а также комбинировать и дополнить их. Самые распространенные для цели моделирования теоретические математические системы предоставляют возможность представить математическую модель и в графическом виде - сети Петри [Music, 2003], цепи Маркова [Benveniste, 2003], системы массового обслуживания [Pockec, 2001] и др. На базе определенных на предыдущей стадии критериев, созданную математическую модель необходимо оценить с целью достижения необходимой степени достоверности и адекватности, и после этого можно утвердить или отбросить ее.
Программная модель представляет собой реализацию математического описания программным языком - для этого выбираются подходящие технические и технологические средства. В процессе программной реализации на базе математической модели разработывается логическая структурно-функциональная схема модели. Для построения этой схемы можно использовать традиционные блок-схемы, либо графические средства, которые представляются специализированной средой моделирования - как например в GPSS (General Purpose Simulation System) [Stahl, 2001]. Программная реализация модели является задачей разработки программного обеспечения и в этом смысле подчиняется принципам технологии программирования.
Стадия "Уточнение"
Действия этой стадии предназначенны для полной валидизации проектированной модели и утверждения ее адекватности. Существенное значение для их эффективности имеет оценка текущей адекватности на предыдущих стадиях. В этом смысле процесс уточнения модели надо рассмотривать как совокупность распределенных действий на всех предыдущих стадиях компьютерного моделирования. В общем плане, стадию уточнения можно представить как итеративную процедуру (рис. 6), позволяющую последовательную модификацию начальной версии разрабатываемой модели.