Компьютерное моделирование

Заказать работу

Издавна человек применяет модели. Это полезно при изучении сложных процессов или систем, конструировании новых устройств или сооружений. Обычно модель более доступна для исследования, чем реальный объект (а есть такие объекты, экспериментировать с которыми невозможно или недопустимо). Как вы уже знаете, модель -- это некоторый материальный или идеальный (мысленно представляемый) объект, замещающий объект-оригинал, сохраняя его характеристики, важные для данной задачи.

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

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

Математические модели, используемые при решении современных практических задач, настолько сложны, что исследовать их вручную практически невозможно. Приходится прибегать к помощи компьютера. Как же происходит процесс компьютерного моделирования?

Всякая модель создается для вполне определенной цели, и это в значительной степени определяет ее выбор. Поэтому первое, что необходимо сделать, -- поставить задачу, т.е. определить вопросы, ответы на которые мы хотим получить, и необходимые для этого исходные данные.

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

Рассмотрим простой пример22.

Для производства вакцины на заводе выращивают культуру бактерий. Экспериментально установлена скорость размножения бактерий. Известно также, что при увеличении числа бактерий начинается самоотравление, причем количество погибающих бактерий пропорционально квадрату биомассы. Определенную массу забирают ежедневно на нужды производства. Требуется установить, как будет меняться масса бактерий с течением времени.

Начнем с того, что сформулируем задачу математическим языком. Итак, из эксперимента известно, что, если масса бактерий - X грамм, то за сутки появится AX и погибнет BX2 грамм бактерий. Коэффициенты A и B определяются опытным путем для каждого вида бактерий. Ежедневно забирается M грамм. Таким образом, к началу следующего дня масса будет равна

X+(AX-BX2)-M = X (A+1-BX)-M.

Этой формулы нам достаточно, чтобы рассчитать массу бактерий через день, если мы знаем начальную; затем -- пользуясь этой же формулой -- найдем массу через 2 дня; используя уже это значение как исходное -- то, что будет через 3 дня и так далее. Такой способ вычисления последовательности называется рекуррентным23.

Исходными данными будут:

X0 -- начальная масса бактерий;

A, B -- экспериментально определенные коэффициенты;

M -- масса бактерий, забираемая ежедневно на нужды производства.

Результат -- масса бактерий через 1, 2, 3... дня. Обозначим ее "X". Для определенности будем вести расчет для 100 дней.

Итак, модель построена. Что дальше?

На следующем этапе нужно разработать алгоритм ее исследования (либо подобрать готовый). Потом -- составить программу, реализующую этот алгоритм.

Напишем программу для нашего примера. Как обычно, все начнется со ввода исходных данных, после чего нужно будет выполнить вычисления и вывести результаты. Поскольку нам нужно знать биомассу для каждого из ста дней, очевидно, что вычисления ее и вывод результатов нужно будет выполнять циклически. Представим все сказанное на языке Лого:

это биомасса

спроси [Коэффициент А]

пусть “A ответ

спроси [Коэффициент B]

пусть “B ответ

спроси [Ежедневный расход M]

пусть “M ответ

спроси [Начальная масса X0]

пусть “X0 ответ

пусть “X :X0

повтори 100

[

пусть “X следующее_значение :A :B :M :X

пиши :X

]

конец

Для вычисления следующего значения воспользуемся выведенной нами формулой:

это следующее_значение :A :B :M :X

пусть “Y :X * (:A + 1 - :B * :X) - :M

выход :Y

конец

Обратите внимание: здесь мы используем так называемую "процедуру-функцию" (или просто функцию). Последняя команда в ней -- "выход" (вых, output, op) -- указывает компьютеру, что нужно передать (или, как говорят программисты, "вернуть") основной программе.

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

Вполне вероятно, что придется проверять -- и корректировать -- программу, алгоритм, а может быть и модель.

В нашем примере весьма вероятно, что при запуске, мы увидим... отрицательную массу бактерий. Естественно, такого реально быть не может. Просто при заданных нами исходных данных все бактерии либо погибли, либо были израсходованы на производство вакцины. Очевидно, что продолжение расчета в такой ситуации -- бессмысленно. Значит, надо скорректировать нашу программу. Если при вычислении по формуле будет получено отрицательное число, нужно будет выводить соответствующее сообщение и останавливать программу.

Для полной остановки программы в Лого служит команда "останов" (stopall).

Внесем соответствующие изменения в функцию "следующее_значение".

это следующее_значение :A :B :M :X

пусть “Y :X * (:A + 1 - :B * :X) - :M

если_иначе :Y > 0

[

выход :Y

]

[

сообщи [Все бактерии погибли!]

останов

]

конец

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

Модель которую мы только что рассмотрели относится к описательным24. Такие модели описывают -- воспроизводят в соответствии с известными математическими зависимостями -- действие реальных систем. Но не менее широко используются математические модели и других классов. В этом пособии мы их просто коротко перечислим.

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

