М. Скворцова,
Москва
Математическое моделирование
1. Что такое математическое моделирование?
С середины XX в. в самых различных областях человеческой деятельности стали широко применять математические методы и ЭВМ. Возникли такие новые дисциплины, как «математическая экономика», «математическая химия», «математическая лингвистика» и т. д., изучающие математические модели соответствующих объектов и явлений, а также методы исследования этих моделей.
Математическая модель — это приближенное описание какого-либо класса явлений или объектов реального мира на языке математики. Основная цель моделирования — исследовать эти объекты и предсказать результаты будущих наблюдений. Однако моделирование — это еще и метод познания окружающего мира, дающий возможность управлять им.
Математическое моделирование и связанный с ним компьютерный эксперимент незаменимы в тех случаях, когда натурный эксперимент невозможен или затруднен по тем или иным причинам. Например, нельзя поставить натурный эксперимент в истории, чтобы проверить, «что было бы, если бы...» Невозможно проверить правильность той или иной космологической теории. В принципе возможно, но вряд ли разумно, поставить эксперимент по распространению какой-либо болезни, например чумы, или осуществить ядерный взрыв, чтобы изучить его последствия. Однако все это вполне можно сделать на компьютере, построив предварительно математические модели изучаемых явлений.
2. Основные этапы математического моделирования
1) Построение модели. На этом этапе задается некоторый «нематематический» объект — явление природы, конструкция, экономический план, производственный процесс и т. д. При этом, как правило, четкое описание ситуации затруднено. Сначала выявляются основные особенности явления и связи между ними на качественном уровне. Затем найденные качественные зависимости формулируются на языке математики, то есть строится математическая модель. Это самая трудная стадия моделирования.
2) Решение математической задачи, к которой приводит модель. На этом этапе большое внимание уделяется разработке алгоритмов и численных методов решения задачи на ЭВМ, при помощи которых результат может быть найден с необходимой точностью и за допустимое время.
3) Интерпретация полученных следствий из математической модели. Следствия, выведенные из модели на языке математики, интерпретируются на языке, принятом в данной области.
4) Проверка адекватности модели. На этом этапе выясняется, согласуются ли результаты эксперимента с теоретическими следствиями из модели в пределах определенной точности.
5) Модификация модели. На этом этапе происходит либо усложнение модели, чтобы она была более адекватной действительности, либо ее упрощение ради достижения практически приемлемого решения.
3. Классификация моделей
Классифицировать модели можно по разным критериям. Например, по характеру решаемых проблем модели могут быть разделены на функциональные и структурные. В первом случае все величины, характеризующие явление или объект, выражаются количественно. При этом одни из них рассматриваются как независимые переменные, а другие — как функции от этих величин. Математическая модель обычно представляет собой систему уравнений разного типа (дифференциальных, алгебраических и т. д.), устанавливающих количественные зависимости между рассматриваемыми величинами. Во втором случае модель характеризует структуру сложного объекта, состоящего из отдельных частей, между которыми существуют определенные связи. Как правило, эти связи не поддаются количественному измерению. Для построения таких моделей удобно использовать теорию графов. Граф — это математический объект, представляющий собой некоторое множество точек (вершин) на плоскости или в пространстве, некоторые из которых соединены линиями (ребрами).
По характеру исходных данных и результатов предсказания модели могут быть разделены на детерминистические и вероятностно-статистические. Модели первого типа дают определенные, однозначные предсказания. Модели второго типа основаны на статистической информации, а предсказания, полученные с их помощью, имеют вероятностный характер.
4. Примеры математических моделей
1) Задачи о движении снаряда.
Рассмотрим следующую задачу механики.
Снаряд пущен с Земли с начальной скоростью v0 = 30 м/с под углом a = 45° к ее поверхности; требуется найти траекторию его движения и расстояние S между начальной и конечной точкой этой траектории.
Пренебрегая размерами снаряда, будем считать его материальной точкой. Введем систему координат xOy, совместив ее начало O с исходной точкой, из которой пущен снаряд, ось x направим горизонтально, а ось y — вертикально (рис. 1).
Рис. 1
Тогда, как это известно из школьного курса физики, движение снаряда описывается формулами:
где t — время, g = 10 м/с2 — ускорение свободного падения. Эти формулы и дают математическую модель поставленной задачи. Выражая t через x из первого уравнения и подставляя во второе, получим уравнение траектории движения снаряда:
Эта кривая (парабола) пересекает ось x в двух точках: x1 = 0 (начало траектории) и (место падения снаряда). Подставляя в полученные формулы заданные значения v0 и a, получим
ответ: y = x – 90x2, S = 90 м.
Отметим, что при построении этой модели использован ряд предположений: например, считается, что Земля плоская, а воздух и вращение Земли не влияют на движение снаряда.
2) Задача о баке с наименьшей площадью поверхности.
Требуется найти высоту h0 и радиус r0 жестяного бака объема V = 30 м3, имеющего форму закрытого кругового цилиндра, при которых площадь его поверхности S минимальна (в этом случае на его изготовление пойдет наименьшее количество жести).
Запишем следующие формулы для объема и площади поверхности цилиндра высоты h и радиуса r:
V = pr2h, S = 2pr(r + h).
Выражая h через r и V из первой формулы и подставляя полученное выражение во вторую, получим:
Таким образом, с математической точки зрения, задача сводится к определению такого значения r, при котором достигает своего минимума функция S(r). Найдем те значения r0, при которых производная
обращается в ноль:Можно проверить, что вторая производная функции S(r) меняет знак с минуса на плюс при переходе аргумента r через точку r0. Следовательно, в точке r0 функция S(r) имеет минимум. Соответствующее значение h0 = 2r0. Подставляя в выражение для r0 и h0 заданное значение V, получим искомый радиус и высоту
3) Транспортная задача.
В городе имеются два склада муки и два хлебозавода. Ежедневно с первого склада вывозят 50 т муки, а со второго — 70 т на заводы, причем на первый — 40 т, а на второй — 80 т.
Обозначим через aij стоимость перевозки 1 т муки с i-го склада на j-й завод (i, j = 1,2). Пусть
a11 = 1,2 р., a12 = 1,6 р., a21 = 0,8 р., a22 = 1 р.
Как нужно спланировать перевозки, чтобы их стоимость была минимальной?
Придадим задаче математическую формулировку. Обозначим через x1 и x2 количество муки, которое надо перевезти с первого склада на первый и второй заводы, а через x3 и x4 — со второго склада на первый и второй заводы соответственно. Тогда:
x1 + x2 = 50, x3 + x4 = 70, x1 + x3 = 40, x2 + x4 = 80. (1)
Общая стоимость всех перевозок определяется формулой
f = 1,2x1 + 1,6x2 + 0,8x3 + x4.
С математической точки зрения, задача заключается в том, чтобы найти четыре числа x1, x2, x3 и x4, удовлетворяющие всем заданным условиям и дающим минимум функции f. Решим систему уравнений (1) относительно xi (i = 1, 2, 3, 4) методом исключения неизвестных. Получим, что
x1 = x4 – 30, x2 = 80 – x4, x3 = 70 – x4, (2)
а x4 не может быть определено однозначно. Так как xi і0 (i = 1, 2, 3, 4), то из уравнений (2) следует, что 30Јx4Ј70. Подставляя выражение для x1, x2, x3 в формулу для f, получим
f = 148 – 0,2x4.
Легко видеть, что минимум этой функции достигается при максимально возможном значении x4, то есть при x4 = 70. Соответствующие значения других неизвестных определяются по формулам (2): x1 = 40, x2 = 10, x3 = 0.
4) Задача о радиоактивном распаде.
Пусть N(0) — исходное количество атомов радиоактивного вещества, а N(t) — количество нераспавшихся атомов в момент времени t. Экспериментально установлено, что скорость изменения количества этих атомов N'(t) пропорциональна N(t), то есть N'(t)=–lN(t), l>0 — константа радиоактивности данного вещества. В школьном курсе математического анализа показано, что решение этого дифференциального уравнения имеет вид N(t) = N(0)e–lt. Время T, за которое число исходных атомов уменьшилось вдвое, называется периодом полураспада, и является важной характеристикой радиоактивности вещества. Для определения T надо положить в формуле Тогда Например, для радона l = 2,084·10–6, и следовательно, T = 3,15 сут.
5) Задача о коммивояжере.
Коммивояжеру, живущему в городе A1, надо посетить города A2, A3 и A4, причем каждый город точно один раз, и затем вернуться обратно в A1. Известно, что все города попарно соединены между собой дорогами, причем длины дорог bij между городами Ai и Aj (i, j = 1, 2, 3, 4) таковы:
b12 = 30, b14 = 20, b23 = 50, b24 = 40, b13 = 70, b34 = 60.
Надо определить порядок посещения городов, при котором длина соответствующего пути минимальна.
Изобразим каждый город точкой на плоскости и пометим ее соответствующей меткой Ai (i = 1, 2, 3, 4). Соединим эти точки отрезками прямых: они будут изображать дороги между городами. Для каждой «дороги» укажем ее протяженность в километрах (рис. 2). Получился граф — математический объект, состоящий из некоторого множества точек на плоскости (называемых вершинами) и некоторого множества линий, соединяющих эти точки (называемых ребрами). Более того, этот граф меченый, так как его вершинам и ребрам приписаны некоторые метки — числа (ребрам) или символы (вершинам). Циклом на графе называется последовательность вершин V1, V2, ..., Vk, V1 такая, что вершины V1, ..., Vk — различны, а любая пара вершин Vi, Vi+1 (i = 1, ..., k – 1) и пара V1, Vk соединены ребром. Таким образом, рассматриваемая задача заключается в отыскании такого цикла на графе, проходящего через все четыре вершины, для которого сумма всех весов ребер минимальна. Найдем перебором все различные циклы, проходящие через четыре вершины и начинающиеся в A1:
1) A1, A4, A3, A2, A1;
2) A1, A3, A2, A4, A1;
3) A1, A3, A4, A2, A1.
Найдем теперь длины этих циклов (в км): L1 = 160, L2 = 180, L3 = 200. Итак, маршрут наименьшей длины — это первый.
Заметим, что если в графе n вершин и все вершины попарно соединены между собой ребрами (такой граф называется полным), то число циклов, проходящих через все вершины, равно Следовательно, в нашем случае имеется ровно три цикла.
6) Задача о нахождении связи между структурой и свойствами веществ.
Рассмотрим несколько химических соединений, называемых нормальными алканами. Они состоят из n атомов углерода и n + 2 атомов водорода (n = 1, 2 ...), связанных между собой так, как показано на рисунке 3 для n = 3. Пусть известны экспериментальные значения температур кипения этих соединений:
yэ(3) = – 42°, yэ(4) = 0°, yэ(5) = 28°, yэ(6) = 69°.
Требуется найти приближенную зависимость между температурой кипения и числом n для этих соединений. Предположим, что эта зависимость имеет вид
y » an + b,
где a, b — константы, подлежащие определению. Для нахождения a и b подставим в эту формулу последовательно n = 3, 4, 5, 6 и соответствующие значения температур кипения. Имеем:
– 42 » 3a + b, 0 » 4a + b, 28 » 5a + b, 69 » 6a + b.
Для определения наилучших a и b существует много разных методов. Воспользуемся наиболее простым из них. Выразим b через a из этих уравнений:
b » – 42 – 3a, b » – 4a, b » 28 – 5a, b » 69 – 6a.
Возьмем в качестве искомого b среднее арифметическое этих значений, то есть положим b » 16 – 4,5a. Подставим в исходную систему уравнений это значение b и, вычисляя a, получим для a следующие значения: a»37, a»28, a»28, a»36. Возьмем в качестве искомого a среднее значение этих чисел, то есть положим a»34. Итак, искомое уравнение имеет вид
y » 34n – 139.
Проверим точность модели на исходных четырех соединениях, для чего вычислим температуры кипения по полученной формуле:
yр(3) = – 37°, yр(4) = – 3°, yр(5) = 31°, yр(6) = 65°.
Таким образом, ошибка расчетов данного свойства для этих соединений не превышает 5°. Используем полученное уравнение для расчета температуры кипения соединения с n = 7, не входящего в исходное множество, для чего подставим в это уравнение n = 7: yр(7) = 99°. Результат получился довольно точный: известно, что экспериментальное значение температуры кипения yэ(7) = 98°.
7) Задача об определении надежности электрической цепи.
Здесь мы рассмотрим пример вероятностной модели. Сначала приведем некоторые сведения из теории вероятностей — математической дисциплины, изучающей закономерности случайных явлений, наблюдаемых при многократном повторении опыта. Назовем случайным событием A возможный исход некоторого опыта. События A1, ..., Ak образуют полную группу, если в результате опыта обязательно происходит одно из них. События называются несовместными, если они не могут произойти одновременно в одном опыте. Пусть при n-кратном повторении опыта событие A произошло m раз. Частотой события A называется число W = . Очевидно, что значение W нельзя предсказать точно до проведения серии из n опытов. Однако природа случайных событий такова, что на практике иногда наблюдается следующий эффект: при увеличении числа опытов значение практически перестает быть случайным и стабилизируется около некоторого неслучайного числа P(A), называемого вероятностью события A. Для невозможного события (которое никогда не происходит в опыте) P(A)=0, а для достоверного события (которое всегда происходит в опыте) P(A)=1. Если события A1, ..., Ak образуют полную группу несовместимых событий, то P(A1)+...+P(Ak)=1.
Пусть, например, опыт состоит в подбрасывании игральной кости и наблюдении числа выпавших очков X. Тогда можно ввести следующие случайные события Ai ={X = i}, i = 1, ..., 6. Они образуют полную группу несовместных равновероятных событий, поэтому P(Ai) = (i = 1, ..., 6).
Суммой событий A и B называется событие A + B, состоящее в том, что в опыте происходит хотя бы одно из них. Произведением событий A и B называется событие AB, состоящее в одновременном появлении этих событий. Для независимых событий A и B верны формулы
P(AB) = P(A)•P(B), P(A + B) = P(A) + P(B).
8) Рассмотрим теперь следующую задачу. Предположим, что в электрическую цепь последовательно включены три элемента, работающие независимо друг от друга. Вероятности отказов 1-го, 2-го и 3-го элементов соответственно равны P1 = 0,1, P2 = 0,15, P3 = 0,2. Будем считать цепь надежной, если вероятность того, что в цепи не будет тока, не более 0,4. Требуется определить, является ли данная цепь надежной.
Так как элементы включены последовательно, то тока в цепи не будет (событие A), если откажет хотя бы один из элементов. Пусть Ai — событие, заключающееся в том, что i-й элемент работает (i = 1, 2, 3). Тогда P(A1) = 0,9, P(A2) = 0,85, P(A3) = 0,8. Очевидно, что A1A2A3 — событие, заключающееся в том, что одновременно работают все три элемента, и
P(A1A2A3) = P(A1)•P(A2)•P(A3) = 0,612.
Тогда P(A) + P(A1A2A3) = 1, поэтому P(A) = 0,388 < 0,4. Следовательно, цепь является надежной.
В заключение отметим, что приведенные примеры математических моделей (среди которых есть функциональные и структурные, детерминистические и вероятностные) носят иллюстративный характер и, очевидно, не исчерпывают всего разнообразия математических моделей, возникающих в естественных и гуманитарных науках.
.