Методы и технологии моделирования.
Классификация задач, решаемых с помощью моделей.
Классификация моделей.
I) По характеру модели – способам (инструментам) моделирования.
1. Физические (материальные) – объекты реального мира.
1.1. Натурные – воспроизведение с другими размерами, из другого материала и т.п. (уменьшенная модель самолета, увеличенная модель сердца, бумажный макет здания).
1.2. Аналоговые – объект другой физической природы, но с аналогичным поведением (электрическая схема, заменяющая измерение распределения температур в физической среде).
2. Абстрактные (идеальные, информационные) – мысленные представления, зафиксированные в обозначениях определенной степени условности.
2.1. Наглядные (зрительные).
2.1.1. Образные – «похожие» на объект при «привычном» восприятии (рисунки, фотографии).
2.1.2. Схематические – использующие условные обозначения (карта, чертеж, блок–схема, схема оргструктуры предприятия, график, круговая или столбиковая диаграмма).
2.2. Знаковые – сформулированные на естественном или искусственном языке.
2.2.1. Описательные (словесные) – текст на естественном языке (милицейский протокол, пересказ сюжета, описание отношений в группе).
2.2.2. Табличные – данные в виде таблицы (хроника событий, бухгалтерская ведомость, справочник по прочности материалов, таблица химических элементов).
2.2.3. Математические – описания в виде определенного математического аппарата, языка (см. далее).
2.2.4. Компьютерные – программы, позволяющие ответить на вопросы об объекте (предсказать будущее поведение, выбрать наилучший вариант действий и т.д.).
Модели могут сочетать в себе черты разных типов. Так, форма глобуса является натурной моделью Земли,а изображение на нем – схематической моделью. Описываемые ниже графы представляют собой математическую модель, в которой используются элементы наглядной схематической модели.
Предмет информатики включает, прежде всего, компьютерные модели. Однако все такие модели строятся на базе определенных математических (иногда схематических или табличных) моделей. А результаты компьютерных расчетов должны быть представлены в наглядной или табличной форме. Поэтому информатика рассматривает компьютерное моделерование в связи с математическим и со способами (моделями) представления результатов в виде схем, графиков, таблиц и формул.
II)По способу представления системы (объекта) в модели.
А)Моделирование системы в виде черного ящика – указания входов, выходов и совокупности связей между входами и выходами (зависимостей характеристик выходов от характеристик входов). При этом не рассматривается, что происходит внутри системы и как она устроена. Так, обработав имеющиеся данные методами математической статистики, можно получить график, показывающий, как зависит производительность работника (выход) от оплаты труда (вход).
Б) Моделирование путем описания состояний (пространства состояний) системы как целого. При этом задаются (а)форма описания состояний (перечень возможных состояний или их характеристики – фазовые переменные); (б)законы перехода из одного состояния в другое (множество правил (операторов) перехода или зависимости между параметрами); (в)при использовании моделирования для управления системой задаются также цели управления (характеристики (свойства) желаемых (целевых) состояний). Например, при моделировании подготовки специалиста можно определить разные уровни подготовки с соответствующими объемами знаний и умений (состояния), рассчитать объемы подготовки для перехода от одного уровня к другому с необходимыми затратами времени и средств (правила перехода) и определиться с желаемым результатом обучения (целевым состоянием).
В) Структурное моделирование функционирования системы – описание взаимодействия элементов системы, например материальных, финансовых, миграционных трудовых и т.п. потоков между регионами страны или передачи знергии и силовых взаимодествий междуконструктивными элементами станка.
III) По свойствам математической и компьютерной моделей, используемых для описания объекта. С этих позиций можно выделить независимые признаки, каждый из которых разделяет модели на два противоположных класса.
1) Статические модели, описывающие состояние системы в определенный момент времени (распределение нагрузки по длине балки; состав населения по возрастным группам), – Динамические модели, отражающие изменение во времени (движение краев колеблющейся балки; изменение рождаемости, смертности, численности населения по годам).
2) Детерминированные модели, позволяющие получить однозначно определенный результат (каким будет ток при заданных напряжении и сопротивлении), – Стохастические (вероятностные) модели, позволяющие предсказать только вероятность каждого возможного результата (пол ребенка; выигрыш в лотерею).
3) Непрерывные модели, в которых для переменных возможны любые значение из определенного интервала (скорость, путь, ток), – Дискретные модели, в которых переменная может принимать только одно из конечного множества значений (номер выбранного проекта или исполнителя работ).
IV) По специализации – универсальности различают:
1) Содержательные, предметные модели, описывающие конкретное явление из определенной области (уравнения физики, описывающие процессы в атмосфере или недрах Земли; модели управления запасами на складе в менеджменте).
2) Формальные модели – «заготовки» математического аппарата, которые могут быть применены к разнообразным задачам и явлениям.
Среди моделей последнего типа можно отметить:
А) Системы алгебраических уравнений, которые можно использовать для описания силовых взаимодействий между стержнями фермы моста, потоков жидкости в трубопроводе, поставок товаров между предприятиями и т.д.
Б) Системы дифференциальных уравнений, связывающих между собой изменения во времени переменных, их скоростей и ускорений, которые можно использовать для описания непрерывных динамических процессов в физике (движение планет), химии (изменение концентрации веществ) и т.д.
В) Модели конечных автоматов, которые представляют собой перечень ограниченного числа состояний объекта и условия перехода из одного состояния в другое (эти условия могут быть однозначно заданы – детерминированный конечный автомат или включать «бросание жребия» – вероятностный автомат). Такие модели хорошо подходят для задач оперативного управления, например, выбора момента переключения светофора в зависимости от ситуации на перекрестке или выбора модели, запускаемой на сборочный конвейер в зависимости от наличия комплектующих.
Г) Модели графов, представляющие из себя множество вершин (узлов) и соединяющих некоторые из вершин линий (ребер, дуг). Эти модели позволяют описывать планирование строительства (сетевые графики) и задачи логистики (маршрутизации потоков), например, классическую «задачу коммивояжера» – выбора наиболее короткого и неповторяющегося маршрута развозки товара.
В прикладных задачах используют частные случаи графов, такие как: (а)дерево – граф, у каждой вершины которого ровно один «предшественник, а у одной «главной» («корня») предшественников нет; (б) гамильтонов граф, в котором есть путь (последовательность дуг), проходящий только один раз через каждую вершину; (в) эйлеров граф, в котором есть путь, проходящий только один раз через каждую дугу.
Д) Модели интеллектуальных систем, основанные на имитации рассуждений экспертов при решении сложных задач – в компьютере формируется набор правил логического вывода, который опирается на знание эксперта в конкретной предметной области и позволяет перейти от описания исходной ситуации к заключению о наилучшем из нескольких возможных вариантов действия. Такой подход оказывается эффективным при решении задач планирования, требующих перебора огромного числа вариантов, очень быстро (по экспоненте) растущего с ростом размерности задачи (такие задачи называют экспоненциальными).
Е) Модели эволюции используют генетические алгоритмы, которые имитируют действующие в живой природе механизмы случайной генерации наследуемых изменений с последующим естественным отбором. Такие модели перспективны для решения широкого класса задач прогнозирования развития и отбора лучших вариантов, что подтверждается впечатляющими результатами эволюции в природе.
Задачи (функции) моделирования:
а) выработка понимания устройства и поведения объекта (инструмент познания);
б) прогнозирование характеристик и состояния объекта (инструмент прогнозирования);
в) выбор воздействий, которые позволят достичь наших целей (инструмент планирования и управления).
В реальности эти задачи могут быть связаны и переплетены. В зависимости от характера решаемой задачи и свойств моделируемого объекта выбираются свойства модели и используемый математический аппарат.
Технология решения задач (анализа, прогнозирования, управления) с использованием компьютерного моделирования включает основные этапы:
1) Постановка задачи – описание исходной задачи и исходных данных («что дано») и определение целей моделирования, требований к результатам («что нужно найти»).
2) Разработка концептуальной модели («расчетной схемы», упрощенного представления) или структуризация или качественный анализ – формулировка предположений и упрощений, выделение существенных элементов и взаимосвязей (результаты этапа желательно представить максимально наглядно – в виде схем, диаграмм или, по крайней мере, сжатого лаконичного описания).
3) Разработка математической модели, формализация задачи – описание объекта (точнее, разработанной ранее его упрощенной концептуальной модели) на искусственном математическом («формальном») языке с использованием наиболее адекватного математического аппарата.
4) Алгоритмизация задачи – разработка алгоритма расчета, представляющего математическую модель в виде четкой и однозначной последовательности операций, которые могут быть выполнены на компьютере.
5) Кодирование алгоритма с помощью выбранных средств программирования (языка и системы программирования, электронных таблиц, набора запросов, форм и отчетов базы данных и т.п.).
6)Тестирование (отладка) компьютерной системы (программы, расчетной таблицы, базы данных) для выявления и устранения ошибок. Этот этап является обязательным и, зачастую, наиболее длительным, потому что, в силу причин, объясняемых в соответствующем разделе курса, создать сразу программу без ошибок невозможно.
7)Использование компьютерной системы для решения поставленных задач объяснения функционирования моделируемой системы, прогнозирования ее поведения, принятия управленческих решений и т.п.
8)Интерпретация результатов компьютерного моделирования – формулировка выводов из анализа явления и следствий полученных прогнозов, выработка мер по реализации выбранного решения.
Процесс решения задачи с использованием компьютерного моделирования является итеративным (циклическим): на любом из этапов может потребоваться возврат на любой из предыдущих и внесение изменений. Так, даже на этапе интерпретации результатов может оказаться, что полученные выводы неприменимы практически и нужно вернуться к постановке задачи, пересмотрев состав исходных данных и цели моделирования (требования к результатам).