Первые два класса моделей применимы в случаях, когда нет сил, противодействующих выбранной цели. Реально же нередки ситуации, в которых различные участники имеют несовпадающие интересы. Яркими примерами являются игры "верю-не верю" или "камень-ножницы-бумага". Раздел математики, занимающийся моделированием таких ситуаций называется теорией игр, а соответствующие модели -- игровыми. Однако, это не значит, что это нечто несерьезное. Использовать такие модели приходится и в весьма серьезных обстоятельствах.

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

Примечания

Задача заимствована из учебника "Основы информатики и вычислительной техники" А. Г. Гейна, В. Г. Житомирского и др.

Recurrent (англ. от лат.) -- возвращающийся, повторяющийся вновь

Другое название -- дескриптивные модели (от англ. Description -- описание)

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://macedu.narod.ru

Другие материалы

  • О компьютерном моделировании случайных величин
  • ...  имеет нормальный закон распределения, если ее функция распределения имеет вид: , где  и  — параметры. Для компьютерного моделирования случайной величины с нормальным законом распределения можно использовать как метод обратных функций, так и метод, специально разработанный для нормального закона. ...

  • Использование компьютерных слайд-фильмов на уроках технологии при изучении темы "Конструирование и моделирование швейных изделий"
  • ... отвлекающий от содержания и навевающий скуку от многократно видимого образа [8]. 1.2 Возможности использования компьютерных слайд – фильмов при изучении темы «Конструирование и моделирование швейных изделий» Компьютерные технологии открыли новые возможности для создания самими преподавателями ...

  • Компьютерное моделирование сенситометрических характеристик формирователей сигналов изображения
  • ... формирователь сигналов изображения на основе гетероперехода CdS-Cu2S как зеленочувствительный по общепринятой классификации для фотографических слоев. Следовательно, запись оптической информации наиболее эффективна при длинах волн около 520 нм. Для исследования сенситометрических характеристик ФСИ ...

  • Матемитические основы моделирование 3d объектов
  • ... упростить материал вряд ли целесообразно. Глава 3. Методические рекомендации курса «Математические основы моделирования 3D объектов» базового курса «компьютерное моделирование» для студентов педагогических ВУЗов специальности преподаватель информатики §1. Принципы построения ...

  • Линия "Формализация и моделирование" учебного курса "Информатика"
  • ... таблиц, подбирать наиболее подходящий тип таблицы для организации данных, грамотно оформлять таблицы. Содержательная линия формализации и моделирования выпол­няет в базовом курсе информатики важную педагогическую зада­чу: развитие системного мышления учащихся. Эффективная работа с большими объемами ...

  • Применение моделирования для обучения в области компьютерных наук
  • ... 2002]. Рис. 3. Классификация методов исследвания КС и процессов. Традиционный процесс обучения предполагает проведение основного курса лекций совместно с набором аудиторных упражнений и/или лабораторным практикумом. В области компьютерных наук при изучении организации КС и принципов управления ...

  • Особенности моделирования социальных процессов
  • ... задачи; анализ полученных моделей на адекватность рассматриваемому явлению 2.3 Особенности моделирования социальных процессов Моделирование социальных процессов преследует множество различных целей и задач. Моделирование позволяет определить оптимальные размеры, а также предсказать поведение ...

  • Моделирование политических и социально-экономических процессов
  • ... ситуацию и прогнозировать ее последствия, иными словами – ставить эксперимент. 2. Алгоритмы моделирования политических и социально-экономических процессов Моделирование политических и социально-экономических процессов предполагает определенный алгоритм, или последовательность действий. Один ...

  • Компьютерное моделирование технологических процессов
  • ... развитием всех трех систем наблюдается устойчивый рост количества пользователей Linux. Компьютерное моделирование Прежде чем приступить к компьютерному моделированию технологического процесса, необходимо знать простейшие математические уравнения для его проведения начнем с проверки ...

  • Кружок по 3D моделированию как способ развития воображения старшеклассников (9 класс)
  • ... Max 2008 как способ развития воображения старшеклассников Как следует из вышесказанного, воображение играет большую роль в становлении личности, а умение создать правильную мысленную модель напрямую связано с воображением учащихся и развивает его. Компьютерное трёхмерное моделирование, анимация ...

  • Математическое и компьютерное моделирование продуктивности растений в зависимости от динамики влажности почвы
  • ... достижение такого уровня фактора роста, как влажность почвы, который позволит получить оптимальный режим орошения и, как следствие, высокий урожай. Эта задача не может быть решена без математического, в частности, имитационного моделирования отклика системы “растение” на управляющее воздействие “ ...

  • Компьютерное моделирование движения тел
  • ... и т.д. Из всех случайных величин рассмотрим только сопротивление воздуха. Учитывая то, что сопротивление воздуха направленно в противоположную сторону движения тела [4], то силу сопротивления можно представить в виде двух составляющих: вертикальной и горизонтальной, при этом, чем выше скорость, ...

Каталог учебных материалов

Свежие работы в разделе

Наша кнопка

Разместить ссылку на наш сайт можно воспользовавшись следующим кодом:

Контакты

Если у вас возникли какие либо вопросы, обращайтесь на email администратора: admin@kazreferat.info