Классификация моделей
Для моделей можно составить различные виды классификаций в зависимости от одного или нескольких признаков, общих для той или иной группы моделей.
Наиболее распространенные виды классификации моделей определяются следующими признаками:
Область использования.
Учет в модели временного фактора (динамики).
Отрасль знаний.
Способ представления моделей.
Классификация по области использования
Если рассматривать модели с позиции для чего, с какой целью они используются, то можно применять классификацию, изображенную на рис. 1.
Рис. 1. Классификация моделей по области использования
Учебные моделииспользуются при обучении. Это могут быть наглядные пособия, различные тренажеры, обучающие программы.
Опытные модели- это уменьшенные или увеличенные копии проектируемого объекта. Их называют такженатурнымии используют для исследования объекта и прогнозирования его будущих характеристик. Например, модель крыла самолета «продувается» в аэродинамической трубе с целью исследования его обтекаемости; модель гидростанции еще при разработке проекта помогает решить гидротехнические, экологические и многие другие проблемы.
Научно-технические моделисоздаются для исследования процессов и явлений. К таким моделям можно отнести прибор для получения грозового электрического разряда, модель движения планет Солнечной системы, модель работы двигателя внутреннего сгорания.
Игровые модели — это различного рода игры: деловые, экономические, военные. С помощью таких моделей можно разрешать конфликтные ситуации, оказывать психологическую помощь, проигрывать поведение объекта в различных ситуациях.
Имитационные моделине просто отражают реальность с той или иной степенью точности, а имитируют ее. Эксперимент с моделью либо многократно повторяется при разных исходных данных, чтобы изучить и оценить последствия каких-либо действий на реальную обстановку, либо проводится одновременно со многими другими похожими объектами, но поставленными в разные условия. По результатам исследования делаются выводы. Подобный метод выбора правильного решения называетсяметодом проб и ошибок. К примеру, в ряде опытов на мышах испытывается новое лекарственное средство, чтобы выявить побочные действия и уточнить дозировки.
Любая экономическая реформа, проводимая в стране, затрагивает интересы всех слоев общества. Поэтому она должна быть тщательно продумана, а ее результаты предсказуемы. Но проводить реальныеэксперименты в этой области практически невозможно, поэтому прибегают к имитационному моделированию.
Классификация с учетом временного фактора (динамики)
Рис. 2. Классификация моделей по временному фактору
Статические модели отражают объект в определенный момент времени, без учета происходящих с ним изменений. В этих моделях отсутствует временной фактор.
Примером статической модели может служить макет или рисунок молекулы воды, состоящей из атомов водорода и кислорода (слайд).
Динамические модели отражают процесс изменения объекта во времени.
Химический опыт, проводимый в лаборатории, является примером динамической модели (слайд). Известно, что кислород реагирует с водородом с выделением энергии. Поэтому даже при малых количествах исходных веществ реакция сопровождается громким хлопком. Таким образом, модель, позволяет предсказать возможные последствия соединения этих распространенных в природе и жизненно необходимых человеку веществ.
Один и тот же объект возможно изучать, применяя и статическую и динамическую модели.Например, при строительстве дома рассчитывают прочность и устойчивость к постоянной нагрузке его фундамента, стен, балок — это статическая модель здания. Но еще надо обеспечить противодействие ветрам, движению грунтовых вод, сейсмическим колебаниям и другим изменяющимся во времени факторам. Это можно решить с помощью динамических моделей.
Классификация по отрасли знаний
Здесь можно выделить следующие виды моделей: физические (например, законы Ньютона); химические (например, перегонка нефти); географические (интерактивные географические карты); исторические (генеалогическое дерево);социологические; экономические (см. рис. 3), математические (например, математическая модель полета снаряда) и т.п. (слайд)
|
| |
Рис. .3. Экономическая модель (слайд) |
Классификация по способу представления
Рис. 4. Классификация моделей по способу представления
В соответствии с этой классификацией модели делятся на две большие группы: материальные(иначе их называют предметные) иинформационные(абстрактные).
Материальные модели иначе можно назватьпредметными,физическими. Они воспроизводят геометрические и физические свойства оригинала и всегда имеют реальное воплощение.
Материальные модели - это, к примеру, карты при изучении истории и географии, схемы солнечной системы и звездного неба, макет многоступенчатой ракеты и др.
Материальные модели - это и различные физические и химические опыты. В них моделируются процессы, например реакция между водородом и кислородом.
Информационная модель- совокупность информации, характеризующая свойства и состояния объекта, процесса, явления, а также взаимосвязь с внешним миром.Информационная модель - это описание объекта.
Информация, характеризующая объект или процесс, может иметь разный объем и форму представления, выражаться различными средствами.
Знаковые и вербальные информационные модели
К информационным моделям можно отнести вербальные(от лат. «verbalis» — устный) модели, полученные в результате раздумий, умозаключений. Они могут остаться мысленными или быть выражены словесно. К таким моделям можно отнести идею, возникшую у изобретателя, и музыкальную тему, промелькнувшую в голове композитора, и рифму, прозвучавшую пока еще в сознании поэта.
Вербальная модель- информационная модель в мысленной или разговорной форме.
Знаковая модель- информационная модель, выраженная специальными знаками, т. е. средствами любого формального языка.
Знаковые модели окружают нас повсюду. Это рисунки, тексты, графики и схемы. Вербальные и знаковые модели, как правило, взаимосвязаны. Мысленный образ, родившийся в мозгу человека, может быть облечен в знаковую форму. И наоборот, знаковая модель помогает сформировать в сознании верный мысленный образ.
К знаковым моделям относятся:
математические модели- это модели, построенные с использованием математических понятий и формул. Например, модель равноускоренного прямолинейного движения:
специальные– представлены на специальных языках (ноты, химические формулы);
алгоритмические– программы.
Существуют и другие подходы к классификации информационных моделей.
В зависимости от структурыинформационные модели делятся на:
табличные;
иерархические;
сетевые.
В табличнойинформационной модели объекты или их свойства представлены в виде списка, а их значения размещаются в ячейках таблицы. Примером химической табличной модели служит Периодическая система элементов Менделеева.
В иерархическойинформационной модели объекты распределены по уровням, причем элементы нижнего уровня входят в состав одного из элементов более высокого уровня. Такие модели строятся в процессе классификации объектов. Примером может служить модель классификации современных компьютеров.
Сетевыеинформационные модели применяются для описания таких систем, в которых связь между элементами имеет сложную структуру (например, структура сети Интернет).
Компьютерные и некомпьютерные модели
В информатике рассматриваются модели, которые можно создавать и исследовать с помощью компьютера. В этом случае модели делят на компьютерныеинекомпьютерные.
Компьютерная модель- это модель, реализованная средствами программной среды.
В настоящее время выделяют два вида компьютерныхмоделей:
структурно-функциональные, которые представляют собой условный образ объекта, описанный с помощью компьютерных технологий;
имитационные, представляющие собой программу или комплекс программ, позволяющий воспроизводить процессы функционирования объекта в разных условиях.
Значение компьютерного моделирования сложно переоценить. К нему прибегают при исследовании сложных систем в различных областях науки, при создании образов исчезнувших животных, растений, зданий и т. п. Редкий кинорежиссер сегодня обходится без компьютерных эффектов. Кроме того, современное компьютерное моделирование является мощным инструментом развития науки.
Основные этапы компьютерного моделирования
Все этапы определяются поставленной задачей и целями моделирования. В общем случае процесс построения и исследования модели можно представить следующей схемой: (слайд)
Рис. 5. Этапы компьютерного моделирования
Первый этап-постановка задачивключает в себя стадии:описание задачи, определение цели моделирования, анализ объекта. Ошибки при постановке задачи приводят к наиболее тяжелым последствиям!
Описание задачи
Задача формулируется на обычном языке. По характеру постановки все задачи можно разделить на две основные группы. К первой группе можно отнести задачи, в которых требуется исследовать, как изменятся характеристики объекта при некотором воздействии на него, «что будет, если?...».
Например, что будет, если магнитный диск положить рядом с магнитом?
В задачах, относящихся ко второй группе, требуется определить, какое надо произвести воздействие на объект, чтобы его параметры удовлетворяли некоторому заданному условию, «как сделать, чтобы?..».
Определение цели моделирования
На этой стадии необходимо среди многих характеристик (параметров) объекта выделить существенные. Мы уже говорили о том, что для одного и того же объекта при разных целях моделирования существенными будут считаться разные свойства.
Например, если вы строите модель яхты для участия в соревнованиях моделей судов, то в первую очередь вас будут интересовать ее судоходные характеристики. Вы будете решать задачу «как сделать, чтобы…?»
А того, кто собирается на яхте в круиз, помимо тех же самых параметров, будет интересовать, внутреннее устройство: количество палуб, комфортабельность и т. п.
Для конструктора яхты, строящего компьютерную имитационную модель для проверки надежности конструкции в штормовых условиях, моделью яхты будет изменение изображения и расчетных параметров на экране монитора при изменении значений входных параметров. Он будет решать задачу «что будет, если…?»
Определение цели моделирования позволяет четко установить, какие данные являются исходными, что требуется получить на выходе и какими свойствами объекта можно пренебречь. Таким образом, строится словесная модельзадачи.
Анализ объектаподразумевает четкое выделение моделируемого объекта и его основных свойств.
Второй этап-формализация задачи связан с созданиемформализованной модели, то есть модели, записанной на каком-либо формальном языке. Например, данные переписи населения, представленные в виде таблицы или диаграммы — это формализованная модель.
В общем смысле формализация - это приведение существенных свойств и признаков объекта моделирования к выбранной форме.
Формальная модель - это модель, полученная в результате формализации.
Для решения задачи на компьютере больше всего подходит язык математики. В такой модели связь между исходными данными и конечными результатами фиксируется с помощью различных формул, а также накладываются ограничения на допустимые значения параметров.
Третий этап-разработка компьютерной модели начинается с выбора инструмента моделирования, другими словами, программной среды, в которой будет создаваться, и исследоваться модель.
От этого выбора зависит алгоритмпостроения компьютерной модели, а также форма его представления. В среде программирования - этопрограмма, написанная на соответствующем языке. В прикладных средах (электронные таблицы, СУБД, графических редакторах и т. д.) - этопоследовательность технологических приемов, приводящих к решению задачи.
Следует отметить, что одну и ту же задачу можно решить, используя различные среды. Выбор инструмента моделирования зависит, в первую очередь, от реальных возможностей, как технических, так и материальных.
Четвертый этап—компьютерный эксперимент включает две стадии:тестирование моделиипроведение исследования.
Тестирование модели - процесс проверки правильности построения модели.
На этой стадии проверяется разработанный алгоритм построения модели и адекватность полученной модели объекту и цели моделирования.
Для проверки правильности алгоритма построения модели используется тестовые данные, для которых конечный результат заранее известен(обычно его определяют ручным способом). Если результаты совпадают, то алгоритм разработан верно, если нет — надо искать и устранять причину их несоответствия.
Тестирование должно быть целенаправленным и систематизированным, а усложнение тестовых данных должно происходить постепенно. Чтобы убедиться, что построенная модель правильно отражает существенные для цели моделирования свойства оригинала, то есть является адекватной, необходимо подбирать тестовые данные, которые отражают реальную ситуацию.
Уровни тестирования программного обеспечения (ПО)
Модульное тестирование (юнит-тестирование)- тестируется минимально возможный для тестирования компонент, например, отдельный класс или функция. Часто модульное тестирование осуществляется разработчиками ПО.
Интеграционное тестирование- тестируются интерфейсы между компонентами, подсистемами. При наличии резерва времени на данной стадии тестирование ведётся итерационно, с постепенным подключением последующих подсистем.
Системное тестирование- тестируется интегрированная система на её соответствие требованиям.
Альфа-тестирование- имитация реальной работы с системой штатными разработчиками, либо реальная работа с системой потенциальными пользователями/заказчиком.Чаще всего альфа-тестирование проводится на ранней стадии разработки продукта, но в некоторых случаях может применяться для законченного продукта в качестве внутреннего приёмочного тестирования.
Бета-тестирование- в некоторых случаях выполняется распространение версии с ограничениями (по функциональности или времени работы) для некоторой группы лиц, с тем, чтобы убедиться, что продукт содержит достаточно мало ошибок. Иногда бета-тестирование выполняется для того, чтобы получить обратную связь о продукте от его будущих пользователей.
Часто для свободного/открытого ПО стадия Альфа-тестирования характеризует функциональное наполнение кода, а Бета-тестирования — стадию исправления ошибок. При этом, как правило, на каждом этапе разработки промежуточные результаты работы доступны конечным пользователям.
Тестирование «белого ящика»
В терминологии профессионалов тестирования, фразы «тестирование белого ящика» и «тестирование чёрного ящика» относятся к тому, имеет ли разработчик тестов доступ к исходному коду тестируемого ПО.
Тестирование «белого ящика»– тестирование, при котором тестировщик имеет доступ к коду. Кроме того, что тестировщик может просматривать код, он еще и сам может писать код, который использует библиотеки существующего программного продукта.
Другое название этого метода – структурное тестирование.
Тестирование «чёрного ящика»
Тестирование методом «черного ящика» базируется на том, что поведение системы можно определить только посредством изучения ее входных и соответствующих выходных данных. Другое название этого метода – функциональное тестирование.
Испытатель подставляет в компонент или систему входные данные и исследует соответствующие выходные данные. Метод обработки данных, и каким образом получаются выходные данные – неизвестно, это закрыто «черным ящиком».
Исследование модели
К этой стадии компьютерного эксперимента можно переходить только после того, как тестирование модели прошло успешно, и вы уверены, что создана именно та модель, которую необходимо исследовать.
Пятый этап-анализ результатовявляется ключевым для процесса моделирования. Именно по итогам этого этапа принимается решение: продолжать исследование или закончить.
Если результаты не соответствуют целям поставленной задачи, значит, на предыдущих этапах были допущены ошибки. В этом случае необходимо корректировать модель, то есть возвращаться к одному из предыдущих этапов. Процесс повторяется до тех пор, пока результаты компьютерного эксперимента не будут отвечать целям моделирования.