Компьютерра PDA N71 (06.11.2010-13.11.2010)
Шрифт:
– А какие задачи решаются методом Монте-Карло?
– В пятидесятые годы XX столетия расцвет метода Монте-Карло был связан с разработкой проблемы защиты ядерных реакторов. Прежде чем конструировать системы защиты от излучения "в железе", проводились компьютерные расчеты на основе математической модели процесса, схематично выглядевшей следующим образом.
Излучение трактовалось как поток малых частиц ("фотонов"), пролетающих сквозь слой защиты, в котором хаотично расположены крупные частицы. "Фотон", сталкиваясь с крупной частицей, либо захватывается ею ("поглощается"), либо рассеивается по некоторому вероятностному закону. Можно проследить (реализовав на компьютере) траектории фотонов и подсчитать, какая доля
При реализации траектории "фотона" до поглощения нужны выборочные значения случайных величин с различными законами распределения. Для получения таких значений используют преобразования стандартных случайных чисел αj.
Далее выяснилось, что с описанным случайным процессом движения "фотонов" можно соотнести определенное уравнение (интегральное уравнение Фредгольма второго рода), на основе которого можно строить так называемые весовые оценки для вычисления требуемых характеристик (функционалов) физического процесса. Введение весов позволяет в ряде случаев упростить компьютерную реализацию траекторий "фотонов".
Вычисляемые в данной задаче характеристики (функционалы) можно также трактовать как сумму интегралов бесконечной кратности.
Вообще в литературе метод Монте-Карло обычно представляется как специальный способ вычисления многократных интегралов. Часто для иллюстрации рисуют такую картинку.
Численное интегрирование функции методом Монте-Карло (график из "Википедии")
Предположим, нам нужно вычислить интеграл, равный площади S под кривой, изображенной на рисунке. Для этого поместим ее в прямоугольник с известной площадью U, и будем кидать в него равномерно распределенные случайные точки. Понятно, что вероятность P попадания случайной точки в интересующую нас область равна отношению площади этой области к площади прямоугольника: P = S/U. Реализуем большое количество точек N, и подсчитаем, какое количество точек K попадет под кривую. Частота K/N попадания случайных точек под кривую приближает вероятность P, и поэтому S/U ≈ K/N, а искомый интеграл приближенно равен S ≈ KU/N.
На самом деле даже в этом простейшем одномерном случае можно строить более "хитрые" весовые оценки интеграла S, позволяющие получить требуемый уровень погрешности приближения интеграла с меньшими затратами (в первую очередь - с меньшим количеством реализуемых случайных точек).
Одним из главных недостатков метода Монте-Карло является относительно медленное убывание погрешности приближения требуемой величины с ростом числа n реализаций случайных траекторий (точек). Эта погрешность убывает со скоростью n– 1/2. То есть для уменьшения погрешности в десять раз требуется взять в среднем в 100 раз больше траекторий (точек). Поэтому многие сложные прикладные задачи решаются долго - иногда сутками (даже на современных суперкомпьютерах).
Для ряда "простых" задач (например, для задачи вычисления интеграла малой кратности с "хорошей", гладкой подынтегральной функцией) метод Монте-Карло проигрывает по эффективности детерминированным (как правило, сеточным) вычислительным методам.
Однако для большого класса весьма актуальных задач, связанных с вычислением многократных (даже бесконечнократных) интегралов или функционалов от решений интегральных уравнений и включающих негладкие входные данные, метод Монте-Карло практически не имеет конкурентов.
Можно также отметить, что методы Монте-Карло стремительно расширяют сферу применения. Эффективные алгоритмы численного статистического моделирования разработаны в физической и химической кинетике, статистической физике, теории массового обслуживания, финансовой математике, теории турбулентности, математической биологии и других областях.
В заключение отмечу, что бурное развитие школы методов Монте-Карло в новосибирском Академгородке на протяжении сорока с лишним лет связано с именем моего учителя, члена-корреспондента РАН Геннадия Алексеевича Михайлова. Под его руководством процветает большой отдел в Институте вычислительной математики и математической геофизики СО РАН, сотрудники которого успешно занимаются вопросами теории и приложений методов Монте-Карло.
Как компьютеры меняют работу астронома
Автор: Дмитрий Вибе
Опубликовано 08 ноября 2010 года
Наверняка самое сокровенное желание человека, посетившего с экскурсией астрономическую обсерваторию, состоит в том, чтобы посмотреть на звёзды в настоящий большой телескоп. И его неизменно постигает разочарование: в профессиональный телескоп смотреть нельзя. То есть, не запрещено, а вообще нельзя, не предусмотрено конструкцией. В утешение можно сказать, что и профессиональный астроном всё реже и реже имеет возможность не то что посмотреть в телескоп, но и хотя бы просто лично поучаствовать в наблюдениях.
Из-за развития технологий астроном и телескоп становятся всё дальше друг от друга: современный наблюдательный инструментарий слишком сложен, чтобы им можно было управлять без соответствующей - не астрономической - квалификации. Астроном через интернет направляет заявку на наблюдения, через интернет получает результаты (конечно, если заявку одобрил программный комитет обсерватории)... Ему уже не нужно бодрствовать ночами, не нужно гарцевать вокруг телескопа на шаткой лесенке, не нужно на морозе голыми руками устанавливать железную кассету с фотопластинками. Казалось бы, всё хорошо, но романтика профессии сходит на нет.
И здесь в неожиданном выигрыше оказались теоретики, для которых романтика астрономии вдруг воплотилась в программировании. Конечно, я имею в виду не программирование вообще, а его довольно узкую и конкретную область - компьютерное моделирование физических процессов.
Никакой особой премудрости в этом нет: достаточно записать в виде уравнений законы сохранения (массы, импульса, энергии...), дополнить их начальными и граничными условиями, решить эти уравнения и получить наглядное описание любого физического процесса. Конечно, разобраться с уравнениями по старинке, на старых конвертах, как делал это Эйнштейн, можно лишь в редких ситуациях, но на помощь всегда готовы придти численные методы и мощные компьютеры.
В результате возникла когорта людей, к которым вполне применимы слова Станислава Лема: "Им создавать или гасить звёзды - всё равно что семечки лузгать". В небольшой объём системного блока поместилась вся безграничная Вселенная с планетами, галактиками, астероидами, Большим Взрывом, чёрными дырами и белыми карликами. Одно нажатие клавиши Enter - и вот уже закружился на экране водоворот спиральных рукавов, побежала по межзвёздному газу ударная волна, задрожали под её натиском газопылевые облака и, потеряв устойчивость, обрушились внутрь себя под собственной тяжестью.