Author: Брандт З.
Tags: теория вероятностей и математическая статистика теория вероятностей математическая статистика комбинаторный анализ теория графов статистика инженерия анализ данных обработка данных вычислительные системы статистический анализ
ISBN: 5-03-003478-1
Year: 2003
»9
*
3. Брандт
Анализ данных
Статистические и вычислительные методы
для научных работников и инженеров
Перевод с английского О. И. Волковой
под редакцией Е. В. Чепурина
«М И Р »
«А С Т»
М о с к в а 2003
УДК 519.2
ББК 22.17
Б87
Брандт 3.
587
А н ал и з дан н ы х. С тати сти ч еск и е и вы числительны е м етоды
для научны х р аботн и к ов и и н ж ен еров : П ер . с англ. — М .: М и р,
О ОО « И здател ь ств о А С Т ». 2003. — 686 с ., ил.
ISBN 5-03-003478-1 («Мир»)
ISBN 5-17-019778-0 («АСТ»)
Учебное пособие по статистическим методам и их применению в при
кладных науках с использованием численных методов, написанное извест
ным математиком-прикладником (Германия). В книге отражена связь стро
гих математических методов с практическими приложениями. После введе
ния в теорию вероятностей и математическую статистику автор подробно
излагает ряд наиболее известных статистических методов. Изложение
сопровождается примерами и упражнениями с решениями из разнообраз
ных областей приложений. Большое внимание автор уделяет компьютерным
аспектам реализации статистических процедур. По существу, этот раздел
является учебником в учебнике.
Книга представляет большой интерес как пособие по математической
статистике для студентов и преподавателей нематематических специаль
ностей и как справочник по статистическим и компьютерным аспектам об
работки экспериментальных данных для научных работников и исследова
телей различных специальностей (включая биологов, медиков, эко
номистов и специалистов из инженерии), занимающихся обработкой
статистических данных.
УДК 519.2
ББК 22.17
Редакция литературы по математическим наукам
Данное издание состоит из книги и прилагающегося
к ней CD-ROM. Книга и CD-ROM защищены федеральным законом
об авторских правах и соответствующим международным соглашением
Без письменного разрешения издательства (Springer-Verlag New York,
Inc., 175 Fifth Avenue, New York, NY 10010, ISA) книга или любая
ее часть не могут быть переведены или перепечатаны.
ISBN 5-03-003478-1 («Мир»)
ISBN 0-7506-4411-7 (англ.)
ISBN 5-17-019778-0 («АСТ»)
© Springer-Verlag New York Inc.
© перевод на русский язык,
оформление, издательство «Мир». 2003
Предисловие редактора перевода
Книга, которую вы держите в руках, окажется полезной весьма широкому кру
гу читателей самой разнообразной профессиональной ориентации. Она может
служить учебником по теории вероятностей и математической статистике для
студентов нематематических специальностей, источником задач и основой ста
тистических практикумов для преподавателей, своеобразным справочником по
процедурам статистической обработки реальных данных и численным методам
реализации таких процедур для исследователей широкого профиля. Ее можно
рекомендовать также в качестве пособия по самостоятельному освоению мето
дов статистического образования для лиц с математическим образованием на
уровне технического вуза.
Область приложений методов математической статистики непрерывно
расширяется. В немалой степени это связано со стремительным ростом воз
можностей компьютерной обработки данных, созданием специализированных
программных систем, позволяющих автоматизировать трудоемкие рутинные
процессы статистического анализа. Расширяется и круг специалистов, вовле
ченных в анализ статистических данных. И хотя многие статистические про
граммные пакеты содержат в той или иной степени развитости экспертные си
стемы, которые помогают построению математических моделей, отражающих
структуру данных, а также позволяют интерпретировать результаты стати
стического анализа, все это не исключает, а наоборот—предполагает владение
математической статистикой на базовом уровне.
Отметим попутно, что и сам базовый уровень статистического образования
с течением времени повышается. По существу, предлагаемая книга 3. Брандта1
отвечает современному уровню статистического образования, опережая его в
аспектах теории и практики численной реализации статистических процедур.
Помочь специалистам, имеющим непосредственное отношение к обработ
ке реальных данных, постичь основные идеи теории статистического вывода
и приобрести навыки в технологии статистического анализа —именно в этом
состоит цель предлагаемого вниманию российского читателя перевода испра
вленного и расширенного третьего английского издания этой книги.
В ней излагаются основы теории вероятностей и базовых видов статистиче
ского вывода: теории точечного и доверительного оценивания, а также теории
проверки гипотез. Кроме того, в книге представлен широкий спектр графиче
ских методов. В качестве объекта приложения изложенной теории фигуриру1 Здесь необходимо отметить, что автор уже известен у нас более ранним переводом, см.
Брандт3. «Статистические методы анализа наблюдений». —М.: Мир, 1975. С целью более
глубокого освоения статистических методов можно рекомендовать ранее изданные у нас ста
тистические монографии. Так, прикладные аспекты статистического анализа подробно изло
жены в монографии [1]. Строгое математическое изложение теории статистических выводов
содержится в книге [8]. Для более глубокого понимания принципов построения и интерпре
тации статистических процедур весьма полезна книга {13], которая, впрочем, требует для
своего чтения определенной математической культуры.
6
Предисловие редактора перевода
ют наиболее распространенные типы статистических данных —независимые
выборки (включая цензурированные), регрессионные модели (в том числе и
нелинейные), временные ряды.
Много внимания автор уделяет изложению математического обеспечения
численной реализации процедур статистического анализа в надежде, и, хочет
ся верить, не беспочвенной, что для своих конкретных задач читатель сможет
собрать оригинальную систему статистического анализа собственных данных.
При этом он может использовать как излагаемые в книге математические алго
ритмы оптимизации матричных вычислений, статистического моделирования,
так и приведенные автором программы на языке Фортран. Кроме того, имеется
возможность использовать электронную версию этих подпрограмм1. Конечно,
для этих целей можно использовать и широкий спектр систем статистическо
го анализа, имеющих хождение в нашей стране —BMDP, SAS, STATISTICA,
SYSTAT, SPSS, а для анализа временных рядов2 —МЕЗОЗАВР (ЦЭМИ) и
многие другие. В этом случае предлагаемое издание послужит своеобразным
пособием по интерпретации полученных результатов для пользователей ука
занных систем. Как правило, этот аспект недостаточно полно представлен в
описаниях, прилагаемых к компьютерным системам статистического анали
за. С другой стороны, для лиц, впервые приступающих к изучению методов
статистического анализа, необходимо иметь под рукой компьютерного «репе
титора», который поможет сначала смоделировать случайную среду, а затем
осуществить необходимые рутинные вычисления, только после выполнения ко
торых и можно оценить качество статистических процедур. В этом плане книга
3. Брандта окажется весьма полезной. Широта охвата тем, связанных со ста
тистическим анализом данных, диктует определенную фрагментарность изло
жения материала. К методологическим успехам автора можно отнести то, что
после освоения материала книги ее читатель будет в состоянии решать наибо
лее часто возникающие проблемы статистического анализа экспериментальных
данных, а в случае более сложных ситуаций он сможет с пониманием воспри
нять рекомендации специализированных статистических изданий (в том числе
книг из упомянутого выше списка дополнительной литературы, добавленного
при переводе к основной библиографии).
Автор проявил большое внимание к подготовке русского издания, любезно
предоставил электронный файл английского текста, прислал список исправле
ний, которые были учтены в русском издании. За все это мы, переводчик книги
О. И. Волкова и автор этих строк, выражаем ему искреннюю благодарность.
Нет сомнения, что выход в свет на русском языке книги 3. Брандта будет
способствовать расширению зоны грамотного использования статистических
методов за счет повышения образовательного уровня специалистов, работаю
щих с реальными данными.
Е. В. Чепурин
1 Читатели, у которых могут возникнуть вопросы, связанные с доступом к электронному
носителю подпрограмм, могут обращаться к переводчику книги —Волковой Ольге Ивановне,
e-mail: ovolkova@mech.math.msu.su
2 Конечно, эта необъятная тема лишь слегка затронута в данном издании. См. список
дополнительной литературы в конце книги.
Предисловие к третьему
английскому изданию
В настоящем издании большая часть содержания книги была переработана и
дополнена. В частности, существенные изменения были внесены в разделы, по
священные методам решения систем линейных уравнений, минимизации функ
ций и моделирования случайных чисел на компьютере. При этом изложение
было ориентировано на применение широко используемых ныне персональных
компьютеров. Для этого было существенно увеличено количество компьютер
ных программ, с помощью которых можно решить все задачи, сформулирован
ные в этой книге. Тексты этих программ приведены в книге, а также записаны
на прилагающийся к ней CD-ROM.
Основная концепция книги была сохранена. Изложение по-прежнему ла
конично, однако при этом достаточно математически строго и направлено в
первую очередь на помощь в решении различных прикладных задач. Осно
вы дифференциального и интегрального исчисления читателю предполагаются
известными. Другой необходимый математический аппарат, в частности основ
ные положения теории вероятностей, кратко изложен в книге. Существенная
особенность изложения состоит в использовании векторных и матричных обо
значений, позволяющих более компактно и наглядно изложить многие вопро
сы. Основы матричного и векторного исчисления, а также соответствующие
компьютерные программы приведены в приложении А.
Разработка компьютерных программ, соответствующих примеров про
грамм и задач была осуществлена в рамках исследовательского гранта ком
пании «IBM Germany». Все эти программы были разработаны и протестиро
ваны на компьютере IBM RISC/6000, а затем были перенесены на IBM PS/2- и
ШМ PC-совместимые компьютеры. Я выражаю благодарность компании IBM
Germany за щедрую поддержку.
При подготовке этого издания к выходу в свет мне помогали многие дру
зья и коллеги. Я выражаю искреннюю благодарность доктору Карин Дамен
[Вт. Karin Dahmen), доктору Мартину 3. Брандту (Dr. Martin S. Brandt),
г-ну Тило Стро (Mr. Tilo Stroh) и г-ну Клеменсу Стаппериху (Mr. Clemens
Stupperich), которые оказали помощь в разработке ряда программ, в частно
сти тех, в которых используется компьютерная графика. Тило Стро осуще
ствил перевод всех программ с языка FORTRAN на язык С, а затем про
тестировал полученные программы. Вместе с г-ном Инго Страком (Mr. Ingo
Struck) он также разработал интерфейс для операционных систем WINDOWS и
Linux/XWindow и соответствующих компиляторов. Я благодарю доктора Гле
на Кована (Dr. Glen Cowan), доктора Хельге Мейнхард (Dr. Helge Meinhard)
8
Предисловие к третьему английскому изданию
и Тило Стро за внимательное прочтение рукописи и внесение ряда полезных
замечаний и дополнений. Я выражаю особую благодарность доктору Глену
Ковану (Dr. Glen Cowan) за перевод этой книги на английский язык, а также
г-же Ите Бендер (Mrs. Ute Bender) и Тило Стро за подготовку к публикации
электронной версии данной рукописи. В заключение я хотел бы поблагода
рить читателей предыдущих изданий и их переводов за советы по внесению
необходимых изменений и интересных дополнений.
Зиген, Апрель 1997
Зигмунд Брандтп
Глава 1
Введение
1.1. Типичные задачи анализа данных
Каждая из экспериментальных наук после начальной стадии качественного
описания переходит к установлению количественных характеристик рассма
триваемого явления, т. е, к измерениям. Помимо планирования и осуществле
ния самого измерения важной задачей является также правильная оценка и
детальная обработка полученных данных. Перечислим некоторые типичные
задачи, связанные с этим.
1. Рассмотрим влияние различных препаратов на прибавку веса подопытных
животных. После того как 25 животным был дан препарат А , наблюдалось
увеличение среднего веса на 5%. Препарат В , выданный 10 животным, при
вел к прибавке в 3%. Является ли препарат А более эффективным? Значе
ния прироста средних показателей (5 и 3%) не дают ответа на этот вопрос,
поскольку меньший прирост может быть обусловлен потерей веса одним из
животных по каким-либо другим причинам. Следовательно, необходимо из
учить распределение отдельных весов и их разброс около среднего значения.
Более того, нужно решить, является ли количество подопытных животных
достаточным для того, чтобы с заданной точностью выявить различия в
степени воздействия этих двух препаратов.
2. В экспериментах по выращиванию кристаллов очень важно придерживать
ся точного соотношения различных компонент. Из 500 кристаллов возьмем
и исследуем выборку, состоящую из 20 кристаллов. Какие выводы можно
сделать о структуре остальных 480 кристаллов? Подобная задача об анали
зе свойств совокупности на основе выборки ее элементов возникает, в част
ности, при контроле качества, проверке надежности автоматизированных
измерительных устройств, а также при выяснении общественного мнения
на основании выборочных опросов.
3. Пусть в результате эксперимента были получены некоторые данные. Необ
ходимо решить, не вступают ли они в противоречие с предсказанием теории
либо с результатами предыдущих экспериментов. В этом случае экспери
мент используется для проверки гипотезы.
4. Допустим, в общем виде известен закон, описывающий зависимость между
измеряемыми величинами, а параметры этого закона необходимо получить
в результате эксперимента. Например, при радиоактивном распаде число N
атомов, распадающихся в секунду, убывает со временем экспоненциально:
10
Глава 1. Введение
N(t) = const • exp (—At). Необходимо оценить константу распада А и опре
делить оценку ее ошибки, максимально эффективно используя последова
тельность измеренных значений TVi(ti), N 2 ^ 2 ), ... • Мы столкнулись здесь
с проблемой подгонки к данным функции, содержащей неизвестные пара
метры. Основная задача здесь состоит в нахождении численного значения
параметров, обеспечивающих наилучшее согласие данных с подобранной
функцией, а также определения ошибок оценок этих параметров.
Приведенные примеры иллюстрируют некоторые аспекты анализа данных.
В частности, мы увидели, что результат измерений не определяется однознач
но экспериментальной процедурой: он может непредсказуемо изменяться —это
случайная величина. Случайность заложена как в сути самого эксперимента
(подопытные животные неодинаковы, радиоактивный распад — стохастическое
явление), так и является следствием неизбежных неточностей измерительного
оборудования, т. е. ошибок измерения. Часто полезно смоделировать на ком
пьютере саму измеряемую величину или же стохастические характеристики
эксперимента с целью получения представления об ожидаемой неоднозначно
сти результатов еще до проведения самого эксперимента. Такое моделирование
случайных величин на компьютере называется методом Монте-Карло по име
ни города, известного своими игорными заведениями.
1.2. О структуре этой книги
Основой для использования случайных величин является теория вероятно
стей. Наиболее важные ее аксиомы и свойства вероятностей приведены в
гл. 2. Понятие случайной величины вводится в гл. 3. Там рассмотрены свойства
функций распределения случайных величин и введены другие характеристи
ки случайных величин (в том числе математическое ожидание и дисперсия).
Особое внимание уделено взаимозависимости нескольких случайных величин.
Кроме того, там же рассмотрены различные функциональные преобразования
случайных величин и порождаемые ими преобразования дисперсий и ковари
ационных матриц.
Моделирование случайных чисел на компьютере и метод Монте-Карло
являются предметом гл. 4. Помимо описания математических методов поро
ждения случайных чисел приведены также программа и примеры порожден
ных случайных величин с различными распределениями. На примерах также
показано применение метода Монте-Карло в задачах интегрирования и моде
лирования. Этот метод также использован для моделирования данных, содер
жащих ошибки измерения. На этих данных могут быть проверены программы
из дальнейших глав.
В главе 5 приведен ряд распределений, имеющих важное значение для при
ложений. Главным образом это относится к гауссовскому (нормальному) рас
пределению, свойства которого подробно исследованы.
На практике распределение приходится находить по конечному числу на
блюдений, т. е. по выборке. Различные способы получения выборок рассмотре-
1.2.
О структуре этой книги
11
ны в гл. 6. В ней также представлены компьютерные программы для первич
ной численной обработки и графического представления эмпирических дан
ных. Функции от выборки (т. е. от отдельных наблюдений, образующих вы
борку) можно использовать для оценки параметров распределений. При этом
приводятся требования, которым должна удовлетворять «хорошая» оценка.
На этой стадии вводится величина типа хи-квадрат. Она равна сумме квадра
тов разностей наблюдаемых и ожидаемых значений и, следовательно, может
быть использована в качестве показателя степени согласия данных с гипоте
тическими предположениями.
В главе 7 обсуждается метод максимального правдоподобия, являющийся
ядром современного статистического анализа. Он позволяет построить оценки
с оптимальными свойствами. Этот метод рассмотрен для однопараметриче
ского и многопараметрического случаев и проиллюстрирован рядом примеров.
Глава 8 посвящена проверке гипотез. В ней приведены наиболее часто исполь
зуемые критерии: F, t и хи-квадрат, и, кроме того, в общих чертах предста
влена теория проверки гипотез.
Метод наименьших квадратов, который, по-видимому, является наиболее
широко используемой статистической процедурой, изучается в гл. 9. До обсу
ждения общей ситуации подробно рассмотрены часто встречающиеся на прак
тике частные случаи прямых, косвенных измерений и измерений с ограничени
ями. Для всех случаев приведены программы и примеры. Все задачи на метод
наименьших квадратов и большинство задач на метод максимального правдо
подобия сводятся к отысканию минимума функции нескольких переменных.
В главе 10 подробно описаны различные методы, при помощи которых осу
ществляется подобная минимизация. Программы и примеры иллюстрируют
соответствующую эффективность этих методов.
Дисперсионный анализ (гл. 11) можно рассматривать как модификацию
F -критерия. Он широко используется в биологических и медицинских иссле
дованиях для изучения зависимости или независимости измеряемой величины
от различных условий опыта, выраженных другими переменными. Для случая
многих переменных могут возникать более сложные ситуации. Несколько про
стых численных примеров просчитаны при помощи компьютерных программ.
Линейная и параболическая регрессия, являющаяся предметом гл. 12, есть
частный случай линейных моделей, исследуемых при помощи метода наимень
ших квадратов, и потому уже обсуждалась в главе 9. До появления компьюте
ров с помощью метода наименьших квадратов были разрешимы лишь задачи
линейной регрессии. Для этого случая была выработана специальная термино
логия, которая используется до сих пор. Поэтому посвящение данному предме
ту отдельной главы явлется обоснованным. В то же время в этой главе продол
жены исследования из гл. 9. В частности, излагается метод построения довери
тельных интервалов и исследована связь между регрессией и дисперсионным
анализом. В заключение этой главы приведена программа для параболической
регрессии и на примерах показано ее использование.
В последней главе содержатся элементы анализа временных рядов. Этот
метод статистического анализа используется, если имеющиеся данные пред-
12
Глава 1.
Введение
ставлены в виде функции от контролируемой переменной (обычно времени) и
в то же время известно, что не существует каких-либо теоретических основа
ний для описания данных в виде лишь функции от контролируемой перемен
ной. Процедуры временых рядов предназначены для устранения статистиче
ской компоненты флуктуации данных и выявления исходной зависимости от
контролируемой переменной. Поскольку при анализе временных рядов широ
ко используются громоздкие вычислительные методы, то в книге приведены
также соответствующие компьютерные программы.
Область анализа данных, составляющую основную часть этой книги, мож
но назвать прикладной математической статистикой. Кроме статистики в
книге используются другие разделы математики и соответствующие вычисли
тельные методы. Необходимые материалы содержатся в приложениях.
В приложении А «Матричное исчисление» приведены наиболее важные по
нятия и методы линейной алгебры. Центральное место здесь занимают мето
ды решения систем линейных уравнений, в частности сингулярное разложение,
обладающее наилучшими свойствами. Приложение А включает большой набор
компьютерных программ для векторного и матричного исчисления.
Необходимые понятия и соотношения комбинаторики собраны в приложе
нии В. Часто приходится находить численные значения специальных функ
ций, используемых в математической статистике. Соответствующие формулы
и программы содержатся в приложении С. Многие из таких функций связаны
с гамма-функцией Эйлера и подобно ей могут быть найдены только при помо
щи методов приближенных вычислений. Необходимые формулы и программы
приведены в приложении D. Приложение Е включает в себя дополнительные
полезные программы для численного дифференцирования и нахождения ну
лей функций.
В анализе данных важную роль играет графическое представление самих
данных, оценки их ошибок, а также графики соответствующих аппроксима
ционных функций. В приложении F представлен полный пакет графических
программ. Введены наиболее важные понятия компьютерной графики и даны
необходимые пояснения по использованию этого программного пакета. В при
ложении G описывается процесс установки программ. Приложение G также
содержит ряд технических указаний, касающихся этих программ.
Раздел с приложениями заканчивается списком формул (приложение Н),
которые облегчают поиск наиболее важных соотношений, и списком статисти
ческих таблиц (приложение I). Хотя все табличные значения можно вычислить
при помощи программ из приложения С (и они действительно были вычислены
таким образом), однако легче найти одно или два значения в таблице, нежели
каждый раз обращаться к компьютеру.
В заключительной части большинства глав приведены задачи, которые
можно решить при помощи карандаша и бумаги. Они должны помочь чита
телю усвоить основные понятия и теоремы. В некоторых случаях может по
требоваться выполнение незначительных численных расчетов. Под заголовком
Указания и решения в конце глав приводятся либо решения задач, либо толь
ко ответы на них.
1.3. О компьютерных программах
13
1.3. О компьютерных программах
Все содержащиеся в этой книге программы написаны на языке программи
рования FORTRAN 77, так как он все еще остается широко используемым
языком программирования в естественных науках и технике. Но поскольку
язык программирования С приобрел большую популярность, то все програм
мы были также переведены на С при помощи автоматического транслятора.
Поэтому полученные после конвертации программы выглядят несколько ина
че, чем если бы они были изначально написаны на языке С. При установке
пользователи имеют возможность выбора языка программ (FORTRAN или С)
(см. процедуру установки в приложении G). Программы строго соответствуют
стандартам FORTRAN 77 и ANSI С. Поэтому их можно использовать лишь
на тех компьютерах, где правильно работают компиляторы FORTRAN 77 и С.
Исключение составляют лишь графические программы, работающие только на
IBM PC- или на PS/2-совместимых компьютерах.
В книге приведены и записаны на прилагающийся CD-ROM четыре группы
программ:
• библиотека анализа данных,
• графическая библиотека,
• примеры программ,
• решения задач по программированию.
Библиотека анализа данных представляет собой набор подпрограмм. Это
дает возможность вне зависимости от формата данных осуществлять ввод и
вывод значений в виде списка аргументов или значений функции. Каждая
программа решает строго определенную задачу, подробно описанную в книге.
В начале программы приводится ее краткое функциональное описание. Вслед
за описанием приводится распечатка программы в исходных кодах. С целью
экономии места представлены только программы на языке FORTRAN; поль
зователи, интересующиеся в деталях программами на языке С, могут их рас
печатать или просмотреть на экране. Сориентироваться в списке программ
пользователю поможет вспомогательная информация. Так, например, все про
граммы, относящиеся к одной и той же главе или одному или тому же при
ложению, т. е. к одной и той же теме, начинаются с одной и той же буквы.
В конце книги приведен список всех программ и перечислены названия про
грамм в алфавитном порядке. Мы попытались сделать структуру программ
по возможности простой и понятной. В отдельных случаях предпочтение было
отдано ясности, а не скорости вычислений. Все операции с плавающей точкой
выполнены с двойной точностью. Необходимо отметить, что в программах все
величины с плавающей точкой и функции в подпрограммах имеют тип DOUBLE
PRECISION (ДВОЙНАЯ ТОЧНОСТЬ) . После завершения процедуры установки, опи
санной в приложении G, все программы и библиотечные файлы готовы для
подключения к собственным программам пользователя.
14
Глава 1. Введение
Графическая библиотека снабжена только функциональным описанием от
дельных графических программ и библиотечным файлом. Тексты программ
для нее не приводятся, поскольку компьютерная графика не является предме
том анализа данных, а служит лишь его инструментом.
Для решения конкретной задачи пользователю следует написать неболь
шую головную программу, которая по существу должна состоять из командных
строк, вызывающих программы из библиотеки, а в некоторых случаях органи
зующих также ввод данных и вывод результатов. Подобные головные програм
мы содержатся среди примеров программ. Использование каждой программы
из библиотеки анализа данных и графической библиотеки проиллюстрировано
по меньшей мере одним примером. Такие примеры описаны в специальных раз
делах в конце большинства глав под заголовками типа «Головная программа
E3RN для демонстрации подпрограмм RNMLCG, RNECUYu RNSTNR» . Другие приме
ры программ служат для решения конкретных задач анализа данных или для
моделирования и графического представления данных. В книге не приведены
тексты этих программ, но все они записаны на CD-ROM.
В конце книги, как мы уже упоминали, находится Список компьютерных
программ в алфавитном порядке. Для каждой программы из библиотеки ана
лиза данных и графической библиотеки указаны два номера страниц: первый
соответствует объяснению самой программы, а второй — примеру программы,
демонстрирующей ее использование.
Задачи по программированию, как и примеры программ, призваны оказать
помощь читателю при использовании компьютерных методов вычислений. Из
учение этого материала даст возможность читателю разрабатывать собствен
ные алгоритмы решения конкретных задач анализа данных. При этом воз
можные решения задач по программированию в виде программ содержатся на
CD-ROM.
Безусловно, в анализе данных особую роль играют сами данные. Тип дан
ных и формат, в котором они представлены на компьютере, невозможно опре
делить однозначно, поскольку они сильно зависят от конкретной постановки
задачи. В большинстве случаев данные для примеров и задач были смоделиро
ваны при помощи программы, реализующей метод Монте-Карло. Бывает по
лезно сначала смоделировать данные с набором известных свойств и заданным
распределением ошибок измерений, а затем их проанализировать. В процессе
анализа необходимо сделать общие предположения о распределении ошибок.
Если эти предположения будут неверны, то таковыми окажутся и результа
ты анализа. При помощи упражнений, объединяющих в себе моделирование
и анализ, можно получить такой эффект, который на практике будет иметь
зачастую решающее значение.
Глава 2
Вероятность
2.1. Эксперименты, события, выборочное пространство
Поскольку в этой книге мы занимаемся анализом данных, полученных из экс
перимента, то прежде всего следует определить, что мы понимаем под экспе
риментом и его результатом. Так же как и в лабораторном опыте, мы опреде
лим эксперимент как протекающий при строго определенных условиях процесс,
вследствие которого мы получаем некую величину или набор величин, кото
рые и будут результатом эксперимента. Эти величины могут быть непрерывны
(температура, длина, электрический ток) или дискретны (число частиц, дни
рождения людей, один из трех возможных цветов).
Вне зависимости от того, насколько точно соблюдаются все условия процес
са, результаты повторных экспериментов в целом будут различаться. Это про
исходит как по причине статистической природы исследуемых данных, так и
из-за ограниченной точности измерений. Следовательно, возможные результа
ты эксперимента для каждой величины всегда будут иметь некоторый разброс
в конечной области. Все такие области для всех величин, составляющих ре
зультат эксперимента, образуют выборочное пространство этого эксперимен
та. Поскольку для конкретного эксперимента бывает трудно, а зачастую даже
невозможно точно определить допустимые области для измеряемых величин,
то фактически используемое выборочное пространство может быть обширнее
истинного и содержать в себе истинное как подпространство. В дальнейшем
мы будем использовать это достаточно неформальное определение выбороч
ного пространства.
Пример 2.1. Выборочное пространство для непрерывных величин. При изго
товлении резисторов важно поддерживать в заданных пределах значения R
(электрического сопротивления, измеряемого в омах) и N (максимальной те
плоотдачи, измеряемой в ваттах). Выборочным пространством для R и N явля
ется плоскость, натянутая на оси, соответствущие R и N . Так как обе вели
чины всегда положительны, то выборочным пространством является первый
квадрант этой плоскости.
я
Пример 2.2. Выборочное пространство для дискретных величин. На практи
ке точные значения R и N несущественны, если они содержатся в некотором
интервале около номинального значения (например, 99кОм < R < 101 кОм,
0.49Вт < N < 0.60Вт). В этом случае будем говорить, что резистор обладает
свойствами Rn, N n. Если значения выходят за верхнюю (нижнюю) границу,
то заменим индекс п на + (—). Следовательно, возможными значениями сопро-
16
Глава 2.
Вероятность
тивления и теплоотдачи будут .Р.- . Rn, Я+. Л '-, Nn, N+. Теперь выборочное
пространство состоит из 9 точек:
Я_ N -,
ЯП1У_,
R+ N .,
R - Nn, Я_ N +,
Rn Nn, RnN+,
R+ N„, R+ N+.
я
Зачастую особый интерес представляют одно или несколько конкретных
подпространств выборочного пространства, В частности, в примере 2.2 зна
чения R n и N n представляют случай, когда резисторы соответствуют произ
водственной спецификации. Мы можем дать подпространствам названия, на
пример А, В, . . и сказать, что если значения, полученные в результате экспе
римента, попадают в одно из таких подпространств, то наступает событие А
(или В, С ,...). Если А не осуществляется, то мы имеем дело с его дополнением,
а именно с событием А (т. е., не А). Выборочное пространство в целом соот
ветствует событию, наступающему в результате каждого эксперимента. Мы
обозначим его через Е. Далее в этой главе мы определим понятие вероятности
наступления события и приведем правила вычисления вероятностей.
2.2. Понятие вероятности
Рассмотрим простейший эксперимент, а именно бросание монеты.
Подобно задачам об игре в кости или в карты, он не имеет практического
интереса, однако полезен для дидактических целей, С какой вероятностью при
однократном бросании симметричной монеты выпадет орел? Наша интуиция
подсказывает, что такая вероятность равна 1/2. Это заключение основывается
на предположении о том, что все точки выборочного пространства (в нашем
случае есть только две точки: «орел» и «решка») равновероятны, и на соглаше
нии о том, что событие Е (здесь или «орел», или «решка») имеет вероятность
единица. Такой метод определения вероятности можно применить только к
симметричным экспериментам (в которых все точки выборочного простран
ства равновероятны) и, следовательно, он редко используется на практике.
(Однако он имеет большое значение в таких перспективных науках, как ста
тистическая физика и квантовая статистика, где равновероятность всех допу
стимых состояний является неотъемлемым постулатом.) Если не существует
подобной симметрии —что как раз соответствует случаю с обыкновенной «ре
альной» монетой —то представляется разумной следующая процедура. Пусть
в большом числе N экспериментов событие А наблюдалось п раз. Определим
Р(А) = Нгп £
N-+oo VV
(2.2.1)
как вероятность наступления события А. Это довольно неформальное частот
ное определение вероятности, достаточное для практических целей, однако оно
не является математически строгим. Один из недостатков этого определения
связан с необходимостью бесконечного числа экспериментов, что, безусловно,
2.2. Понятие вероятности
17
нельзя осуществить и даже трудно себе представить. Несмотря на то, что в
этой книге используется частотное определение вероятности, мы кратко пере
числим также основные понятия аксиоматической теории вероятностей К о л
м о г о р о в а [1]. Обычно используется следующий минимальный набор аксиом:
(a) Каждому событию А ставится в соответствие неотрицательное число —его
вероятность
Р(А) > 0.
(2.2.2)
(b ) Событие Е имеет вероятность единица
Р(Е) =
1.
(2.2.3)
(c) Если А и В являются непересекающимися событиями, то вероятность со
бытия А или В (записываемого как А + В) равна
Р(А + В )= Р(А) + Р(В).
(2.2.4)
Непосредственно из этих аксиом1 можно получить следующие свойства веро
ятностей. Из аксиом (Ь) и (с) вытекает, что
Р{А + А) = Р{А) + Р(А) = 1,
т. е.
Р(А) = 1 —Р(А).
(2.2.5)
Далее, используя аксиому (а) и приведенное выше соотношение, находим:
0 < Р{А) < 1.
(2.2.6)
Из аксиомы (с) легко получить более общее утверждение для попарно непересекающихся событий А , В у С, . . . ,
Р(А + В + С ---- ) = Р(А) + Р{В) + Р(С) + • • •.
(2.2.7)
Приведенная формула справедлива лишь в том случае, когда вероятность
определена для специального класса событий из Е , являющегося сигмаалгеброй, т. е. классом 93, для которого:
(1) Е £ Ъ3,
(2) если А £ 53, то и А £ 53,
(3) если Ai £ 53, г = 1 ,2 ,..., то и
А% £ 93.
1 Иногда определение (2.3.1) включают в качестве четвертой аксиомы.
18
Глава 2.
Вероятность
(Более подробно о свойствах вероятности см., например, в книге Гнеденко Б. В.
Курс теории вероятностей.—М.: УРСС, 2001.—Ред.) Необходимо отметить,
что для событий, объединенных логическим знаком «или», суммирование ве
роятностей таким образом возможно только тогда, когда эти события попар
но не пересекаются. Если мы имеем дело с событиями, которые таковыми не
являются, то прежде всего необходимо разложить такие события на взаимно
непересекающиеся. Пусть при бросании игральных костей А означает выпаде
ние четного числа, Б —нечетного, С —выпадение менее четырех очков, D —
не меньше четырех очков. Предположим, нас интересует вероятность события
А или С. Заметим, что события А и С пересеваются. Построим событие А и
С (записываемое как АС), а также события A D , В С и BD. Все они попар
но не пересекаются. Представим событие А или С (иногда записывается как
А + С) в виде события АС + AD + ВС. К последнему событию применима
формула (2.2.7).
Заметим, что в аксиомах теории вероятностей не уточняется метод при
писывания конкретного значения вероятности Р(А). Это делается в процессе
решения конкретной задачи.
В заключение необходимо обратить внимание на то, что смысл слова веро
ятность, часто используемого в разговорной речи, в известной степени отлича
ется или даже противоречит тому смыслу, который в него вкладываем мы. Это
субъективная вероятность: здесь вероятность события измеряется нашей верой
в его наступление. Приведем пример: «Вероятность того, что партия А победит
на следующих выборах, равна 1/3». В качестве другого примера рассмотрим
некие отпечатки ядерной фотоэмульсии, которые могут быть оставлены либо
протоном, либо пионом. Часто говорят: «С вероятностью 1/2 отпечаток был
оставлен пионом». Но с того момента как событие уже произошло и из частиц
двух типов лишь одна послужила причиной отпечатка, можно лишь утвер
ждать, что приведенное выше высказывание то ли истинно, то ли ложно.
2.3. Условная вероятность. Формула полной вероятности.
Независимость событий
Предположим, что в результате эксперимента наступило событие А. Найдем
вероятность того, что при этом наступило также событие Б, т. е. вероятность
В при условии А. Определим такую условную вероятность как
(2.3.1)
если Р(А) > 0. Отсюда следует, что при Р(А) > 0
Р (А В) = Р(А) Р{В\А).
(2.3.2)
Понятие условной вероятности имеет следующую наглядную интерпретацию
(см. рис. 2.1). Будем считать, что событие А наступило, если точка попала в
область А, и аналогично для события (и области) Б. Для точек пересечения
2.3.
Принципы теории вероятностей
19
Р и с . 2 .1 . П ояснение понятия условной вероятности.
областей наступают оба события А и В 7 т. е. осуществляется событие (AD).
Пусть площадь этих областей пропорциональна вероятностям соответствую
щих событий с одним и тем же коэффициентом пропорциональности. Тогда
вероятность события В при условии того, что наступило событие А , есть отно
шение площади А В к площади А. В частности, эта вероятность равна единице,
если А содержится в В, и равна нулю, если площадь пересечения обращается
в нуль. В последнем случае события А и В несовместны.
Используя понятие условной вероятности, можно теперь вывести формулу
полной вероятности. Рассмотрим эксперимент, приводящий к наступлению
одного из п возможных попарно непересекающихся событий
Е —А\ 4- А 2 +
Ап.
(2.3.3)
Вероятность наступления события В равна
п
P(B ) = Y ^ P (A i)P (B \A i),
i=l
(2.3.4)
что легко видеть из соотношений (2.3.2) и (2.2.7)1.
Теперь мы можем также определить понятие независимости событий. Го
ворят, что два события А и В являются независимыми, если информация о
том, что произошло событие А, не меняет вероятности события В и наоборот,
т. е. если
Р{В\А) = Р(В),
(2.3.5)
или, используя соотношение (2.3.2), если
Р {А В ) = Р{А)Р{В).
(2.3.6)
Вообще, говорят, что несколько разбиений пространства Е вида (2.3.3)
Е = А\ 4- А 2 4- • **4- А п,
Е = В г + В 2 + ••• + Вт ,
(2.3.7)
Е — Z \ 4- Z 2 4 ■• • 4 2^,
1 На самом деле формула (2.3.4) верна в том случае, когда событие А \ + ... + А п просто
содержит В , а не только в случае выполнения равенства (2.3.3).— Прим . ред.
20
Глава 2.
Вероятность
независимы, если для всех возможных сочетаний а, 8 . . . . , и выполнено усло
вие:
P (A aBf3 ■■■гш) = Р{Аа)Р{В0) ■■■Р ( г ш).
(2.3.8)
2.4. Примеры
2.4.1. Вероятность выпадения п очков при бросании двух игральных
костей
Пусть пу и п2 —количества очков, выпавших на каждой из игральных костей,
а п = п\ + п2, где Р(щ) = 1/6: i = 1,2: щ = 1.2,...,6. Поскольку резуль
таты бросания костей можно считать не зависящими друг от друга, имеем
P {jii, п,2) = Р(гц)Р(п2) = 1/36. Рассматривая, сколькими различными спосо
бами можно составить сумму п = щ + п2, получаем
Р2(2) = Р(1.1) = 1/36.
Р2(3) = Р(1,2) + Р(2.1)
Р2(4) = Р(1,3) + Р(2.2)
Р2(5) = Р (1 ,4) + Р (2, 3)
Р2(6) = Р (1 .5) + Р( 2,4)
Р2(7) = Р (1 ,6) + Р(2, 5)
Р2(8) = Р2(6) = 5/36,
Р2( 9 ) = Р 2( 5)=4/36,
Р2(10) = Р2(4) = 3/36,
Р2(11) = Р2(3) = 2/36.
Р2(12) = Р2(2) = 1/36.
=
+
+
+
+
2/36.
Р (3 ,1)
Р (3 ,2)
Р( 3,3)
Р( 3.4)
=
+
+
+
3/36,
Р (4 ,1) - 4/36,
Р( 4 , 2) + Р(5Д ) = 5/36,
Р (4 ,3) + Р(5,2) + Р( 6 , 1 ) =6 / 36 ,
Очевидно, что условие нормировки Х д =2
= 1 здесь выполнено.
2.4.2. Лотерея 6 из 49
В урне содержится 49 шариков, пронумерованных от 1 до 49. Во время лотереи
из урны последовательно вынимают шесть шариков, не возвращая ни одного
из них обратно. Вычислим Р(1), Р{2), ..., Р(6) —вероятности того, что игрок,
до начала лотереи выбравший шесть чисел из набора 1 . 2 , . . . , 49, правильно
угадал 1. 2, ... или все 6 выигравших номеров.
Для начала вычислим Р(6). Очевидно, что вероятность поставить в каче
стве первого то число, которое будет выбрано первым, равна 1/49. Если этот
шаг был удачным, то вероятность выбрать в качестве второго то число, которое
будет вторым выигрышным, есть 1/48. Отсюда можно заключить, что веро
ятность правильно угадать шесть чисел в том порядке, в котором они будут
извлечены, равна
1
43!
2.5. Залачи
21
Порядок, однако, для нас не имеет значения. Поскольку существует всего
6! возможных вариантов расположения в различном порядке шести чисел, то
мы имеем
6!43!
1
1
Эта величина является обратной по отношению к С |9 —числу сочетаний из 49
элементов по 6 (см. приложение В), поскольку все эти сочетания равновероят
ны и только одно из них соответствует выбранному набору.
Теперь мы можем утверждать, что в урне находятся два типа шариков, а
именно шесть шариков, которые интересуют игрока, так как на них нанесе
ны номера, которые он выбрал, и 43 шарика, номера которых он не выбирал.
Результатом лотереи является выборка из множества, состоящего из 49 эле
ментов, среди которых 6 одного типа и 43 другого типа. Сама выборка состоит
из шести элементов —шести шаров, вынутых из урны последовательно и без
возвращения. Такой метод выбора описывается гипергеометрическим распре
делением (см. разд. 5.3). Вероятность правильного угадывания I из 6 вынутых
номеров равна
2.5. Задачи
2.5.1. Вычисление вероятности при помощи рассуждений
от противного
В аудитории находится п студентов. Какова вероятность того, что как ми
нимум у двух из них дни рождения совпадают? Решите эту задачу, ответив
последовательно на следующие вопросы:
(a) Каково число N возможных вариантов распределения п дней рождения в
течение года (365 дней)?
(b) Чему равно число N ' возможных вариантов, для которых все п дней ро
ждения различны?
(c) Какова тогда вероятность Pdiff того, что дни рождения различны?
(d) И, наконец, чему равна вероятность Р того, что как минимум два дня
рождения совпадают?
2.5.2. Вероятность пересекающихся событий
Даны вероятности Р(Л), Р(В) и Р (АВ) ф 0 пересекающихся событий А и В.
Какова вероятность Р (А + В) наблюдения события А или В1 Для примера вы
числите вероятность того, что карта, вытащенная наудачу из обычной колоды
в 52 карты, будет либо тузом, либо бубновой масти.
22
Глава 2.
Вероятность
2.5.3. Зависимые и независимые события
Являются ли независимыми события А и В, состоящие в том, что вытащенная
наудачу из колоды карта будет либо тузом, либо бубновой масти,
(a) если используется обычная колода в 52 карты,
(b ) если в колоду добавлен джокер?
2.5.4. Дополнительное (противоположное) событие
Показать, что события А и В независимы, если А и В независимы. Исполь
зовать результаты задачи 2.5.2 для выражения Р(АВ) через Р(Л), Р (Р ) и
Р(Л Р).
2.5.5. Вероятности выбора из наборов большого и малого объема
В ящике содержится большое число (>1000) монет. Они разделены на три типа
Л, В и С, которые составляют 20%, 30% и 50% от всего количества.
(a) Каковы вероятности Р(Л), Р (Р ), Р{С) изъятия монеты типа Л, В или С,
если из ящика наудачу выбирается одна монета? Чему равны вероятности
Р (Л Р), Р(ЛС), Р (В С ), Р(ЛЛ), Р (Р Р ), Р(СС), Р(2 одинаковые монеты),
Р (2 различные монеты) при изъятии двух монет?
(b ) Чему равны эти вероятности, если в ящике содержится 10 монет (2 типа
Л, 3 типа Б и 5 типа С)?
2.6. Указания и решения
Задача 2.5.1
(a) N = 365" .
(b) N ' = 365 • 364 • .. • (365 - n + 1) .
(c)
pdiff = jV'/JV
=
364
365 - п + 1
365 ' ” '
365
1
п - 1\
365 )
(d) Р = 1 - Pm .
Подставляя численные значения, получим Р и 0.5 для п = 23 и Р « 0.99 для
п = 57.
2.6.
Указания и решения
Задача 2.5.2
Р{А + В) — Р(А) + Р(В) - Р(АВ),
Р(туз или бубна) = Р (туз) + Р(бубна) —Р{туз и бубна)
_ 4_ 13 _ 1_ _ _£
“ 52 + 52 52 “ 13'
Задача 2.5.3
<*> ™
= b Р(В) = § • р(лв) = й -
т. е. Р(АВ) = Р (А)Р(В).
(Ь) Р(Л) =
Р(В ) = н , Р(ХВ) = 1 .,
т. е. Р(АВ) ф Р (А)Р(В).
Задача 2.5.4
Р (А В ) = 1 - Р (А + В) = 1 - Р(А) - Р(В ) + Р (АВ).
Для независимых А п В имеем Р (АВ) = Р(А)Р(В). Следовательно,
Р(АВ) = 1 - Р(А) - Р(В) + Р (А )Р (В ) = (1 - Р(А)){ 1 - Р{В))
= Р (А )Р (В ).
Задача 2.5.5
(а) Р(А) = 0.2, Р(В) = 0.3, Р(С) = 0.5 ,
Р(АВ) = 2 • 0.2 • 0.3, Р(АС) = 2 • 0.2 • 0.5,
Р(ВС) = 2 - 0.3 • 0.5, Р(АА) = 0.22 , Р(В В ) = 0.32 ,
Р ^ С ) = 0.52 .
ГЬ) Р(А) = 2/10 = 0.2 , Р{В) = 3/10 = 0.3, Р(С) = 5/10 = 0.5,
Р (А т = 1 5 + 1 2
Р, А Г \ = 1 5
5 2
(
)
1 0 ' 9 + 10 9 ’
10'9 + 10'9 ’
р(ргп\ _ JL Ё , _5_ 3
*
*
10 9 + 10 9 '
p H A ) = i . i , p (BB) = i . a , p (a o = A J .
Для (а) и (Ь) имеет место
Р (2 одинаковые монеты) = Р(АА) + Р(ВВ) + Р(СС) ,
Р(2 различные монеты) = Р(АВ) + Р(АС) -Ь Р (В С )
= 1 —Р(2 одинаковые монеты) .
Глава 3
Случайные величины.
Распределения
3.1. Случайные
величины
*/
Будем теперь рассматривать не вероятность наблюдения конкретного события,
а сами события, и попытаемся найти достаточно простой способ их классифи
кации. Мы можем, к примеру, поставить в соответствие событию выпадение
«орла» число 0, а событию выпадение «решки» —1. В общем случае мы можем
классифицировать события в разбиении (2.3.3), ставя в соответствие каждому
событию Ai действительное число i. Таким образом, каждое событие можно
охарактеризовать одним из возможных значений некоторой случайной величи
ны. Случайные величины могут быть дискретными или непрерывными. Будем
обозначать их следующими символами: х, у, .., .
Пример 3.1. Дискретная случайная величина. Можно рассмотреть количе
ство монет, находящихся в обращении, как функцию от времени, прошедшего
с даты выпуска. В качестве случайной (дискретной) величины удобно исполь
зовать год выпуска., отчеканенный на каждой монете, т. е. х = . . 1 9 4 9 , 1950,
1951,...,
■
Пример 3.2. Непрерывная. случайная величина. Все измерительные и произ
водственные процессы в большей или меньшей степени несовершенны и не
точны, что приводит к колебаниям результатов, которые можно описать при
помощи одной или нескольких случайных величин. Так, значения электриче
ского сопротивления и максимума теплоотдачи, характеризующие резистор в
примере 2.1, являются непрерывными случайными величинами.
■
3.2. Распределения одномерной случайной величины
От классификации событий вернемся к анализу вероятностей. Рассмотрим слу
чайную величину х и действительное число х, которое может принимать зна
чения от —ос до +ос. Определим вероятность события х < х. Эта вероятность
является функцией от ж и называется (интегральной) функцией распределе
ния случайной величины х:
F(x) —Р(х < х).
(3.2.1)
Если величина х может принимать только конечное число значений, как, на
пример, количество очков на гранях игральных костей, то функция распре
деления будет ступенчатой функцией. Для упомянутого выше примера она
3.2. Распределения одномерной случайной величины
Р и с . 3 .1 . Ф ункция
ния д л я бросания
игральной кости.
распределе
симметричной
25
Р и с . 3 .2 . Ф ункция распределения и плот
ность вероятности для значений углового
положения часовой стрелки.
приведена на рис. 3.1. Очевидно, что функция распределения всегда монотон
но не убывает.
Из формулы (2.2.3) находим предельное значение
lim F{x) = lim Р(х < х) = Р[Е) = 1.
х — юо
(3.2.2)
х — юс
Применяя равенство (2.2.5) к формуле (3.2.1), получаем
Р(х > х) = 1 - F{x) = 1 - Р(х <
(3.2.3)
х)
и, следовательно,
Пт
ж— *•— оо
Р (х )
— lim Р(х < х) = 1 — Пт Р(х >
ж— ►— ОО
X — *■— оо
х)
= 0.
(3.2.4)
Особый интерес представляет дифференцируемая функция распределения
F(x). Первая производная функции распределения
/(* ) =
= Г'(.т)
(3.2.5)
называется плотностью распределения вероятностей случайной величины х.
Непосредственно из соотношений (3.2.1) и (3.2.5) следует, что
Р(х < а) ~ F(a) ~ (
f{x) dx,
(3.2.6)
.1 — 00
Р(а < х < 6) = f f (x) dx = F(6) - F(a),
(3.2.7)
J a
и в частности
/
со
/(ж) dx = 1.
(3.2.8)
-OO
Простейшим примером непрерывного распределения служит фиксирование
значения углового положения часовой стрелки через случайные промежутки
времени. Мы получаем плотность распределения, равную константе (рис. 3.2).
26
Глава 3.
Случайные величины. Распределения
3.3. Функции одномерной случайной величины,
математическое ожидание, дисперсия, моменты
Помимо распределения случайной величины х нас часто интересует распреде
ление некоторой функции от х. Поскольку функция от случайной величины
также является случайной величиной
У = #(х),
(3.3.1)
то функция распределения и плотность распределения вероятностей для вели
чины у определяются таким же образом, что и для х, В двух простых примерах
из предыдущего раздела с учетом определенной симметрии структуры слу
чайных величин мы смогли сразу же выписать их функции распределения. В
большинстве случаев это невозможно. Вместо этого нам приходится находить
ее из эксперимента. Зачастую вместо нахождения распределения целиком, мы
ограничиваемся определением нескольких характеризующих его параметров.
Среднее значение или математическое ожидание дискретной случайной
величины х есть сумма всех возможных значений , умноженных на соответ
ствующие им вероятности
п
Е(х) — х — ^ т , Р ( х = Xi).
i=i
(3.3.2)
Отметим, что х не является случайной величиной, а имеет фиксированное зна
чение. Математическое ожидание функции (3.3.1) соответственно определяет
ся как
п
Я{Я(х)} = ] Г H{xi)P{x = Xi).
(3.3.3)
1=1
Для непрерывной случайной величины (с дифференцируемой функцией рас
пределения) по аналогии определим1
гоо
(3.3.4)
Е(х) = х = / xf (x) dx ,
7—00
ГОО
Я{Я(х)}=/
H(x)f (x)dx.
(3.3.5)
В частности, если взять
Я(х) = (х - с)е,
(3.3.6)
то математическое ожидание этой величины
а е = Е { ( х - с ) е}
(3.3.7)
1 Во избежание возможных противоречий предполагают, что несобственные интегралы
(3.3.4) и (3.3.5) сходятся абсолютно. В противном случае считают, что математическое ожи
дание не существует. — Прим . ред.
3.3.
Функции одномерной случайной величины
27
Р и с . 3 .3 . П лотности распределения с м а
лой дисперсией (а) и с больш ой дисперси
ей (Ъ).
также будет являться важной характеристикой, которую мы назовем момен
том порядка I случайной величины х относительно точки с. Особый интерес
представляют моменты относительно среднего
Де = Е{(х - я)£}.
(3.3.8)
Очевидно, что моменты низшего порядка равны
до = 1,
Д\ —0.
(3.3.9)
Величина
д2 = сг2(х) = var(x) = 25{(х —я)2}
(3.3.10)
является моментом второго порядка и содержит информацию о среднем от
клонении величины х от ее среднего значения. Она называется дисперсией
случайной величины х.
Попытаемся теперь обрисовать практическое значение математического
ожидания и дисперсии случайной величины. Рассмотрим процесс измерения
некоторой величины х, например определение при помощи микроскопа дли
ны Хо маленького кристаллика. Под влиянием различных факторов, таких
как дефекты отдельных деталей микроскопа и ошибки наблюдения, много
кратные измерения х будут приводить к незначительно отличающимся друг
от друга результатам. Результаты отдельных наблюдений будут, однако, стре
миться сгруппироваться в окрестности истинного значения измеряемой дли
ны, т. е. при условии отсутствия систематических ошибок более вероятно по
лучить значение х, близкое к хо, нежели удаленное от него. Следовательно,
плотность вероятности для х будет иметь колоколообразную форму, как пока
зано на рис. 3.3, хотя она не обязательно должна быть симметричной. Пред
ставляется целесообразным —в особенности в случае симметричной функции
28
Глава 3.
Случайные величины. Распределения
плотности распределения —трактовать математическое ожидание (3.3.4) как
наилучшую оценку для истинного значения измеряемой величины. Интересно
отметить, что соотношение (3.3.4) является математической формой опреде
ления центра тяжести, т. е. значение х можно интерпретировать как абсциссу
центра тяжести фигуры, ограниченной осью абсцисс и кривой вероятности.
Дисперсия (3.3.10)
/
оо
(х - x)2f{x) dx,
(3.3.11)
-ОО
отвечающая формуле момента инерции, является мерой рассеяния или мерой
разброса случайной величины около ее среднего значения. Если дисперсия ма
ла, то отдельные измерения близки по значению к х (рис. 3.3а), а если она
велика, то они в большинстве своем будут удалены от среднего (рис. З.ЗЬ).
Положительное значение квадратного корня из дисперсии
a = \Лг2М
(3.3.12)
называется стандартным отклонением (иногда разбросом или рассеянием)
величины х. Так же как и дисперсия, оно является мерой среднего отклонения
результатов измерений величины х от ее математического ожидания.
Поскольку стандартное отклонение измеряется в тех же единицах, что и
величина х (в нашем примере оба измерются в единицах длины), то оно ото
ждествляется с ошибкой измерений сг(х) = Ах, Такое определение ошибки
измерений более подробно обсуждается в разд. 5.6 —5.10. Следует отметить,
что определения (3.3.4) и (3.3.10) не всегда дают способ вычисления математи
ческого ожидания или ошибки измерений, поскольку плотность вероятности,
описывающая измерения, вообще говоря, неизвестна.
Третий момент относительно среднего иногда называют асимметрией. Мы
предпочитаем в качестве асимметрии величины х определять безразмерную
величину
7 = Мз/а3.
(3.3.13)
Она положительна (отрицательна), если распределение скошено вправо (влево)
относительно среднего. Для симметричных распределений асимметрия обра
щается в нуль. Она содержит информацию о разности между положительным
и отрицательным отклонениями от среднего.
Получим теперь несколько важных свойств математического ожидания и
дисперсии. В случае когда
Я(х) = сх,
с = const,
(3.3.14)
очевидно, что
Е(сх) = сЕ(х),
<т2(сх) = с2<т2(х).
(3 .3 .1 5 )
Функции одномерной случайной величины
3.3.
29
Для дисперсии имеем:
<т2(х) —£{(х - х)2} —Е {х2
2хх 4- х2} = Е(х2) - х 2.
(3.3.16)
Теперь рассмотрим функцию
х —X
U=
(3.3.17)
<т(х) ■
Она имеет математическое ожидание
Е( и) = —^ —Е{х —х) — —~^( х —х) = О
сг(х)
ц (х )
(3.3.18)
н дисперсию
1
21
O’2(и) = -o T T ^ f t x - х)2} =
<т2 (х)
<Т2 (Х)
(Т2 (х)
= 1.
(3.3.19)
Функция и (которая также является случайной величиной) обладает доста
точно простыми свойствами, что делает предпочтительным ее использование
для более сложных вычислений. Мы будем называть такую величину (имею
щую нулевое среднее и единичную диспресию) нормированной величиной. Она
также называется стандартизованной, нормализованной или безразмерной ве
личиной.
Хотя любое распределение наиболее просто описать при помощи матема
тического ожидания, дисперсии и моментов высших порядков (действительно,
любое распределение можно полностью определить при помощи этих величин1,
см. разд. 5.5), зачастую для лучшей визуализации формы распределения удоб
но ввести следующие понятия.
Мода хт (или наиболее вероятное значение) дискретного распределения
определяется как значение случайной величины, соответствующее наибольшей
вероятности:
Р(х = х т) = шах .
(3.3.20)
Если распределение имеет дифференцируемую функцию плотности распреде
ления, то мода соответствует ее максимуму и легко определяется из условий
=
° -
<
°
<з
з -2 1 >
Во многих случаях существует единственный максимум, тогда говорят, что
распределение является унимодальным.
1 Утверждение не точное. Например, логарифмически нормальное распределение своими
моментами не определяется. Относительно того, какие распределения определяются своими
моментами, см. М. Кендалл, А. Стюарт «Теория распределений», М.: Наука, 1966. —Прим,
ред.
30
Глава 3.
Случайные величины. Распределения
f(x)
Р и с . 3 .4 . Наиболее вероятное значение
(мода) х т , среднее х и м едиана хо.ь дл я
несимметричного распределения.
Р и с . 3 .5 . М едиана и квантили д л я не
преры вного распределения.
Медиана хо.ь определяется как значение случайной величины, при котором
функция распределения равна 1/2:
F(xo.b) = Р(* < ^o.s) = 0.5.
(3.3.22)
В случае существования плотности распределения соотношение (3.3.22) при
нимает вид
/
хо.е
f (x) dx = 0.5,
(3.3.23)
-оо
т. е. медиана разделяет весь диапазон значений случайной величины на две
области, попадание в каждую из которых происходит с равной вероятностью.
Из сказанного ясно, что для унимодального распределения с непрерывной
плотностью, симметричной относительно своего максимума, значения средне
го, моды и медианы совпадают. Это, однако, не верно в случае несимметрич
ного распределения (см. рис. 3.4).
Определение (3.3.22) можно легко обобщить. Величины £ 0.25 и £ 0.75>опре
деляемые как
F (x0.2b) = 0.25,
F{x0.7b) = 0.75,
(3.3.24)
называются нижней и верхней квартилями. Подобным образом мы можем
определить децили жо.ь # 0.2 ? ■• яо.э, или в общем случае квантили хя как
F( xg) = f
f ( x ) d x = q,
(3.3.25)
J — ОО
где 0 < q < 1.
Определение квантили становится понятным из рис. 3.5. На графике функ
ции распределения F(x) квантиль х я выражается абсциссой, соответствующей
Функции одномерной случайной величины
3.3.
31
значению ординаты, равному q. Квантиль x q(q)\ рассмотренная как функция
от вероятности q, является просто обратной функцией к функции распреде
ления.
Пример 3.3. Равномерное распределение. Обсудим теперь простейшую функ
цию распределения непрерывной случайной величины. Предположим, что
плотность распределения является константой на интервале а < х < Ь и равна
нулю вне этого интервала:
f{x) — с,
f(x) = 0 ,
а < х < 6,
х < а,
х > Ь.
(3.3.26)
Из соотношения (3.2.8) имеем:
ЕЛ И
/(z ) =
>
а < х < Ь,
f{x) = 0 ,
х < а,
(3.3.27)
х > 6.
Функция распределения равна
m
=j
A
=
F{x) = 0,
sc < a,
F (a;) = 1,
ас >
a<x<b,
(3.3.28)
b.
Из свойства симметрии аргумента относительно середины отрезка получаем,
что математическое ожидание величины х должно равняться среднему ариф
метическому границ а и Ь. Действительно, из формулы (3.3.4) немедленно сле
дует, что
в д = * = r b l x i x = 5 ( 6 ^ j (i,J - -г>= Ч 5 -
<3'3'29»
Ш определения (3.3.10) получаем, что
^ 2(х) = ^ ( Ь - а ) 2.
(3.3.30)
Равномерное распределение не представляет особого практического инте
реса. Однако с ним чрезвычайно просто работать, поскольку оно является
простейшим распределением непрерывной случайной величины. Часто быва
ет полезно путем преобразования переменных свести функцию распределения
к равномерному распределению, либо, наоборот, выразить данное распределе
ние как функцию от равномерного. Этот метод широко используется в методе
Монте-Карло, рассматриваемом в главе 4.
■
32
Глава 3.
Случайные величины. Распределения
дСх)
°-Д
|
0.3
0.2
0.1
0
(0,-1)
Р и с . 3 .6 . М одель, описываемая распределением Кош и (внизу), и плотность вероят
ности для распределения К ош и (вверху).
Пример 3.4. Распределение Коши. Пусть на плоскости (ж, у) в точке (х, у) =
(0 ,-1 ) расположено орудие. Предположим, что его ствол лежит в плоскости
(х,у) и может вращаться в этой плоскости вокруг своей оси z (см. рис. 3.6).
При стрельбе угол в между стволом орудия и осью у выбирается случайно
из равномерного распределения в интервале —7г/2 < в < 7г/2, т. е. плотность
распределения для в равна
т
= -7Г•
Поскольку
d9_ _
1
dx
1 4- х2 ’
то после преобразования переменной в —►х (см. разд. 3.7) плотность распре
деления как функция от х имеет вид
9 = arctgx,
М
9(х) = dx т
1 1
= 7Г1 + X2
(3.3.31)
Распределение с такой плотностью (в нашем примере распределение на оси х
точек попадания при стрельбе) называется распределением Коши. Математи
ческое ожидание для х (главное значение интеграла) равно1
1
xdx
— 0.
1 + х1
1 В соответствии с примечанием на стр. 28 х для распределения Коши не существует. —
Прим. ред.
3.4. Д ве переменные. Условная вероятность
33
Выражение для дисперсии
°°
— оо
2
1
[°° X2 dx
х дух) ax — — /
тг J
1
------ - = —(х — arctgrc)
1 + х 1 7Г
х=оо
— оо
= — lim (х —arctg х ).
7Г х —+оо
лает в результате бесконечность. Можно сказать, что дисперсии для распреде
ления Коши не существует.
Тем не менее можно построить другую меру рассеяния случайной величи
ны. а именно полную широту полумакснмальпого уровня {ПШПУ' (см. пример
f 3 J. Функция д{х) имеет максимум в точке х = х = 0 и достигает половины
?того максимума в точках х а = —1 и хс — 1. Следовательно,
Г ~ 2
является полной широтой полумаксимального уровня для распределения КоПрнмер 3.5. Распределение Лоренца, (Брайта—Вигнера). При х = а — Ои Г =
2 мы можем переписать плотность распределения (3.3.31) для распределения
Коши в виде
, , _ 2
Г2
(3.3.32)
п Г 4(ж —а)2 + Г 2
Зга функция является нормированной плотностью вероятности для всех зна
чений а и полной широты полумаксимального уровня Г > 0. Она называет
ся плотностью вероятности распределения Лоренца или также распределения
Брайта—Вигнера и играет важную роль в физике при описании явления ре
зонанса.
■
3.4. Функция распределения и плотность распределения
вероятностей для двух случайных величин.
Условная вероятность
Рассмотрим теперь две случайные величины х и у и найдем вероятность того,
что х < х и у < у. Как и в случае с одной переменной мы предполагаем, что
существует функция распределения (см. рис. 3.7)
F(x, у) = Р(х < х, у < у).
(3.4.1)
Мы не будем здесь вдаваться в аксиоматические подробности и условия сушествования F, поскольку они всегда выполнены в случаях, представляющих
практический интерес. Если F является дифференцируемой функцией по х и
ло у, то совместная плотность распределения величин х и у равна
f ( x, y ) = -^—^-F( x, y) .
(3.4.2)
34
Глава 3.
Случайные величины. Распределения
Р и с . 3 .7 . Ф ункция распределения д л я дв ух переменны х.
Тогда имеем
ь
P(a < x < b , c < y < d ) =
f ( x, y) dу d x .
(3.4.3)
а
Часто мы сталкиваемся со следующей практической задачей. При помощи
большого количества измерений приближенно найдена функция распределе
ния F(x,y). Пусть необходимо найти плотность распределения случайной ве
личины х вне зависимости от значений, принимаемых случайной величиной
у. (К примеру, вероятность появления некоторого инфекционного заболевания
может быть задана как функция от времени и географического положения.
Для некоторых исследований зависимость от времени может не представлять
интереса.)
Проинтегрируем соотношение (3.4.2) по всему множеству значений у и по
а < х < Ь. Получим
ь />оо
Р(а < х < 6, —сю < у < ос)
/(я, у) dУ
—оо
а
Здесь
/
со
/(я , у) dу
(3.4.4)
-СО
плотность распределения случайной величины х. Она называется маргиналь
ной плотностью распределения вероятностей случайной величины х. Соот
ветственно, маргинальной плотностью распределения величины у является
функция
К у) =
/_
f ( x, y) da;.
(3.4.5)
3.5. М атематическое
ожидание, дисперсия , ковариация и корреляция
35
По аналогии с независимостью событий [см. соотношение (2.3.6)] можно
ввести понятие независимости случайных величин. Скажем, что величины х
и у независимы, если
f ( x , y ) = g(x)h(y).
(3.4.6)
Используя маргинальные распределения, мы можем также определить услов
ную вероятность для у при условии, что величина х известна, т. е.
Р (у < y < y + d y \ x < x < x + da:).
(3.4.7)
Условную плотность распределения вероятностей определим как
(3.4.8)
так что вероятность в соотношении (3.4.7) задается произведением
/(y |z)d y .
Теперь можно вывести формулу полной вероятности для распределений:
(3 .4 .9 )
Для случая независимых переменных, определенных в соответствии с вы
ражением (3.4.6), напрямую из соотношения (3.4,8) получаем
(3.4.10)
Равенство (3.4.10) естественно, поскольку в случае независимых переменных
любые ограничения, наложенные на одну из них, не дают никакой информации
о распределении вероятности для другой переменной.
3.5. Математическое ожидание, дисперсия, ковариация
и корреляция
По аналогии с соотношением (3.3.5) определим математическое ожидание
функции Я(х, у) как
ОО
ОС
(3.5.1)
Подобным образом дисперсия функции Я(х, у) определяется как
<72{Я( х, у)} = Е{[Н(х,у) - Я(Я(х,у))]2}.
(3.5.2)
36
Глава 3.
Случайные величины. Распределения
Для простейшего случая Н(х, у) = ах 4* by из соотношения (3.5.1) очевидно
следует, что
E(ax + by) = аЕ(х) + ЪЕ(у).
(3.5.3)
Рассмотрим теперь функцию
i?(x,у) = х^ут
(£, т неотрицательные целые числа),
(3,5,4)
Математическое ожидание этой функции равно (£, т )~му моменту для вели
чин х, у относительно начала координат
Хет = Е(хеут).
(3,5.5)
Если мы рассмотрим более общий случай
Я(х, у) = (х - а)1(у - Ъ)т,
(3.5.6)
то математическое ожидание
а ет = Е { ( х - а ) е( у - Ъ ) т}
(3,5.7)
будет равно (£, ш)-му моменту относительно точки (а, 6). Особый интерес пред
ставляют моменты относительно точки (Aio,Aqi)
^ т = Д { (х -А 1(У (у -А о 1 )т },
(3.5.8)
Как и в случае одной переменной, наибольшую значимость имеют моменты
низших порядков, в частности
Ноо = Аоо = 1,
Ню = Hoi = 0;
Аю = Е(х) = х,
А01 = Е( у) = у;
(3.5.9)
Ни = £ { ( х - ж)(у - у)} = cov(x,y),
Н20 = Е{(х - х)2} = а2(х),
Н02 = Е { ( у - у ) 2} = сг2(у).
Теперь мы можем выразить дисперсию функции ах 4- by в терминах этих ве
личин:
а2{ах 4- 6у) = £{[(ах 4- by) —Е{ах 4- by)}2}
= £ { [а (х - х ) + Ь ( у - у ) } 2}
= Е{а2(х - х)2 + Ъ2{у - у)2 + 2ab(x - х)(у - у)},
(3.5.10)
а2(ах + by) = а2а 2(х) + Ъ2а2(у) + 2ab cov(x, у).
3.5.
Математическое ожидание, дисперсия, ковариация и корреляция
37
Р н с . 3 .8 . П ояснение понятия ковариации м еж д у двум я случайными величинами х
г у (a) co v (x ,y ) > 0; (b) co v (x ,y ) & 0; (с) cov(x, у) < 0.
При выводе формулы (3.5.10) мы использовали соотношение (3.3.14). В качегтве другого примера рассмотрим функцию
(3.5.11)
#(х,у) = ху.
В предположении о независимости случайных величин х и у в смысле опреде
ления (3.4.6) в соответствии с формулой (3.5.1) имеем:
оо
xyg(x)h(y) d x dу
Е(х у) =
— ОО
J — ОО
х д(х) dx
У Цу) dу
(3.5.12)
— ОО
2ЛИ
Е(ху) = Е(х)Е( у).
(3.5.13)
Величины Е(х), Е(у), сг2(х), <х2(у) очень похожи на те, что были полу
чены для случая одной случайной величины, нам следует лишь пояснить
гмысл cov(x,у). Понятие ковариации имеет существенное значение для пони
мания многих последующих задач. Из определения ковариации мы видим, что
rov(x, у) положительна, если в большинстве случаев значения х > х появляются
одновременно со значениями у > у. С другой стороны, cov(x, у) отрицательна,
если преимущественно х > х влечет за собой у < у. И наконец, если знание
значения х не дает нам никакой дополнительной информации о возможном
доведении величины у, то ковариация обращается в нуль. Эти случаи проил
люстрированы на рис. 3.8.
Зачастую вместо ковариации удобнее использовать коэффициент корреля
ции
cov(x, у)
(3.5.14)
р(*>у) = сг(х)<т(у)
Обе эти величины—и ковариация, и коэффициент корреляции —являются
мерой (неизбежно достаточно грубой) взаимной зависимости случайных ве
личин х и у. Для дальнейшего исследования зависимости случайных величин
38
Глава 3. Случайные величины. Распределения
рассмотрим две нормированные случайные величины и и v, определенные в со
ответствии с соотношением (3.3.17), и найдем дисперсию их суммы, используя
формулу (3.5.9):
<t2(u + v) = <т2(u) + <r2(v) + 2p(u, v)cr(u)cr(v).
(3.5.15)
Из соотношения (3.3.19) имеем, что <r2(u) = cr2(v) —1. Следовательно,
<72(u + v) = 2(1 + p(u, v))
(3.5.16)
<t2(u —v) = 2(1 —p(u, v)).
(3.5.17)
и соответственно
Поскольку дисперсия всегда неотрицательна, т. е.
<г2 >
(3.5.18)
0,
то
(3.5.19)
- 1 < p(u,v) < 1.
Если теперь вернуться к исходным переменным х, у, то легко видеть, что
(3.5.20)
р( u,v) = р(х, у).
Таким образом мы показали, что
(3.5.21)
- 1 < р(х, у) < 1.
Изучим теперь граничные случаи ±1. Если p(u,v) = 1. то дисперсия
<т(и —v) — 0, т. е. случайная величина (u —v) является константой. Выразив
ее через х и у, имеем
х —х
о-(х)
у— у
= const.
<т( у)
(3.5.22)
Следователь но,
у
=
a
+ 6х,
(3.5.23)
где b положительно. Обратно, в случае положительной линейной зависимо
сти между х и у (типа (3.5.23), где b положительно) коэффициент корреляции
принимает значение р(х, у) —+1. Для отрицательной линейной зависимости (b
отрицательно) находим соответственно, что р(х, у) = —1. Ранее утверждалось,
что для двух независимых случайных величин х и у, т. е. таких, для которых
плотность вероятности удовлетворяет соотношению (3.4.6), ковариация обра
щается в нуль. Из формул (3.5.9) и (3.5.1) мы действительно находим, что
"ОО
Л сю
соv(x,y) = /
/ ( х -x)(y-y)g(x)h(y)dxdy
J — ОС J —OQ
= ( [
( х - x)g(x) d z ) ( [
( у - y)h(y) dy)
3.6. Многомерные случайные величины.Векторная и матричная запись
39
3.6. Многомерные случайные величины. Векторная и
матричная запись
По аналогии с соотношением (3.4.1) определим функцию распределения п слу
чайных величин Xi,Х2
F(xu x 2, ... ,жп) = Р(хх < Яь х2 < я2, ... .хп < х п).
(3.6.1)
Если функция F дифференцируема по переменным
то совместная, плот
ность распределения вероятностей случайных величин x i,, . . , xn задается ра
венством
дп
f ( x i , x 2, . . . , x n) = д~~
^ F(x 1, д2, ■• •, Хп) •
(3.6.2)
Плотность распределения вероятностей одной переменной хг, т. е. маргиналь
ная плотность распределения, определяется как
/
РОО
СО
••■ /
-ос
f ( x i , X 2 , - . - , x n) dxi ■*-dxr_i dxr+i ■■-с!яп.
(3.6.3)
J — ос
Если H(xi,x2, . . . , хп) —некоторая функция п переменных, то математическое
ожидание Н равно
(3.6.4)
£ ? { Я ( хх , х 2 . . . - , хп ) }
/
/»00
ОС
Н(хх,Х2,... , xn)f(xi,X2~ ■■■, хп) d^i ■• ■d:rn .
/
-ос
J
— оо
Для Я(х) — хг получаем:
/
/
по
Роо
...
-оо
со
xrf (x i , x 2, . . . , x n) dxi - - - dxn,
J — оо
(3.6.5)
Xr^r(^r) (1яг.
-оо
Случайные величины называются независимыми, если
(3.6.6)
/(хг,а:2 ,•.. ,хп)
5i (x i )52(
x 2) ••совместную
-5п(х„).
По аналогии с соотношением
(3.6.3)= можно
найти
маргинальную
плотность распределения вероятностей £ из п переменных1, интегрируя соот
ношение (3.6.2) по оставшимся п — £ переменным:
/
Роо
ОО
•••/
-оо
J
f { x i , x 2, ... ,x n) dx^+i • •• &хп.
(3.6.7)
— оо
Эти £ случайных величин независимы, если
______________
g{x г, я2. . . . , хе) - дх{х1)д2{х2) ■• *ge{xi).
(3.6.8)
1Без ограничения общности мы можем принять за эти переменные случайные величины
40
Глава 3.
Случайные величины . Распределения
Моментом порядка
■■■Д п) относительно начала координат называет
ся математическое ожидание функции
Я = х[1х?/ •• х £ \
>*ib...u = E { 4 1*£ ■■■&)■
В частности имеем
Аюо. -. о =
Е М
- хи
А0 10 ...0 = Е ( х 2 ) = %2 ,
(3 .6 .9 )
^ооо..д —Е(хп) —х п.
Момент относительно точки (х\, Х2 , . . . , х п) определяется, соответственно, как
t3...en = E{(xi - x i f 1(х2 - х2У2 • • • (х„ - х„)с }.
(3.6.10)
Дисперсии случайных величин х* таковы:
М200...0 =
-E?{(xi -
J l ) 2 } = <T2 ( X i ) ,
М020...0 = Я{(х2 - х2)2} = о-2 (х 2),
(3.6.11)
М000...2 = Е{(хп - х п)2} = <х2(хп).
Момент, для которого ii — £j = 1, tk = 0 (г ф к ф j), называется ковариацией
между случайными величинами х? и Xj
C-ij —COv(Xi,X,-) = E{{Xi
Xi^(x.j
T^')}.
(3.6.12)
На практике оказывается полезным представить п случайных величин
xi,x2, ... ,хп в качестве компонент вектора х в n-мерном пространстве. Тогда
мы можем записать функцию распределения (3.6.1) в виде
F = F(x).
(3.6.13)
Плотность распределения вероятностей (3.6.2) перепишется как
дп
х) - ^-—5------ОХ\ UX 2 * * ■ОХп
(3.6.14)
Тогда математическое ожидание функции Н(х) есть просто
Е{Н(х)} =
J H(x)f(x)dx.
(3.6.15)
3.7. Зам ена
переменных
41
Нам хотелось бы теперь записать дисперсии и ковариации с помощью матри
цы1. Такая матрица будет называться ковариационной
(
С =
Сц
С\2
С21
С22
V Сп1 сп2
с1п ^
С2п
спп
(3.6.16)
/
Элементы c»j этой матрицы определяются согласно формуле (3.6.12), диаго
нальные элементы являются дисперсиями Сц = er2(x^). Ковариационная ма
трица, очевидно, симметрична, поскольку
Cij = Cji.
(3.6.17)
Если мы запишем математические ожидания переменных
тора
Е(х) = sc,
также в виде век
(3.6.18)
то увидим, что каждый элемент ковариационной матрицы
C ij
=
E{(xi - Xi)(xj - Xj)}
есть математическое ожидание произведения j-ro элемента вектора-строки
(х —ж)т и г-го элемента вектора-столбца (х —sc), где
X —
, Х21■• • *
),
X—
Таким образом, ковариационную матрицу можно записать в виде
С = Д { ( х - * ) ( х - * ) т }.
(3.6.19)
3.7. Замена переменных
Как было отмечено в разд. 3.3, функция случайной величины сама является
случайной величиной, т. е.
у = уМНайдем теперь плотность распределения вероятностей у (у) в случае, когда из
вестна плотность распределения вероятностей /(х ), а функция у = у(х) явля
ется взаимнооднозначной. Очевидно, вероятность д(у) dy того, что у попадет
в малый интервал dy, должна быть равна вероятности f(x) dx того, что х по1 Более подробно о матричной записи смотреть в приложении А.
42
Глава 3. Случайные величины. Распределения
падет в «соответствующий интервал» dx. т. е. f(x) dT = g(y) dу. Это показано
на рис. 3.9. Интервалы dx и dу связаны соотношениями
dУ =
dx
dу
dx или dx —
d У*
dx
dу
Тогда плотность распределения д(у) будет равна
д (у)
=
dx
,f(x).
dУ
(3.7.1)
Отсюда непосредственно видно, что д(у) определена лишь в случае однознач
ной функции у(х), поскольку только тогда однозначно определена производная
в соотношении (3.7.1). Для тех функций, для которых это не верно, например
для у = у/х, необходимо порознь рассматривать отдельные однозначные куски
функции, т. е. у = +у/х. Равенство (3.7.1) гарантирует также, что плотность
распределения вероятностей переменной у нормирована единицей:
ОО
ГОО
/ -ос g{y) dy= J—ОО f ( x ) d x = l.
В случае двух независимых случайных величин х, у замена переменных на
новые
u = u(x,y),
V = v(x,y)
(3.7.2)
может быть проиллюстрирована аналогичным образом. Необходимо найти ве
личину J, которая устанавливает связь между f(x,y) и д(щу):
g(u,v) = f { x , у) J
(3.7.3)
На рисунке 3.10 на плоскости (ж, у) показаны две линии, соответствующие по
стоянным значениям u = const и v —const. Они ограничивают элемент поверх
ности d ^ для преобразованных переменных и и ь\ соответствующий элементу
dxdy для исходных переменных.
Эти кривые не обязаны быть прямыми линиями. Но поскольку dА является
«бесконечно малым» элементом поверхности, то его можно рассматривать как
параллелограмм. Координаты угловых точек а, b и с этого параллелограмма
имеют вид:
xa = x{u,v),
хь = х(щ v 4- dr),
хс = ж(гг 4- dл, г?),
= у(«, г),
уь —у(и, v 4- dr),
ус = у{и + dr, г).
Уа
Мы можем разложить функции в последних двух строках в ряд и получить
в первом приближении:
хь - x(u,v) 4- ^ dr,
д
уь = у{и. v) + ^ du,
хс ~
yc - y { u , v ) + | | d и.
х (щ у
) +
| “ du,
43
<и
3.7. Замена переменных
х
Ршс. 3 .9 . Зам ена перем енной х на у
плотности распределения вероятно-
Р и с. 3.10. Зам ена переменны х х, у на
и , V.
—:::шадь параллелограмма равна абсолютному значению следующего опредетжтеля:
dА =
1
1
1
Ха
%ь
хс
дх
Уа
Уъ
Ус
дх
ду
ди
dudv ~ J (
) dudv,
\u,vj
ду
OV
(3.7.4)
не имеет значения, т.к. в выражении (3.7.3) используется модуль. Опре
делитель
J
я,У
и, v
(3.7.5)
*^эывается Якобианом (определителем Якоби) для замены переменных
■I 7.2).
В общем случае для п случайных величин х = (хь Х2 , . . . , хп) и замены
У1 =yi(x),
У2 = У2 (х) ,
(3.7.6)
Уп = Утг(х),
плотность распределения вероятностей в новых переменных определяется из
'«^енства
9(У) =
(3.7.7)
44
Глава 3. Случайные величины. Распределения
где Якобиан равен
(3.7.8)
Необходимым условием существования функции д(у) в форме (3.7.3) опятьтаки является взаимная однозначность всех функций, осуществляющих замену
переменных.
3.8. Линейные и ортогональные преобразования
переменных. Формула преобразования ковариационных
матриц и дисперсий
На практике мы часто имеем дело с линейными преобразованиями перемен
ных. Основной причиной этого является то, что с такими преобразования
ми чрезвычайно легко работать, и потому мы постараемся аппроксимировать
остальные преобразования линейными, используя метод разложения в ряд Тей
лора.
Рассмотрим г линейных функций от п переменных х — (хь х2, ... ,хп):
У1 = a i + £ п х1 4“ ^12х2 4- • • • + £lnxn>
У2 = &2 + ^21х1 + ^22х2 + ***+ ^2nxm
(3.8.1)
уг — dr 4- tr1 X1 + tr2 X2 H- ***4- ^rnxn?
или в матричной записи
у —Тх 4- a .
(3.8.2)
Математическое ожидание вектора у находим из обобщения формулы (3.5.3)
Е( у) = у = Т х + а.
(3.8.3)
Отсюда и из соотношения (3.6.19) получаем ковариационную матрицу для век
тора у,
Су =
£{(у - у)(У - у)т}
= Е{(Тх + а — Т х — а)(Тх + а — Т х — а)т }
= Е{Т(х - ж)(х - ж)т Г т }
= ТЕ{(х - х ) ( х - ж)т }Тт ,
Су = ТСхТ т.
(3.8.4)
3.8. Линейные и ортогональные преобразования переменных
45
Равенство (3.8.4) представляет собой широко известную формулу преобразова
ния ковариационных матриц и дисперсий. Предположим, что были вычисле
ны математические ожидания %. Пусть также для вектора х известны ошибки
г е. стандартные отклонения или дисперсии) и ковариации. Необходимо найти
:шибки произвольной функции у(х). Если ошибки вектора х сравнительно ма
лы. то плотность распределения вектора х принимает большие значения лишь
в небольшой (размером порядка стандартного отклонения) окрестности точки
X. Выполним тогда для функций разложение в ряд Тейлора:
Уi = Уг(ж) +
дуг
(x i
дх\ X—X
- X i ) + ------ 1-
dm
, d x n J X—X
(xn
Xfi)
+ члены более высокого порядка,
жли в матричной записи
у
= у(ж) 4- Т(х —х) + члены более высокого порядка,
(3.8.5)
где
пренебречь членами более высокого порядка и подставить матрицу Т
первых частных производных в соотношение (3.8.4), то получим формулу пре
образования ковариационной матрицы. В частности мы видим, что не только
ошибки (т. е. дисперсии) вектора х, но также и ковариации вносят значитель
ный вклад в ошибки вектора у, а именно в диагональные элементы матрицы
Су. Если не принимать этого во внимание при преобразовании дисперсий, то
результат будет неверным.
Ковариациями можно принебречь лишь тогда, когда они так или иначе
обращаются в нуль, т. е. в случае независимости или некоррелированности
исходных случайных величин х. В этом случае Сх сводится к диагональной
матрице. Тогда диагональные элементы матрицы Су имеют простой вид
Е сли
а
(3.8.7)
Если теперь ошибкой соответствующей величины назвать стандартное от
клонение, т. е. положительное значение квадратного корня из дисперсии, и
46
Глава 3.
Случайные величины. Распределения
использовать для нее символ А , то выражение (3.8.7) немедленно сведется к
формуле
(3 .8 .8 )
Дщ =
широко известной как правило преобразования дисперсий. Необходимо под
черкнуть, что это выражение не верно для случая не равных нулю ковариаций.
Это проиллюстрировано на следующем примере.
Пример 3.6. Преобразование дисперсий и ковариаций. В декартовой системе
координат находится точка (х, у), координаты которой нужно определить.
Определение осуществляется при помощи устройства, ошибка которого по у в
три раза превосходит ошибку по х. Измерения координат х и у осуществляют
ся независимо друг от друга. Следовательно, мы можем взять ковариационную
матрицу равной (с точностью до умножения всех элементов матрицы на один
и тот же коэффициент) матрице
С~ X „у
1
V 0
0
9
Вычислим теперь ошибки (т. е. ковариационную матрицу) в полярных коорди
натах
_______
г У (х2 4- у 2 ) .
ср = arctg — .
Матрица преобразования (3.8.6) равна
х
г
Т=
А
и
г
X
— ту
г
Для упрощения численных расчетов рассмотрим только точку (1,1). Тогда
1
1
02 \Д
Т =
и, следовательно.
Сrip —
1
75
_!
5
4
\
2
4
75
5
2
Теперь мы можем вернуться к исходной декартовой системе координат
х — г cos <д,
у = г simp,
используя преобразование
Г' =
cos р
—тsm р
i
4C2 -l
sin (р
r cos if
_L
-0
V2
1
3.8. Линейные и ортогональные преобразования переменных
slzk
47
и предполагалось, мы получили, что
-глл бы вместо этого мы использовали формулу (3.8.8), т. е. если бы мы пре
небрегли ковариациями при замене г, ц> на х, у, то мы бы получили
ТГ-: отличается от исходной ковариационной матрицы. Этот пример подчерзэзает важное значение ковариаций, поскольку невозможно изменить ошибки
измерений просто путем прямой и затем обратной замены координат.
■
В заключение обсудим специальный вид линейных преобразований. Рас:v отрим ровно п функций у от п переменных х. В частности возьмем a = О
1 соотношении (3.8.2). Тогда имеем
(3.8.9)
У = Дх,
rzr Л —квадратная матрица. Потребуем теперь, чтобы преобразование (3.8.9)
оставляло неизменными длины векторов
(3.8.10)
i~ 1
г=Х
Используя соотношение (А.1.9), мы можем записать:
ут у = (Дх)т (Дх) = хт Я т Я х = хт х.
гто означает, что
R T R = L
zth
в покомпонентной записи
-
ГО ,
2 _, г*кгц = 5ке= <
, х
i-
1
1фк,
е = к_
(3.8.11)
1
Преобразования вида (3.8.9), удовлетворяющие условию (3.8.11), называются
:?тогочолъными. Рассмотрим теперь определитель матрицы перехода
щ
D =
* *’
Г21
г 12
Г22
Пп
1'2п
Гп 1
Гп 2
’’'
^тгп
48
Глава 3.
Случайные величины . Распределения
и найдем его квадрат. В соответствии с правилами вычисления определителей
из соотношения (3.8.11) получаем, что
1
0
■■■ О
О
0 *** 1
т. е. D = ±1. Определитель D является якобианом преобразования (3.8.9):
(3.8.12)
Умножим систему уравнений (3.8.9) слева на R T и получим, что
B Ty = R r Rx.
Согласно соотношению (3.8.11), это выражение сводится к равенству
(3.8.13)
х = Д т у.
Преобразование, обратное к ортогональному преобразованию, задается просто
транспонированной матрицей перехода. Оно само также является ортогональ
ным.
Важное свойство любого линейного преобразования вида
Уг = Щ Х 1 + г 1 2х 2 + • ■• + r i n x n
состоит в следующем. Если выполнено условие
п
то путем построения дополнительных переменных У2 , Уз , ■• •, Уп такого же вида
можно получить ортогональное преобразование вектора х в вектор у.
3,9. Задачи
3.9.1. Среднее, дисперсия и асимметрия
для дискретного распределения
Бросание игральной кости приводит к следующим возможным результатам:
Xi = 1,2, ...,6 . Для совершенно симметричной игральной кости имеем р* =
P(xi) — 1/6, г = 1,2 ,.. ,6. Найти математическое ожидание х, дисперсию
<72(х ) = Д2 и асимметрию у для распределения случайной величины х.
(а) для совершенно симметричной игральной кости,
(Ь) для игральной кости, у которой
1
6 ’
1
6 ’
1
Р2
=
= 12'
_ 3
Р5 =
" 12’
1
=
Р6 ~
12
3
12
3.9.
Задачи
49
1*9.2. Среднее, мода, медиана и дисперсия для
непрерывного распределения
Рассмотрим плотность вероятности f(x) для треугольного распределения,
ж^ееюшего такой вид, как показано на рис. 3.11, и определяемого следующим
ж тазом:
f(x) = 0 ,
х < а,
х > 6,
2
а < х < с,
/(Х) = № - » ) ( с - а ) (Х с < х <Ь.
Найти среднее значение х, моду хт , медиану хо.ъ и дисперсию а2 для этого
распределения. Для простоты положить с — 0 (что соответствует замене х
=£ х = х —с), В явном виде выписать результат для симметричного случая
i — —b и для случая а — —26.
1*9.3. Преобразование одномерной случайной величины
В
приложении D показано, что
/
оо
exp(-:r2/2)cLr = л/27г.
-оо
Используя преобразование у ~ т /а , показать, что
ехр(—х 2/2а2) do: = сга/2 тг.
f(x)
Рнс. 3.11. П лотность
распределения
вероятно
стей
дл я
треугольного
распределения.
50
Глава 3.
Случайные величины . Распределения
3.9.4. Преобразование многих переменных
Плотность двумерного нормального распределения (см. разд. 5.10) имеет вид
(a) Определить маргинальные плотности распределения вероятностей / ( х ),
/(у), используя результаты задачи 3.9.3.
(b ) Являются ли х и у независимыми?
(c) Преобразовать распределение /(х , у) путем замены переменных
и = х cos ф 4- у sin 0,
v = у cos ф — х sin ф.
(Система координат гх, v имеет то же начало координат, что и система х,
у, но первая повернута относительно второй на угол ф.)
Указание: Показать, что такое преобразование является ортогональным, и
использовать соотношение (3.8.12).
(d) Показать, что и и v являются независимыми случайными величинами толь
ко в случае, если ф = 0°, 90°, 180°, 270° или если сгх = сту = ст.
(e) Рассмотреть случай ax = ау = а, т. е. плотность
Преобразовать это распределение путем перехода к полярным координатам
г, </>, найти маргинальные плотности распределения вероятностей g(r) и
д(ф) и показать, что т и ф являются независимыми.
3.9.5. Формула преобразования ковариационных матриц и дисперсий
Период Т колебаний маятника вычисляется по формуле Т — 2т: yJTJg^ где
£ — длина маятника, а у —ускорение свободного падения. Вычислить д и
А д , используя измеренные значения £ = 99.8 см, А£ = 0.3 см, Т — 2.03 с,
А Т — 0.05 с и предположив, что измерения I и Т проводились незави
симо.
3.9.6. Ковариация и корреляция
Обозначим массу и скорость объекта соответственно за m и v, а ошибки их
измерения за А т = ^<т2(тп) и Av — y/ a2(v). Предположим, что измерения
проводились независимо, т. е. cov(m, г) = 0. Более того, пусть известны отно
сительные ошибки измерений, т. е.
A m / m = a,
A v / v = Ъ.
3.10.
Указания и решения
51
(a) Рассмотреть импульс р — mv и кинетическую энергию Е = \ m v2 объек
та и вычислить <72{р), <т2(Е), cov(p, Е) и корреляцию р(р, Е ). Исследовать
р(р, Е) для частных случаев a ~ 0 и Ь = 0.
Указание: построить векторы ж = (m, v) и у — (р,Е). Затем аппроксими
ровать у — у{х) линейным преобразованием и в заключение вычислить
ковариационную матрицу.
(b) Для случая когда известны измеренные значения Е, р и их ковариационная
матрица, вычислить массу m и ее ошибку с помощью формулы преобра
зования ковариационных матриц и дисперсий. Использовать результаты
пункта (а) для проверки полученных результатов. Помните, что вы полу
чите правильный результат только в том случае, если в формуле преобра
зования ковариационных матриц и дисперсий будете учитывать cov(p, Е).
3.10. Указания и решения
Задача 3.9.1
а)
6
*=
<?2{х )
=
г=1
6
=
6
1
-
01
б" = 3 '5,
?—1
х ) 2Рг
г— 1
= 1(2.52 + 1.52 + 0.52 4- 0.52 + 1.52 + 2.52)
О
= ^(6.25 + 2.25 + 0.25) = 2.92,
6
^ 6
ИЗ = ^ 2 ( х г - x f p i = - ]Г (г - 3.5)3 = 0,
г=1
7 =
х
° г -1
Из/o'3 = 0.
= -1 (2 + 2 4- 3 4- 8 + 15 + 18) = 4,
<72 ( х ) =
1Z
-1 (2 •З2 + 1
1Z
38
Иг =
12
1
22 + 1 • Г
+ 3 • I 2 + 3 • 2 2)
= 3.167,
у ^ ( - 2 • З3 - 1 ■23 - 1 • I3 + 3 • Г + 3 • 23) =
7 = р з / a 3 = -3 /3 .1 6 7 3/2 = -0 .5 3 3 .
- 3,
52
Глава 3.
Случайные величины. Распределения
Задача 3.9,2
Для a — —6:
ж = 0,
хо.5 = 0,
Ь2
сг2(х) = —.
о
Для а = —26:
х = - \ = -0.336 ,
Жо.5 = 6(V5 - 2) = -0.276 ,
О
^
■
Задача 3.9.3
ехр(—у2/2) = e x p (-# 2/2 a 2) ^ - = аех р (—а;2/2).
Задача 3.9.4
(а) fx(x) —
/ 1ж2
7Г<ГЭ eX4 ' 2 Z
Ш
\/2ж<Ту 6ХР (
(b) Да, поскольку выполнено соотношение (3.4.6).
(c) Преобразование может быть записано в виде
Д=
= Д|
cos ф sin ф
—sin ф cos ф
Оно ортогонально, поскольку R TR = /. Следовательно,
аг
2тГorд,(Xу
2о-х 2о-2
(u cos 0 —г; sin ф):
1
ехр
2а?
2тг(тх(Ту
ехр
g(u,v) = f ( x, y ) =
(и в т ф + vcos ф):
2ау
и2 cos2 ф Н- v2 sin2 ф — 2uv cos фsin ф
2тгсгх(Ху
Ы
u2 sin2 ф Н- v2 cos2 ф Н- 2uv cos фsin ф^
^
;•
ехр
(d) Для </> = 90°: cos^ = 0, sin<£ = 1, и вычисления для других углов аналс
гичны. Выражение для g(u,v) раскладывается в произведение двух мне
жителей, т. е. g(u,v) = gu(u)gv(v).
При ох — cry = a :
1
ехр
27ГСГ2
и2 Н- г;2
3.10. Указания и решения
(в)
J=
дх
дг
дх
дф
ду
дг
ду
ду>
д(г, ф) = г/(х , у) =
cos ф
—rs in ^
2lГСГ2
9*(ф) = 2h
f 0
= 4Ы
-
5
= г,
а;2 4- у 2
ехр
/•2*
5г(г) = / 5(г, 0)
sin ф
rcos^>
2а2
ехр
27 H J2
2ст2 Г
г
ехР
2а2
dr
гюр( ~ & ,
“ V ( - £ ) “"
К (-й ];-г
50", 0) = 9г(г)дф(ф),
следовательно, г и ф независимы.
Задача 3.9.5
Ао£
л о 99.8
о
= 47Г2^ = 4п2 2 ^ 2 см - с 2 = 956.09 см -с 2,
£
= £ - • ■ “ с - 2'
8тг2£
дд_
ОТ
< ^ = ( ! ) W +( е т )
Т 3 = —942 см *с 3,
AT2 = 2™ cm2 -C- 4,
= 47.19см ■с~2.
Задача 3.9.6
а) у = Тх,
ду\
дх\
Т —
ду 2
\ дх\
Су = Т С хТ т
dyi \
дх 2
ду2
дх 2 )
ТП
“ U ”2 mv
dp
dm
dE
dm
a тг
dp \
/
_ / V
7П
dv
\
\
v
2
mv
dE
dv )
0
Ь2т;2
v
т
(а2 + b2)m 2v2 ( |а 2 + b2)m 2vs
( |а 2 + 62)га2г;3 ( |а 2 + 62) т 2г;4
1 2
mv
53
54
Глава 3. Случайные величины. Распределения
cov(p,Е) _
( | а 2 + b2)m 2v3
\ j (а2 + 62) ( |а 2 + б2)
Для а = 0 или 6 = 0 получаем, что р = 1. (В этом случае либо ш, либо v
определены однозначно. Следовательно, между Е и р существует некото
рое соотношение.) Если же а, 6 ф 0, то имеем р ф 1; например, для a = 6
получаем p — 3 /vTO(b) m = \p 2! E ,
v = E/2p,
_
/
(a2 + t>2)pl
(a2 + 2b2)Ep \
J
Ьу ~ \ (a2 + 2b2)Ep (a2 + 462) £ 2 ’
m = Ту,
^
^ dm d m ^ _ / dm d m \ _ f P
p2 \
= \ W i ’ d m ) ~ \ d P d E J ~ U ’ " 2Ё 2 / ’
Cm = a 2(m) = T C y T T
_ ( p
P2 \ (
" \ E ' ~ 2 E 2) {
(a2 + b2)p2
( a 2 +2b2)Ep
(a 2 + 2b2)Ep ^
( a 2 + 4b2)E 2 )
Глава 4
Моделирование случайных чисел на
компьютере. Метод Монте-Карло
4.1. Случайные числа
До сих пор в этой книге мы рассматривали результаты наблюдений случайных
величин, не уделяя особого внимания методам их получения. Однако во многих
приложениях полезно иметь последовательность значений некоторой случайно
распределенной величины х. Поскольку часто требуется проводить обработ
ку большого количества таких случайных чисел, то очень удобно иметь их в
дрямом доступе на компьютере. Корректный метод моделирования случайных
чисел должен был бы заключаться в обработке какого-либо случайного про
цесса, например в измерении промежутков времени между моментами распада
в радиоактивном источнике и занесении на компьютер результатов этих изме
рений. На практике, однако, случайные числа почти всегда вычисляются непо
средственно на компьютере. Поскольку при этом генерация чисел происходит
:трого детерминированным образом, то значения, полученные в результате, в
действительности не только не являются случайными числами, но могут быть
даже точно предсказаны. Поэтому они называются псевдослучайными.
В настоящее время расчеты при помощи случайных чисел составляют
хновную часть всех компьютерных вычислений в процессах планирования и
:денки результатов эксперимента. На компьютере можно смоделировать осохнности статистического поведения данных, заложенные как в природе самого
эксперимента, так и появляющиеся в результате ошибок измерения. Использо
вание в компьютерных программах случайных чисел часто называется мегпо::м Монте-Карло.
Мы начнем эту главу с дбсуждения представления чисел на компьюте
ре (см. разд. 4.2). поскольку это необходимо для понимания последующих
рассуждений. Предметом разделов 4.3 —4.7 является хорошо изученный ме
тел моделирования равномерно распределенных случайных чисел. В разд. 4.8
дредставлена программа на языке FORTRAN, осуществляющая эту процеду
ру. Разделы 4.9 и 4.10 посвящены моделированию случайных чисел, имеющих
ггоизвольное распределение, и особенно распространенному случаю нормальзт распределенных величин. В последних двух разделах содержатся примеры
ж^осуждается применение метода Монте-Карло в численном интегрировании
жмоделировании.
Во многих примерах и упражнениях мы будем моделировать реализации
дтучайных величин методом Монте-Карло и затем анализировать их. Таким
хразом мы будем располагать компьютерной лабораторией, дающей нам воз
можность по отдельности изучать влияние различных смоделированных оши:«:к измерений на результаты эксперимента.
56
Глава 4. Случайные числа. Метод Монте-Карло
4.2. Представление чисел на компьютере
Для большинства приложений не важен используемый при вычислениях метод
представления чисел. Однако он может иметь решающее значение для свойств
случайных чисел, порожденных на компьютере. Мы ограничимся двоичным
представлением, которое сегодня используется практически на всех компью
терах. Элементарной единицей информации является битп1, который может
принимать либо значение 0, либо 1. Физически он реализуется при помощи
двух различных электромагнитных состояний определенных компонент ком
пьютера.
Пусть для представления целого числа в распоряжении имеется к бит. Для
кодировки его знака достаточно одного бита, оставшиеся fe—1 бит используются
для двоичного представления модуля числа в виде
а = a (fc- 2)2fc“ 2 + a (fc~3)2fc“ 3 -|------ 1-
21 + a(0)2°.
(4.2.1)
Здесь каждый коэффициент
может принимать значения только 0 или 1 и
может быть представлен единичным битом.
Для неотрицательных целых чисел двоичное представление имеет вид:
0 0 -* -0 0 0 = 0
0 0 ■-001
-
=
1
00 - - -010 = 2
00
* * *
011
=
3
Для кодировки знака можно было бы просто использовать первый бит и пред
ставлять соответствующие отрицательные числа в том же виде, что и поло
жительные, заменив значение 0 первого бита на 1. Это привело бы, однако, к
двум различным представлениям нуля: либо +0, либо —0. В действительности
для отрицательных чисел используется «дополнительное представление»:
11***111 == - 1
11
*
*
110
=
-2
11
*
*
101
=
-3
Используя к бит, таким образом можно представить все целые числа из
интервала
—2fc_1 < х < 2fc_1 - 1.
(4.2.2)
На большинстве компьютеров восемь бит сгруппированы в один байт. Для
представления целых чисел обычно используются четыре байта, т. е. к = 32,
1 Сокращение от binary digit (двоичный знак).
4.2. Представление чисел на компьютере
57
2k~l — 1 = 2147 483 647. На многих миникомпьютерах доступны только два
байта, к = 16, 2к~1 —1 = 32 767. При разработке программ для моделирования
случайных чисел необходимо принимать во внимание'ограничение (4.2.2).
Перед тем как перейти к описанию представления на компьютере дробных
чисел, рассмотрим конечные десятичные дроби, которые могут быть записаны
различными способами, к примеру, число
х = 17.23 = 0.1723 *102,
или в общем виде х = М • 10е. Величины М и е называются, соответствен
но, мантиссой и показателем степени (экспонентой). Экспоненту можно вы
брать таким образом, чтобы все ненулевые цифры в мантиссе оказались спра
ва от десятичной запятой, а на первом месте после десятичной запятой стояло
ненулевое число. Если для представления числа М мы располагаем п деся
тичными разрядами, то т = М *10п будет целым. В нашем примере п = 4 и
т = 1723. Таким образом десятичная дробь d представляется двумя целыми
числами т и е.
Представление дробей в двоичной системе счисления происходит совершен
но аналогичным образом. Число раскладывается в произведение
х = М - 2е,
(4.2.3)
используя мантиссу М и экспоненту е. Если для представления мантиссы
включая знак) в распоряжении имеется пт бит, то при ее помощи можно
выразить целое число
т = М - 2Птп~х,
_ 2 Пт” 1 < т < 2Пт_1 - 1.
(4.2.4)
Если экспонента вместе со знаком представима при помощи п е бит, она охва
тывает интервал
—2Пе < е < 2П- - 1.
(4.2.5)
Для представления числа с плавающей точкой обычно используются 32 бита,
жз которых пт = 24, как правило, употребляются для представления мантиссы
ж пе = 8 для экспоненты. Для вычислений чисел с плавающей точкой с более
высокой точностью используются 64 бита.
Для чисел с плавающей точкой, представимых на компьютере, ограничение
4.2.2) уже не действует, для них имеет место более слабое ограничение
2emin < \х\ < 26тах.
(4.2.6)
Злесь emin и етах определяются согласно неравенствам (4.2.5). Если для предпавления экспоненты (включая знак) в распоряжении имеется восемь бит, то
= 27 — 1 = 127. Следовательно, будем иметь ограничение |а;| < 2127 «
1.7 ■1038.
58
Глава 4. Случайные числа. Метод Монте-Карло
При вычислениях с использованием чисел с плавающей точкой существен
ное значение имеет понятие относительной точности их представления. Су
ществует фиксированное число двоичных знаков, соответствующее фиксиро
ванному числу десятичных разрядов, используемых для представления ман
тиссы М. Если за а мы обозначим наименьшую возможную мантиссу, то два
числа х\ и Х2 еще можно рассматривать как различные в таком представле
нии, если
х\ = х = М • 2е,
Х2 — {М -4- а) • 2е.
Абсолютная точность представления х соответственно равна
А х = х\ —х2 = а • 2е
и зависит от экспоненты числа х. Относительная точность
А х __ а
х
М
напротив, не зависит от х. Действительно, если для представления мантиссы
в распоряжении имеется п двоичных знаков, то М ~ 2П, поскольку экспонента
выбирается таким образом, чтобы все п разрядов мантиссы были полностью
использованы. Наименьшая возможная мантисса равна а = 2°, поэтому отно
сительная точность представления числа х составляет 2~п.
4.3. Линейные конгруэнтные датчики
Поскольку, как уже упоминалось, компьютеры работают в строго детермини
рованном режиме, то все (псевдо)случайные числа, смоделированные на ком
пьютере, в самом общем случае являются функцией всех предыдущих (псев
до) случайных чисел1
X j +1 =
.. ,ii)-
(4.3.1)
Программы для генерации случайных чисел называются датчиками случай*
ных чисел.
Наиболее широко известный алгоритм основывается на следующем пра
виле:
xj+i = (a x j 4- с) mod т.
(4.3.2
Все величины в формуле (4.3.2) являются целыми числами. Датчики, в ко
торых используется это правило, называются линейными конгруэнтными дат
чиками (ЛКД). В соотношении (4.3.2) символ mod т (вычет по модулю щ
означает, что выражение, стоящее до этого символа делится на т и берета
только остаток от деления, например, б mod 5 = 1. Любое случайное числа
1 Поскольку числа, являющиеся псевдослучайными, строго говоря, не случайны, то вмеся
v мы будем использовать обозначение х.
4.4. Мультипликативные линейные конгруэнтные датчики
59
полученное при помощи линейного конгруэнтного датчика в соответствии с
правилом (4.3.2), зависит только от числа, непосредственно ему предшество
вавшего, и констант а (коэффициента) ^ с (сдвига) и т (модуля). Если заданы
эти три константы и начальное значение хо, то определена бесконечная после
довательность случайных чисел xq, ад, ... .
Последовательность, очевидно, является периодической. Длина максималь
ного периода равна т. Для вычислений может использоваться лишь частная
подпоследовательность, длина которой мала по сравнению с длиной периода.
Теорема (о максимальном периоде линейного конгруэнтного датчика с с ф 0).
Линейный конгруэнтный датчик с параметрами т } а. с и х о имеет период
т тогда и только тогда, когда
(a) с и т не имеют общих делителей;
(b) b = а —1 кратно р для всех простых чисел р, являющихся делителями т;
(c) если т кратно 4, то и b кратно 4 •
Доказательство этой теоремы, так же как и теорем из раздела 4-4? можно
найти , к примеру, в книге КНУТА [2].
Простым примером является случай с = 3 , а = 5, m = 16. Лег
ко можно подсчитать, что при xq = 0 получится последовательность
0. 3, 2, 13, 4, 7, 6, 1, 8, И , 10, 5. 12, 15, 14, 9, 0, ... . Поскольку период может
достигать т только тогда, когда в действительности последовательность при
нимает все т возможных значений, то выбор начального значения xq неважен.
4.4. Мультипликативные линейные конгруэнтные
датчики
Если в соотношении (4.3.2) положить с = 0, то алгоритм упростится до
Xj+i — (axj) mod т.
(4-4.1)
Датчики, основывающиеся на этом правиле, называются мультипликативны
ми линейными конгруэнтными датчиками (МЛКД). Вычисления становятся
немного короче, а потому быстрее. Однако значение, в точности равное нулю,
в этом случае не может быть получено (за исключением непригодной после
довательности 0 ,0 ,...). Кроме того, период становится более коротким. Перед
тем как привести для этого случая теорему о максимальной длине периода,
введем понятие примитивного элемента по модулю числа т.
Пусть а —целое число, не имеющее с т общих делителей (за исключением
единицы). Рассмотрим все а, для которых аА mod т = 1 для некоторого целого
А. Наименьшее значение А, для которого это соотношение верно, называется
порядком числа а по модулю т. Все значения а, имеющие одинаковый макси
мально возможный порядок А(т), называются примитивными элементами
до модулю т.
60
Глава 4. Случайные числа. Метод Монте-Карло
Теорема (о порядке А(т) примитивного элемента по модулю т ) . Д л я каждого
целого е и простого числа р
А(2) = 1;
Л(4) = 2;
А(2е) = 2е" 2, е > 2;
А(ре) = Ре-1(р —1)> Р > 2.
(4.4.2)
Теорема (о примитивных элементах по модулю ре). Число а является прими
тивным элементом по модулю ре тогда и только тогда, когда
а
a
a
a
a
нечетно, ре = 2;
mod 4 = 3 , ре = 4;
mod 8 = 3,5, 7, ре = 8;
mod 8 = 3 ,5 , р = 2 , е > 3 ;
mod р ф 0,
mod р ф 1, р > 2, е = 1,
q все простые делители числа р —1;
а mod р ф 0, ар~1 mod р2 ^ 1,
mod р ф 1,
р > 2, е > 1,
все простые делители числа р —1.
.
Для больших значений р примитивные элементы должны определяться при
помощи компьютерных программ на основании этой теоремы.
Теорема (о максимальном периоде для мультипликативных линейных кон
груэнтных датчиков). Максимальный период мультипликативного линейного
конгруэнтного датчика с параметрами т, а, с = 0, хо равен А(т). Он дости
гается, если коэффициент а является примитивным элементом по модулю
т, а начальное значение хо и число т не имеют общих делителей (за исклю
чением единицы).
Мультипликативные линейные конгруэнтные датчики действительно часто
используются на практике. Прикладное значение имеют два случая выбора
модуля т.
'
(i) т = 2е: В этом случае т — 1 можно положить равным наибольшему цело
му числу, представимому на компьютере. Согласно соотношениям (4.4.2),
достигаемая максимальная длина периода будет равна т /4.
(п) т = р: Если т является простым числом, то в соответствии с соотноше
ниями (4.4.2) может достигаться период, равный m —1.
4.5. Качество мультипликативного линейного
конгруэнтного датчика (М ЛКД). Спектральный
критерий
Очевидно, что при моделировании случайных чисел основная цель заключа
ется не только в достижении максимально возможного периода. Он легко до
стигается последовательностью 0 , 1 , 2 , . . т —1, 0 ,1 ,... . Намного более важно,
Качество МЛКД. Спектральный критерий
4.5.
m
д
7, а =
3
7
-- 1
-- 1
-- 1
-- [
-- 1
-- 1
--
6
5
—
4
—
3
—О
2
—
о
—
—
о
о —
—
с
—
А
1 —
0
—
о
—
__ 1
__ 1
__ 1
__ 1
__ 1
__ 1
__
3
4
5
V
с1 1 2
6
7
X
*)+,
=
61
Р и с . 4 .1 . Д иагр ам м а рассеяния д л я пар точек (4.5.1) при
a = 3, га = 7.
чтобы отдельные элементы в периоде следовали друг за другом в «случайном»
порядке. Прежде всего выбирают модуль т , затем в соответствии с соотноше
ниями (4.4.3) подбирают коэффициент а, обеспечивающий максимальный пе
риод. После этого в виде компьютерных программ создают датчики, заданные
параметрами a, m и с = 0, и при помощи статистических критериев проверяют
случайность полученных чисел. В общем виде критерии, применимые и к этой
конкретной задаче, будут обсуждаться в разд. 8. Спектральный критерий был
специально разработан для исследования случайных чисел, в частности для
^явления неслучайных зависимостей между соседними элементами последо
вательности.
В качестве простого примера рассмотрим случай а = 3 , т = 7 , с = 0,
zr = 1 и получим последовательность 1, 3, 2, 6, 4, 5, 1, . . . . Объединим теперь
средние числа в пары
( Xj , X j + i ) ,
j
=
0, l , . . . , n - 1.
(4.5.1)
Зпесь n — период, который в нашем примере равен n = m — 1 —6. На рис. 4.1
пары чисел (4.5.1) представлены в виде точек в двумерной декартовой системе
впординат. Отметим, что они, к удивлению, образуют регулярную решетку.
Удивление, однако, до некоторой степени уменьшится, если мы рассмотрим
хэе характерные особенности алгоритма (4.3.2):
: Все координаты Xj являются целыми числами. Однако среди всех допу
стимых значений 1 < Xj < п существует только п2 пар чисел (4.5.1), у
которых оба значения являются целыми числами. Они располагаются на
решетке, образованной горизонтальными и вертикальными прямыми. Рас
стояние между двумя соседними прямыми равно единице.
62
Глава 4. Случайные числа. Метод Монте-Карло
(и) Существует всего п различных пар чисел (4.5.1), поэтому в действитель
ности занятыми оказывается только часть из всех п2 точек, упомянутых
в пункте (i).
Перейдем теперь от целых чисел х3 к числам
Uj — Xj / m
(4.5.2)
0.< Uj < 1.
(4.5.3)
со свойством
Для простоты предположим, что последовательность xq. x i , . . . имеет макси
мально возможный для мультипликативного линейного конгруэнтного датчи
ка период т . Пары
(uj, Uj+1),
j = 0 ,1 ,... , m - 1,
(4.5.4)
лежат в квадрате со стороной единичной длины. Поскольку х3 являются целы
ми числами, то расстояние между горизонтальными и вертикальными линиями
решетки, на которых лежат точки (4.5.4), равно 1 /т . Однако далеко не все из
этих точек заняты. Можно построить конечное семейство прямых, проходящих
через те точки, которые действительно заняты. Рассмотрим теперь расстояние
между соседними прямыми этого семейства и будем искать семейство, для ко
торого это расстояние максимально. Обозначим это максимальное расстояние
через &%.
Если расстояния между соседними прямыми решетки для всех семейств
примерно равны, то мы можем быть уверены, что в единичном квадрате
получили максимально равномерное распределение занятых узлов решетки.
Поскольку для полностью заполненной решетки (из ш2 точек) это рассто
ние равно 1 /т , то для равномерно занятой решетки с т точками мы получ"
расстояние, равное d,2 « т Г 1//2. Для решетки с очень неравномерным расп
делением мы получим существенно большее значение d<i > m -1/2.
Если теперь рассмотреть не только пары (4.5.4), но и наборы из t чисел
(iij ,
t
i ))
(4.5.01
то видно, что соответствующие точки принадлежат семействам гиперплоск
стей размерности (t —1) в t-мерном кубе со сторонами единичной длины,
вайте, как и раньше, изучим расстояние между соседними гиперплоскости
семейств. Найдем семейство с наибольшим расстоянием между гиперплос
стями и обозначим это расстояние через dt. Ожидается, что для равномер
распределенных точек (4.5.5) оно будет равно
dt ^ ш " 1^ .
(4.5.
Если же решетка неравномерная, то
dt >
.
(4.5.
4.5. Качество МЛКД. Спектральный критерий
63
Рис. 4.2.‘ Диаграмма рассеяния пар точек (4.5.4) для небольших значений а и т .
Варианты (4.5.6) и (4.5.7) показаны на рис. 4.2. Обычно пытаются получить
наиболее равномерную решетку. Нужно было бы отметить, что расстояние ме
жду узлами решетки составляет как минимум величину (4.5.6). Следователь
но, низшие десятичные разряды случайных чисел не являются случайными,
скорее они отражают структуру решетки.
Из теоретических соображений можно получить верхнюю границу для ми
нимально возможного периода решетки
dt > d* = ctm _1/t.
(4.5.8)
Величина ct —константа порядка единицы. Ее численные значения равны [2]:
С2 = (4 /3 )-1' 4,
с3 = 2 - 1/6,
с4 = 2 - У \
с6 = (64/3)“ 1/12,
с7 = 2“ 3/7,
с8 = 2-1/2.
С5 = 2 - 3/ 10,
(4.5.9)
Тогда спектральный критерий может быть применен следующим образом.
Для заданных значений (т,а) модуля и коэффициента мультипликативного
линейного конгруэнтного датчика при помощи компьютерного алгортима [2]
определяются значения dt (m, а) для небольших £, к примеру, для t = 2 ,3 ,..., 6.
Строится статистика критерия
а(т'°)= кг>
1
<4-6Л0>
н датчик считается приемлемым, если £t (m, а) не превышает некоторой за
данной границы. В таблице 4.1 представлены результаты исследований, про
веденных ЛЕКЮЙЕ [3]. Здесь модули т являются простыми числами, близки
ми к максимальным целым числам, представимым 16 и 32 битами. Коэффи
циенты—примитивные элементы по модулю т. Они удовлетворяют условию
64
Глава 4.
Случайные числа. Метод Монте-Карло
Таблица 4.1. Удобные значения м одуля m и коэф ф ициента
а дл я мультипликативны х линейны х конгруэнтны х датчиков,
работаю щ их на ком пью терах с 32-битной (16-битной) целочи
сленной ариф метикой.
16 бит
32 бита
т
2 1 4 7 483
2147483
2147483
2 1 4 7 482
2147482
2147482
647
563
399
811
801
739
а
т
а
39 373
40 014
40 692
41546
42 024
45 742
32 749
32 363
32 1 4 3
32119
31727
31 6 5 7
162
157
160
172
146
142
a < л/ m (см. разд. 4.6). Простые числа были выбраны таким образом, чтобы
а не было существенно меньше, чем у т , но ограничение на ( т , а) из табл. 4.1
по-прежнему имеет место: St(m,a) > 0.65, t = 2,3, — 6.
4.6. Реализация и совместимость мультипликативного
линейного конгруэнтного датчика
Под реализацией алгоритма понимается его представление в виде компьютер
ной программы для определенного типа компьютера. Если эта программа лег
ко может быть перенесена на компьютер другого типа и дает на нем (что
наиболее существенно) те же самые результаты, то говорят, что такая про
грамма совместима. В этом разделе мы приведем совместимую реализацию
мультипликативного линейного конгруэнтного датчика, осуществленную Вичмаином и Хиллом [4], а также Л екюйе [3].
Программа, реализующая схему (4.4.1), безусловно совместима, если вычи
сления осуществляются только с целыми числами. Если на компьютере для
представления целых чисел имеется к бит, то доступными являются все числа
из интервала между —т —1 и т для т < 2к~1.
Выберем теперь коэффициент а, удовлетворяющий условию
а2 < 7П,
(4.6.1)
и положим
q — т div а,
г = т mod а,
(4.6.2)
так, что
m = aq-\-r.
(4.6.3)
Выражение т div а, определенное в соотношениях (4.6.2) и (4.6.3), равно целой
части от частного т /а . Вычислим теперь правую часть в выражении (4.4.1),
4.6.
Реализация и совместимость МЛКД
65
опуская индекс j и замечая, что [(xdiv q)m] mod m — 0, поскольку х div q явля
ется целым:
.
[ax] mod m — [ax — (x div q)m] mod m
= [ax —(x div q)(oq 4- r)] mod m
= [a\x —{x div q)q} — (x div q)r) mod m
= [a(x mod q) ~ (x div q)r] mod m.
(4.6.4)
Поскольку всегда 0 < x < m, то
a(x mod q) < aq < m,
(4.6.5)
(x div q)r < [(aq -1- r) div q)r —ar < a2 < m.
(4.6.6)
Таким образом оба члена в квадратных скобках в последней строке соот
ношения (4.6.4) меньше т , поэтому значение выражения в скобках остается в
пределах между —т и т.
Вычисление выражения (4.6.4) можно реализовать с помощью программы
на языке FORTRAN, состояшей из трех строчек, в которых все переменные
являются целыми:
К = IX/IQ
IX = I A * ( I X - K * I Q ) - K * I R
IF(IX.LT.O)
IX=IX+M
Необходимо отметить, что при делении двух целых чисел в языке FORTRAN
результат сразу представляется в виде целой части от частного. Следователь
но, первая строчка дает в результате х div q, а последняя ax mod т.
Программа 4.1 выдает в результате частную подпоследовательность длины
N из случайных чисел. При каждом вызове подпограммы генерируется новая
частная подпоследовательность. Период всей последовательности составляет
т —1 —2 147483 562. Все вычисления осуществляются только в целочисленной
арифметике, обеспечивая тем самым совместимость программы. Значения на
выходе, однако, являются величинами с плавающей точкой, поскольку делятся
на т и. следовательно, соответствуют равномерному распределению на отрезке
между 0 и 1.
Часто возникает потребность на некотором этане прервать вычисления, в
которых задействовано большое количество случайных чисел, а позднее про
должить их, начав с того же самого места. В этом случае можно считать дан
ные и сохранить последнее вычисленное (целое) случайное число прямо перед
тем, как выполнить прерывание, а позднее использовать это число для моде
лирования следующего случайного числа. В специальной терминологии такое
число называют начальным значением датчика.
Иногда желательно иметь возможность создавать непересекаюшиеся част
ные подпоследовательности случайных чисел не одну за другой, а независимо
друг от друга. Это можно реализовать, например, выполнив одновременно на
нескольких компьютерах отдельные части большой задачи на моделирование.
бб
Глава 4. Случайные числа. Метод Монте-Карло
В качестве начальных значений для таких частных подпоследовательностей
можно использовать элементы совокупной последовательности, находящиеся
друг от друга на расстоянии, превышающем длину любой частной подпосле
довательности. Такие начальные значения можно определить, даже не рас
сматривая совокупную последовательность целиком. Из соотношения (4.4.1)
следует, что
Xj+n = (anXj) mod m = [{an mod m)x3] mod m.
(4.6.7)
Л е к ю й е [3] предлагает полагать n = 2d и выбирать некоторое начальное зна
чение x q . Выражение a2 mod m можно вычислить, возведя число а в квадрат
d раз по модулю т. Затем, согласно формуле (4.6.7), подсчитать х п. Анало
гичным образом можно получить Х2 п, тзп* - • •• Необходимо отметить, что для
этой процедуры недостаточно 32-битной целочисленной арифметики; вместо
нее нужно использовать 64-битную точность.
Программа 4-1. Подпрограмма RNMLCG. Мультипликативный линейный кон
груэнтный датчик для моделирования равномерно распределенных случайных
чисел
К о м а н д а в ы з о в а : call
RNMLCG(и,N)
Входной ПАРАМЕТР: N— количество случайных чисел
Выходной п а р а м е т р : U—массив, содержащий на Nпервых местах
случайные числа
К о м м е н т а р и и : Команда вызова CALL RNMSIN(ISEED) инициализирует
последовательность случайных чисел с начальным значением ISEED.
Команда вызова CALL RNMS0T(ISEED) возвращает вызывающей программе
в виде результата для дальнейшего использования в качестве начального
значения параметр ISEED —последнее выданное случайное число.
SUBROUTINE RNMLCG(U,N)
IMPLICIT DOUBLE PRECISION (A-H ,0-Z )
DIMENSION U(N)
PARAMETER (M=2147483563, IA=40014, IQ=53668, IR=12211)
PARAMETER (XMINV=4.656613D-10)
DATA IX /123456/
С В ы чи слен ие N случ ай н ы х ч и с е л
DO 10 1 = 1 , N
k=ix/ iq
IX=IA*(IX-K*IQ)-K*IR
IF (IX.LT.0) IX=IX+M
U(I)=DBLE(IX)*XMINV
10 CONTINUE
RETURN
4.7. Объединение нескольких М Л К Д
67
С З адан и е н ач ал ь н ого зн а ч ен и я
ENTRY RNMSIN(ISEED)
IX=ISEED
RETURN
С Вывод н а ч а л ь н о г о зн а ч е н и я
ENTRY RNMSOT(ISEED)
ISEED=IX
RETURN
END
Мы рекомендуем всякий раз, когда позволяют возможности программиро
вания, при каждом вызове программы моделировать относительно большое
количество случайных чисел (Л7 > 1) и затем их обрабатывать, поскольку
время вычислений, затраченное на однократный вызов подпрограммы, иногда
может быть больше, чем время, израсходованное на несколько арифметических
действий по моделированию одного случайного числа.
4.7. Объединение нескольких мультипликативных
линейных конгруэнтных датчиков
Поскольку максимально возможный период мультипликативного линейного
конгруэнтного датчика равен т — 1, а т < 2к~г — 1, где к —число битов,
имеющихся в распоряжении на компьютере для представления целых чисел,
то при помощи одного мультипликативного линейного конгруэнтного датчи
ка можно получить лишь относительно короткий период. В и ч м а н н и Хилл
[4], а также Д е к ю й е [3] предложили метод объединения нескольких мульти
пликативных линейных конгруэнтных датчиков, который дает возможность
достигать очень длинных периодов. Мы будем использовать этот метод в каче
стве основополагающего принципа нашей программы, приведенной в разд. 4.8.
Методика базируется на двух следующих теоремах.
Теорема (о сумме дискретных случайных величин, одна из которых имеет дис
кретное равномерное распределение). Если x i,... ,Х£ являются независимыми
случайными величинами, которые могут принимать только целочисленные
значения, и если
имеет дискретное равномерное распределение вероятно
стей
d
то случайная величина
(4.7.1)
имеет такое же распределение.
68
Глава 4.
Случайные числа. Метод Монте-Карло
Вначале приведем доказательство для £ — 2, используя обозначения
min(x2 ) — a, max(x2 ) = b. Имеем:
оо
Р(х —п) =
Р(х 1 4- Х2 = гг 4- kd)
к= О
Ь
= ^
Р(х 2 = i)P(xi = (п —г) mod d)
г—a
— о=|.
г— а
Для £ = 3 введем сначала переменную х'г — xi 4- Х2 , которая равномерно рас
пределена на множестве точек 0 ,1 ... d —1, и тогда сумма х^ +хз, в которой есть
только два слагаемых, будет иметь то же распределение. Для £ > 3 обобщение
происходит очевидным образом.
Теорема (о периоде семейства датчиков). Рассмотрим случайные величины
х^г, порожденные датчиком j с периодом. p j} га. е. датчик генерирует по
следовательность х7(о,х^д.... ,Xj.pj_1. Рассмотрим теперь £ датчиков j =
1, 2 ,..., £ и последовательности длины £
X» = {xi,„X2 .i,.--,x*,i},
г = 0 ,1 ,... .
(4.7.2)
Их период р равен наименьшему общему кратному периодов отдельных дат
чиков Р1,Р2,--чРгДоказательство следует напрямую из очевидного факта, что р кратно
каждому pj.
Определим теперь максимальное значение периода р. Если у £ отдельных
мультипликативных линейных конгруэнтных датчиков в качестве значений мо
дулей выступают простые числа rrij, то их периоды равны pj = rrij — 1 и,
следовательно, они четны. Поэтому имеем
Р<
-1 )
2с-1
(4.7.3)
Равенство достигается, если величины (rrij — 1)/2 не имеют общих делителей.
Первую теорему из этого раздела можно теперь использовать для постро
ения последовательности случайных чисел с периодом, заданным согласно со
отношению (4.7.3). Для начала строится целочисленная величина
е
Zi =
В - 'г 1X3,г
mod (mi - 1).
(4-7.4)
Перемена знака в (4.7.4), которая упрощает построение датчика, не про
тиворечит условию (4.7.1), поскольку вместо £ 2 ,^ 4 , • • • можно было бы также
4.8. Программа м о д е л и р о в а н и я
равном ерно распред еленн ы х случа й н ы х чисел
использовать переменные х 2 —
нимать значения
Zi
— —£ 4 ,
69
Величина Zi может при
G { 0 , 1 , . . . , mi - 2 } .
(4.7.5)
Переход к величинам с плавающей точкой
(4,7.6)
дает последовательность случайных чисел в интервале 0 < щ < 1 .
4.8. Программа моделирования равномерно
распределенных случайных чисел
При разработке программы моделирования равномерно распределенных слу
чайных чисел с большим периодом мы можем теперь использовать методы,
описанные в разделах 4.6 и 4,7. Здесь мы потребуем, чтобы компьютер вы
полнял действия в целочисленной арифметике при помощи 32 бит. Объединим
два мультипликативных линейных конгруэнтных датчика с т 1 = 2147 483 563,
ai — 40014, mo = 2147483 399, a<i — 40 692. Числа (mi - 1 )/2 и (m 2 —1)/2 не
имеют общих делителей. Поэтому в соответствии с формулой (4.7.3) период
объединенного датчика равен
р = (mi - 1)(m 2 - 1)/2 и 2.3 ■1018,
Абсолютные значения всех целых чисел, встречающихся при вычислениях, не
превышают 231 —85. Полученные в результате перехода к величинам с плава
ющей точкой числа и принимают значения в интервале 0 < и < 1 . Значения
О и 1 нельзя получить, даже если для представления мантиссы в распоряже
нии имеется более 23 бит, что почти всегда, соответствует случаю представле
ния чисел с плавающей точкой при помощи 32 бит. Л екюйе [3], написавший
PASCAL-версию программы, подверг ее результаты для заданных значений
m i,m 2 ,a i ,a 2 проверке с помощью спектрального и многих других критериев.
Он определил, что результаты программы удовлетворяют всем их требова
ниям.
Программа 4.2. Подпрограмма RNECUY. Объединенный датчик случайных чи
сел Лекюйе с очень большим периодом
К оманда вызова : CALL RNECUY(и, N)
Входной ПАРАМЕТР: N—количество случайных чисел
Выходной параметр : U—массив, содержащий на N первых местах
случайные числа
К омментарии : Команда вызова CALL RNESIN(ISEED1,ISEED2)
инициализирует датчики из двух компонент с начальными значениями
ISEED1, ISEED2. Команда вызова CALL RNES0T( ISEED1, ISEED2)
возвращает для дальнейшего использования в качестве начальных
значений последние смоделированные этими двумя датчиками числа.
70
Глава 4.
Случайные числа. Метод Монте-Карло
SUBROUTINE RNECUY(U,N)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION U(N)
PARAMETER (Ml=2147483563,M1MIN1=2147483562, IA1=40014,
+
IQ1=53668,IR1=12211)
PARAMETER (M2=2147483399,IA2-40692, IQ2=52774, IR2=2791)
PARAMETER (XM1INV=4.656613D-10)
DATA IX1.IX2 /123456, 654321/
DO 10 1=1,N
С Порождение целого случайного числа XI при помощи первого МЛКД
K=IX1/IQ1
IX1=IA1*(IX1-K*IQ1)-K*IR1
IF (IX1.LT.0) IX1=IX1+M1
С Порождение целого случайного числа Х2 при помощи второго МЛКД
K=IX2/IQ2
IX2=IA2*(IX2-K+IQ2)-K*IR2
IF (IX2.LT.0) IX2=IX2+M2
С Объединение
IZ=IX1-IX2
IFCIZ.LT.1) IZ=IZ+M1MIN1
С Нормировка и преобразование к формату числа с плавающей точкой
U(I)=DBLE(IZ)+XM1INV
10 CONTINUE
RETURN
С Задание начального значения
ENTRY RNE2I N( ISEED1 ,ISEED2)
IX1=ISEED1
IX2=ISEED2
RETURN
С Вывод начального значения
ENTRY RNE20T(ISEED1, ISEED2)
ISEED1=IX1
ISEED2=IX2
RETURN
END
На рисунке 4.3 показано различие между простым мультипликативным ли
нейным конгруэнтным и объединенным датчиками. Для простого мультипли
кативного линейного конгруэнтного датчика все еще можно распознать некую
структуру на диаграмме рассеяния для пар чисел (4.5.4), хотя для этого нуж
но увеличить масштаб по оси абсцисс в 1000 раз. Соответствующая диаграмма
для объединенного датчика, напротив, выглядит совершенно неструктуриро
ванной. Для каждой диаграммы моделировался миллион пар случайных чисел.
На диаграммах представлены лишь узкие полосы у левой границы единичного
квадрата.
4.9. Моделирование случайных чисел,имеющих произвольное распределение
(а)
Uul
71
СЬ)
Рис. 4.3.
Диаграмма, рассеяния д л я пар чисел (4.5.4), смоделированны х (а) муль
типликативным линейным конгруэнтны м датчиком RNMLCG и (Ь) объединенны м д а т
чиком RNECUY.
Для моделирования непересекающихся частных подпоследовательностей
можно использовать два метода:
(i) Для получения пар начальных значений для каждой частной подпосле
довательности применить к обоим мультипликативным линейным конгру
энтным датчикам метод, определяемый уравнением (4.6.7) с одним и тем
же значением п.
(И) Существенно легче использовать одно и то же начальное значение для всех
частных подпоследовательностей в первом мультипликативном линейном
конгруэнтном датчике. А во втором мультипликативном линейном конгру
энтном датчике для первой частной подпоследовательности использовать
произвольное начальное значение, для второй частной подпоследователь
ности —следующ ее случайное число из второго мультипликативного ли
нейного конгруэнтного датчика, и т. д. Таким образом можно получить
частные подпоследовательности, которые, не пересекаясь, достигают дли
ны (mi —1 ).
4.9. Моделирование случайных чисел, имеющих
произвольное распределение
4.9.1. Моделирование методом обращения функции распределения
Если х является случайной величиной, имеющей равномерное распределение
с плотностью
f(x) — 1,
0 < х < 1;
f (x) —0,
х < 0,
х > 1,
(4.9.1)
72
Глава 4.
Случайные числа. Метод Монте-Карло
а у —некоторая случайная величина с плотностью распределения вероятностей
д{у)л то преобразование (3.7.1) сводится к равенству
д(у) dу = dx.
(4.9.2)
Используем функцию распределения G(y), которая связана с д(у) соотноше
нием dG(y)/dy = д(у), и перепишем выражение (4.9.2) в виде
dz = д(у) dу = dG(y),
(4.9.3)
или после интегрирования
x = G(y) = Г
g(t)dt.
(4.9.4)
J — СО
Это уравнение имеет следующее значение. Если случайная величина х рав
номерно распределена на отрезке между 0 и 1 и функция х = G(у) имеет
обратную функцию
у = G_ 1 (x),
(4.9.5)
то полученная таким образом случайная величина у имеет плотность распре
деления вероятностей д(у). Взаимосвязь между ними изображена на рис. 4.4а.
Вероятность получения случайного числа х, лежащего в интервале между х и
x+dx, равна вероятности попадания значения у(х) в интервал между у и y+dy.
Iх = G(y)
J__ L
У1 Уг
Уп
(Ь )
Р и с . 4 .4 . Зам ена равномерно распределенной случайной величины х на величину
у с ф ункцией распределения G(y). В еличина у м ож ет быть непреры вной (а) или
дискретной (Ь).
Соотношение (4.9.4) также можно использовать для моделирования вели
чин с дискретным распределением вероятности. На рис. 4.4Ь приведен при
мер для этого случая. Случайная величина у может принимать значения
4.9.
Моделирование случайных чисел , им ею щ их произвольное распределение
73
Уг-У2 , •. • iVn с вероятностями P(yi), Р(у2), • • •, Т*(Уп)- Функция распределения,
заданная согласно соотношению (3.2.1). равна G(y) = Р (у < у). Построенная
в соответствии с этим равенством ступенчатая функция х = G(y) принимает
значения
г
хз = G{yj) = Y Р Ы ’
/с=1
(4-9-6)
которые лежат в интервале между 0 и 1. Таким образом можно смоделиро
вать случайные числа, имеющие дискретное распределение G(y), имея случай
ные числа, равномерно распределенные на отрезке между 0 и 1. В зависи
мости от интервала с номером j, в который попадает случайная величина х,
jj_ i < х < Xj, моделируется число yj.
Пример 4.1. Экспоненциально распределенные случайные числа. Пусть необ
ходимо смоделировать случайные числа, имеющие плотность распределения
вероятностей
—е~1/т, t > 0 ,
О,
t < 0.
9(t) =
(4.9.7)
Такая плотность распределения описывает время t распада радиоактивных
ядер, существующих в момент времени t = 0 и имеющих среднее время жизни
г. Функция распределения имеет вид
1
X = G(t) = - /
g(t') dt' = l - е - ‘/ т.
(4.9.8)
Т Jt'= О
В соответствии с соотношениями (4.9.4) и (4.9.5) можно получить экспонен
циально распределенные случайные числа t, смоделировав сначала случайные
числа, равномерно распределенные на отрезке между 0 и 1 , и найдя затем
обратную функцию t = G_ 1 (x), т. е.
t = —т 1п (1 —х).
Поскольку 1 —х также равномерно распределена на отрезке между 0 и 1 , то
достаточно вычислить
t — —т 1пх.
(4.9.9)
Пример 4.2. Моделирование случайных чисел, имеющих распределение Брай
та-Вигнера. Для моделирования случайных чисел у, имеющих плотность рас
пределения Брайта—Вигнера (3.3.32)
9^
= жГ 4(у - а)2 + Г 2 '
74
Глава 4. Случайные числа. Метод Монте-Карло
поступим согласно указаниям из разд. 4.9-1. Выпишем функцию распределения
1 = ОШ = У
9Ш i y = ^
£
Г2
4(» - а)’ + Л &У
и проведем интегрирование путем замены
2( у - а )
и= — -— ,
,
2
dtt = — dt/.
Таким образом,
р в ~ 2 ( у —а ) / Г*
-1
-I
х = G(j/) = - /
— — 2 du = - [arctgu]l(£ £ ,/r
тг Je=-oo
1 + w2
тг
00
_ arctg2(y - a)/Г
1
тг
+ 2'
Используя обратное преобразование* получаем:
2{у - а) / Г = tg |тг ( х -
=
I ,
(4.9.10)
tg f
Если х —случайная величина, равномерно распределенная в интервале
0 < х < 1, то у имеет распределение Брайта—Вигнера.
■
Пример 4.3. Моделирование случайных чисел, имеющих треугольное распре
деление. Для моделирования случайных чисел у, имеющих треугольное рас
пределение, как и в задаче 3.9.2, выпишем функцию распределения
0,
У < а,
(у - а ) 2
ПУ) = <
(Ь —а) (с — а)
.
(У - Ь) 2
(Ь — а)(Ь —с) ’
\
а < У < с,
с < у <Ь,
Ь<у .
1,
В частности, имеем
с —а
Пс) =
Ь — а*
Обратное преобразование для х = F(y) дает
у = а + >/(6 —а)(с —а)х
при х < (с —а)/{Ь —а),
у — Ъ— \ / ( Ь— а)(Ь - с)(1 - х) при х > (с - а)/(Ь - а).
Если случайная величина х равномерно распределена в интервале 0 < х < 1,
то у имеет треугольное распределение.
■
4.9.
Моделирование случайных чисел, имеющих произвольное распределение
75
4.9.2. Моделирование случайных величин при помощи метода
просеивания фон Неймана
Для применения метода, изложенного в предыдущем разделе, требуется, чтобы
была известна функция распределения х — G(y). а также чтобы существовала
и была известна функция, обратная к ней. Зачастую бывает известна только
плотность распределения вероятностей д(у). Тогда можно использовать метод
просеивания1 ф о н Н е й м а н а , который мы продемонстрируем на простом при
мере, прежде чем описать его в общем виде.
Пример 4.4. Равномерное распределение на полукруге. В качестве элементар
ного примера реализации метода просеивания смоделируем случайные числа,
имеющие плотность распределения вероятностей
Г (2 /ж В ? )^В ? -у* ,
1 О,
\ y \ <R,
М > R.
Вместо того чтобы пытаться отыскать и обратить функцию распределения
G{y), смоделируем пары случайных чисел (у*, и*). Здесь у* равномерно распре
делена на интервале допустимых значений для переменной у , —R < у < R, а щ
равномерно распределена на отрезке, в котором принимает значения функция
с (у), 0 < и < R. Для каждой пары проверим, верно ли, что
Ui > g{у*)-
(4.9.12)
Если это неравенство выполнено, случайное число у* отбросим. Тогда множе
ство случайных чисел у^, которые не будут отвергнуты, будет иметь плотность
распределения д(у), поскольку каждое из них было принято с вероятностью,
пропорциональной д(у*).
■
Метод,проиллюстрированный на примере4.4, легко можно интерпре
тировать геометрически. Для моделирования случайных чисел в интервале
£ < у < Ь с плотностью д(у) нужно рассмотреть на отрезке а < у < b кривую
и = д{у)
(4.9.13)
z константу
и — d, где
d > g m&x<
(4.9.14)
которая больше либо равна максимальному значению функции д(у) на этом от
резке. На плоскости (у, и) эта константа представляется в виде прямой и = d.
Пары случайных чисел (у», и*), каждое из которых равномерно распределено
на отрезке а < у* < 6, 0 < щ < d, соответственно, можно трактовать как точки,
равномерно распределенные в соответствующем прямоугольнике на плоскости
j . и). Если все точки, для которых выполнено неравенство (4.9.12), будут от
клонены, то останутся только точки, находящиеся под кривой и = д(у)- На
* Этот метод известен также под названием метода исключения. — П рим , ред.
76
Глава 4.
Случайные числа. Метод Монте-Карло
и
-1
-0 5
0
0.5
1
Р и с . 4 .5 . Все смоделированны е пары чисел (у*, щ) представлены в виде точек на
плоскости (у,и). Точки над кривой и — д(у) (маленькие точки) отвергнуты.
рисунке 4.5 приведена диаграмма для примера 4.4. (Понятно, что этот метод
также дает верные результаты, если функция не нормирована единицей. На
рис. 4.5 мы положили для простоты д(у) = y R 2 —у2 и R — 1.)
В методе из разд. 4.9.1 для каждого случайного числа у* было необходи
мо смоделировать новое случайное число х* из равномерного распределения и
преобразовать его в соответствии с формулой (4.9.5). Для метода просеивания
всякий раз нужно моделировать пары уг,щ, и значительная часть чисел —
в зависимости от значений щ согласно условию (4.9.12) —будет отвергаться.
Вероятность принятия числа у?; равна
Р_
Jg9(y)<iy
(Ь - a)d
(4.9.15)
Назовем величину Е эффективностью этого метода. Если отрезок a < у < Ь
включает в себя целиком весь интервал допустимых значений у, то числитель
в выражении (4.9.15) равен единице и получаем, что
Е =
1
(6 —a)d
(4.9.16)
Числитель и знаменатель в соотношении (4.9.15) просто равны площадям
на отрезке a < у < Ь под кривыми (4.9.13) и (4.9.14) соответственно. Разбросаем
точки (yi, щ) равномерно под кривой (4.9.14) и отвергнем случайные числа у
если выполнено неравенство (4.9.12). Эффективность этого метода безусловно
будет выше, если использовать в качестве верхней кривой не константу (4.9.14),
а некую кривую, близкую к у (у).
4.9.
Моделирование случайных чисел, имеющих произвольное распределение
77
Имея это в виду, метод просеивания можно теперь сформулировать в обшем
виде:
(i) Находим плотность распределения вероятностей s (у), которая имеет до
статочно простой вид для того, чтобы, используя ее, можно было смо
делировать случайные числа при помощью метода обращения функции
распределения, и такую константу с, что имеет место неравенство
g ( y ) <c - s ( y ) ,
a < у <Ь,
(4.9.17)
(й) Моделируем случайную величину у. равномерно распределенную в интер
вале a < у < 6, и вторую случайную величину и, равномерно распреде
ленную в интервале 0 < u < 1.
(ш) Отклоняем случайное число у, если
U>
д{ у)
c-s( у)'
(4.9.18)
После реализации пунктов (й) и (Ш) достаточное количество раз полученное
в результате множество принятых случайных чисел у будет иметь плотность
распределения д(у), поскольку
Р ( У < у) = f
= \ f
a(t) At = \{G{y) - G(a)}.
Если отрезок a < у < Ь включает в себя целиком весь интервал допустимых
значений у как для плотности д(у), так и для плотности s(y), то эффективность
этого метода будет равна
Е=~.
(4.9.19)
С
Пример 4.5. Равномерное распределение на полукруге и метод просеивания в
общем виде. Выберем в качестве с ■s(y) функцию, график которой имеет вид
ломаной линии:
c-s{y)
' О,
у < -R ,
3R/2 + у , —R < у < —R/2,
- R / 2 < у < R/2,
< R,
3R/2 - у . R/ 2 < у < R,
R<y.
I о.
В этом случае эффективность, очевидно, равна
_ k R?
1
_ 27г
= ~2~ ' 2R? - R 2/А = У !
тогда как в примере 4.4 эффективность составляет
Е =
7ГR 2
1 _7Г
~ ' 2Д* “ 4'
78
Глава 4. Случайные числа. Метод Монте-Карло
4.10. Моделирование нормально распределенных
случайных чисел
Нормальное распределение, которое мы будем обсуждать в разд. 5.7, безуслов
но, является наиболее важным распределением в анализе данных. Мы приво
дим здесь программу, которая генерирует случайные числа х*, имеющие стан
дартное нормальное распределение с плотностью
f ( x) = ^ / = е - * 2/2.
(4.10.1)
Соответствующую функцию распределения F(x) можно вычислить и обратить
только численными методами (см, приложение С). Следовательно, нельзя ис
пользовать элементарный метод преобразования из разд. 4.9.1. Метод поляр
ных координат Бокс а и М ю л л е р а [5], описанный в данном разделе, очень
красиво объединяет метод просеивания и метод обращения функции распре
деления. Алгоритм этого метода состоит из следующих шагов:
(i) Моделируются две независимые случайные величины Ui,U2 , равномер
но распределенные на отрезке между 0 и 1, и производится замена
Vx — 2 u i — 1, у 2 — 2 u2 — 1,
(ii) Вычисляется величина s = v2 + v2.
(iii) Если s > 1, вернуться к шагу (i).
(iv) X| = vi д/ —(2/s) Ins и
= V2 \ / —(2/s)Ins —две независимые случайные
величины, имеющие стандартное нормальное распределение.
Пары чисел (vi,V2 ), полученные на. шаге (i) (при условии $ < 1), являются
координатами точек, равномерно распределенных внутри единичного круга.
Точка (vi,V2 ) имеет полярные координаты vx — rcos0, V2 — rsin0, где г = y/s,
в —arctg(v2 /vi). Точка (х^хг) имеет полярные координаты xi = cos#>/—21ns,
Х2 = sin в \ / —21ns. Найдем теперь вероятность F(r) — Р ( \ / ~ 2 Iris < г) =
Р ( —21ns < г2) — P(s > е“ г ^2). Поскольку по построению s — г2 равномерно
распределена на отрезке между 0 и 1, имеем F(r) ~ Р (s > е“ г /2) — 1 - е” г2/2.
Плотность распределения вероятностей для г равна /(г) =
— ге"г2//2.
Совместная функция распределения для xi и Х2 , имеет вид:
F{ x \ , x 2) = P(xi <
Х2 < х 2) = P(rcos0 < Хх, г sin# < х 2)
= — / /
-г2/2 dr dip
re~r~/z
_ _1_
е~(х2+*2)/2 dxdy
J У(х1 < X I , X 2 < X 2 )
2л
ГXI < Х 1 ,Х 2 < Х 2)
Xi
е х^ 2 dxi
%/2 тг У_ос
V
1
Г
Х2
J-r/ -ООe - ^ P d x i
т, е. равна произведению двух функций стандартного нормального распреде
ления. Метод проиллюстрирован на рис, 4.6.
4.10.
Моделирование нормально распределенных случайных чисел
79
(Ь)
(а)
-3
0.5
0
0.5
3 - 2 - 1
О
2
3
Р и с , 4 .6 , И ллю страция м етода Б окса—М юллера, (а) Пары чисел (v i,V 2) п ор ож де
ны таким образом , чтобы точки были равномерно распределены в квадрате. С реди
этих пар затем отклоняю тся те, которые леж ат вне единичного круга (обозначены
маленькими точками). (Ь) С оответствует преобразованию (v i,V 2) —> (Х1 .Х2) .
Программа
4 .3 , П о д п р о г р а м м а RNSTNR м о д е л и р о в а н и я с л у ч а й н ы х ч и сел , и м е
ю щ их с т а н д а р т н о е н о р м а л ь н о е р а с п р е д е л е н и е
К оманда
в ы зо в а : c a l l r n s t n r ( r , n )
ВХОДНОЙ ПАРАМЕТР: N — к о л и ч е с т в о с л у ч а й н ы х чисел
Выходной
ПАРАМЕТР: R — м а сси в , с о д е р ж а щ и й н а N п ер в ы х м естах
с л у ч а й н ы е ч и сл а
К о м м ен та ри и : И с п о л ь зу е т с я п о д п р о г р а м м а 4 .2 RNECUY. Д л я м о д е л и р о в а н и я
н е п е р е с е к а ю щ и х ся ч а с т н ы х п о д п о с л е д о в а т е л ь н о с т е й н у ж н о в
с о о т в е т с т в у ю щ и х м е с т а х в ы зв а т ь п о д п р о г р а м м у RNECUY.
SUBROUTINE RNSTNR(R,N)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DIMENSION R ( N ) , U ( 2 )
1=1
10 CONTINUE
CALL RNECUY(U,2 )
V 1 = 2 .* U ( 1 ) - 1 .
V 2 = 2 .* U ( 2 ) - 1 .
S-V 1*V 1+V 2*V 2
I F ( S .G E .1 . ) GO TO 10
80
Глава 4. Случайные числа.
Метод Монте-Карло
R 0 0 T = S Q R T (-2 .* L 0 G (S )/S )
R (I)= V 1 * R 0 0 T
I F ( I .L T .N ) R(J+1)=V2*RQ Q T
1 = 1+2
I F ( I .L E .N ) GO TO 10
END
В литературе описаны многие другие методы моделирования нормально
распределенных случайных чисел. Они в некоторой степени более эффективны, чем метод Б о к с а - М ю л л е р а , однако в целом более сложно реализуются
в программном виде1.
4.11. Моделирование случайных чисел, имеющих
многомерное нормальное распределение
Плотность многомерного нормального распределения как функция п перемен
ных х — (ад.хг.......х п) согласно формуле (5 10.1) равна
ф(х) - кехр | - ^ ( ж _ а ) тВ( х - а ) | .
Здесь а —вектор математического ожидания, а В — С~Л—матрица, обратная
к положительно определенной симметричной ковариационной матрице. При
помощи разложения Холецкого В = D 1D и замены и — D(x —а) выражение
под знаком экспоненты принимает простой вид
~ ^ и ти =
-l(u f +
и\
+ •••+
и 2п ).
Таким образом, элементы щ вектора и независимы и имеют стандартное
нормальное распределение [см. (5.10.9)]. Построим вектор х, состоящий из слу
чайных чисел, взяв сначала вектор и. компоненты и, которого имеют стандарт
ное нормальное распределение, и затем осуществив преобразование
х = Л " 1u + а.
1 Пусть щ и U'2 —
-равномерно распределенные на отрезке [0,1] независимые случайные
величины, а
J TVi = V—2 In 74 sin27TM2)
\ N 2 = \ r—2 h \u \ cos 2 7TU2Легко показывается, что ATi и N 2 —независимые нормально распределенные случайные ве
личины с плотностью (4.10.1). В статистической литературе именно приведенный алгоритм
моделирования нормальных случайных величин называют алгоритмом Бокса —Мюллера. —
Прим. ред.
4.11.
Случайные числа , имеющие многомерное нормальное распределение
Программа
81
4 .4 . П о д п р о г р а м м а RNMNPR и н и ц и а л и за ц и и д а т ч и к а с л у ч а й н ы х чи
сел, и м ею щ и х n -м е р и о е н о р м а л ь н о е р а с п р е д е л е н и е
КОМАНДА ВЫЗОВА: CALL RNMNPR( С ,DPLUS,N)
В ходны е п а р а м е т р ы : С — ковариационная матрица С размера n х п для
п-мерного нормального распределения
N — число переменных п
Выходной
п арам етр:
DPLUS— п
х п м атрица
D“\
которая необходим а дл я
в в о д а д а н н ы х в к ач еств е а р г у м е н т а в п р о г р а м м е RNMNGN.
SUBROUTINE RNMNPR( С , DPLUS, N)
С подготовка к порождению случайных чисел, подчиняющихся многомерному
С нормальному распределению
IMPLICIT DOUBLE P R E C IS IO N (A -H ,0 -Z )
PARAMETER(NMAX=10)
DIMENSION B(NMAX,NMAX),D(NMAX,NMAX),R(NMAX)
DIMENSION C ( N ,N ) , D PLUS(N ,N)
LOGICAL OK
CALL M TXTRA(C,B,N,N)
CALL M TXCH I(B,D,N)
CALL MTXCHL(B,D,N)
CALL MTXUNT(B,N)
CALL MTXSVD(D, В , DPLUS, R , N , N , N , 0 . DO, OK)
END
Программа 4.5.
П о д п р о г р а м м а RNMNGN д л я м о д е л и р о в а н и я с л у ч а й н ы х в ел и
чин, и м ею щ и х n -м е р н о е н о р м а л ь н о е р а с п р е д е л е н и е
К оманда
в ы зо в а : c a l l r n m n g n ( d p l u s , a , x , n )
В ходны е
п а р а м е т р ы : DPLUS
— n х п м атрица D " 1, которая бы ла со зд а н а
при в ы зо в е п р о г р а м м ы RNMNPR
А — вектор м атем ати ч еск и х о ж и д а н и й а дл и н ы
N — число п ерем енны х
п
п
Выходной
п а р а м е т р : X — вектор х длины п, компонентами которого
являются п случайных чисел
К о м м ен та ри и : П о сл е т о г о как п у т е м в ы зо в а п р о г р а м м ы RNMNPR
п о д г о т о в л е н а м а т р и ц а DPLUS, к а ж д ы й с л е д у ю щ и й в ы зов п р о г р а м м ы
RNMNGN д а е т н ов ы й с л у ч а й н ы й в е к т о р х
SUBROUTINE RNMNGN(DPLUS,A,X,N)
Г порождение случайных чисел, подчиняющихся многомерному
Г нормальному распределению
IMPLICIT DOUBLE P R E C IS IO N (A -H ,0 -Z )
PARAMETER( NMAX=1 0 )
82
Глава 4.
Случайные числа. Метод Монте-Карло
DIMENSION R(NMAX)
DIMENSION D P L U S (N ,N ),A (N ),X (N )
CALL RNSTNR(R.N)
CALL MTXMLT(DPLUS, R , X ,N , N , 1 )
CALL MTXADD(X, A , X ,N , 1 )
END
4.12. Метод интегрирования Монте-Карло
Принципы метода просеивания (см. разд, 4.9.2) лежат в основе простого
метода численного интегрирования. Если N пар случайных чисел (yi,u2),
г = 1 ,2 ,..., iV порождены с помощью метода просеивания в общем виде, и если
N —n из них отвергнуты в связи с тем, что они удовлетворяют условию (4.9.18),
то величины N и п пропорциональны площадям под кривыми с • s(y) и д(у).
по крайней мере при переходе к пределу при N —> оо, т. е.
Г g{y)dy
п
= lim Сfa S(V) d2/ N^°° Л
(4.12.1)
Поскольку функция s(y) выбирается таким образом, чтобы она имела доста
точно простой вид (в простейшем случае s(y) = 1/(6 - а)), то соотношение
n / N приближенно равно значению интеграла
I = J
9
dy ~
jf) С/
s (y } d y -
(4.12.2)
Здесь подынтегральная функция д(у) не обязательно нормирована, т. е. не
обязательным является требование
рОО
/
g{y)dy = h
поскольку с выбирается таким образом, что неравенство (4.9.17) было выпол
нено.
Пример 4.6. Вычисление числа тг. Возвращаясь к примеру 4.4, вычислим ин
теграл от функции (4.9.11) при R = 1:
I = [ д(у) dy = 7г/4.
Jо
Положив s(y) = 1 и с = 1, получим
I = lim
TV — ►
оо
П
N'
Мы полагаем, что если N точек равномерно распределены в квадрате
0 < у < 1 , 0 < ц < 1 и п из них лежат внутри единичного круга, то отно
шение n / N в пределе при N —■» оо стремится к значению I = тг/4. В табли-
4.13.
Метод моделирования Монте-Карло
83
Т а б л и ц а 4 .2 . Ч исленны е значения 4 п /N д л я р аз
личны х значений N. Различны е строки соответ
ствую т различны м последовательностям случай
ных чисел.
4 n /N
N = 102
N = 104
N = 10е
3.419
3.150
3.279
3.419
3.122
ЗЛ45
3.159
3.130
3.141
3.143
3.144
3.143
ле 4.2 представлены результаты для некоторых значений N и различных по
следовательностей случайных чисел. Конечно, точное значение n / N зависит от
соответствующей последовательности. В разд. 6.8 мы покажем, что обычно ко
лебание числа п примерно равно А п — л/ N . Поэтому относительная точность
вычисления интеграла (4.12.2) составляет
A I _ Ап _
~
1
~ ~
(4.12.3)
Следовательно, в столбцах таблицы 4.2 приводятся значения числа 7г с точно:тью 10%, 1% и 0.1%. Действительно, мы видим, что в различных столбцах
:‘“линия наблюдаются соответственно в первом, втором и третьем знаке после
десятичной запятой,
ш
Метод интегрирования Монте-Карло теперь можно реализовать в виде
:лень простой программы. При интегрировании функции одной переменной
для экономии времени вычислений обычно лучше использовать другие чи
сленные методы. Однако для функции многих переменных метод Монте-Карло
.одяется более простым и зачастую даже более быстрым.
4.13. Метод моделирования Монте-Карло
Многие реальные ситуации, описываемые статистическими процессами, можсмоделировать на компьютере при помощи случайных чисел. Примерами
служат движение автомобилей по заданной сети улиц и поведение нейтронов
з ялерном реакторе. Метод Монте-Карло изначально был разработан для резеяня второй из этих задач Фо н - Н е й м а н о м и У л а м о м . Изменение пара
метров распределений будет соответствовать изменению реальной ситуации,
Тылим образом, эффект от введения дополнительных улиц или изменений в
сенхторе можно изучить, не предпринимая дорогостоящих и требующих вре*енл изменений в реальной системе. При помощи метода Монте-Карло можно
с,!. :делировать не только интересующие нас процессы, изменяющиеся согласно
тлнстическим законам, но и ошибки, происходящие при каждом измерении.
84
Глава 4. Случайные числа. Метод Монте-Карло
Пример 4.7. Моделирование ошибок измерений координат точек на прямой.
Рассмотрим произвольную прямую на плоскости (£, у). Она описывается урав
нением
у = at + Ь.
(4.13.1)
Если мы выберем дискретные значения переменной t
£о>
£i —
^2 = to
2A t,
...,
(4.13.2)
то им будут соответствовать значения переменной у
yi = at-i + 6,
г = 0 ,1 ,..., п - 1.
(4.13.3)
Допустим, что значения to.
■*■«контролируемой переменной» t можно опре
делить без ошибок. Однако вместо значений yi из-за ошибок измерений мы
получаем другие значения
y'i = yi+£i(4.13.4)
Здесь £г —ошибки измерений, имеющие нормальное распределение со средним
нуль и стандартным отклонением ау (см. разд. 5.7). Программа 4.6 моделирует
пары точек в соответствии с соотношением (4.13.4).
На рис.4.7 представлены результаты работы программы
CALL R N L IN E (0. 5 D 0 , 1 .D O , 0 . DO, 1 .DO , 1 0 , 0 .5 D 0 ,T ,Y )
■
У
Рис. 4.7. Прямая на плоскости (i, у) и смоделированные значения измерений с ошиб
ками по оси у.
4.13.
Программа
Метод моделирования Монте-Карло
85
4 .6 . П о д п р о г р а м м а RNLINE м о д е л и р о в а н и я зн а ч е н и й к о о р д и н а т т о
ч ек н а п р я м о й с о ш и б к а м и и з м е р е н и й
К оманда
в ы зо в а *, c a l l r n l i n e ( a , b , t o , d t , n , s ig m a y , t , y )
В х одны е
п а р а м е т р ы : А ,В — п а р а м е т р ы а и
b пря м ой ;
(см . (4 .1 3 .1 )).
to, At, п о п р е д е л я ю т к о л и ч е с т в о и п о л о ж е н и е т о ч е к б е з о ш и б о к
SIGMAY — о у с т а н д а р т н о е о т к л о н е н и е н о р м а л ь н о г о р а с п р е д е л е н и я о ш и б о к
T 0 ,D T ,N —
и зм ер ен и й
В ы х о дны е п а р а м е т р ы : T,Y —массивы, содержащие координаты п
измеренных точек
SUBROUTINE RNLINE( А , В , ТО, DT, N , SIGMAY, Т , Y)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DIMENSION T ( N ) , Y (N )
DO 10 I =
1 ,N
T (I)= T 0 + (I-1 )* D T
Y (I)= A * T (I)+ B
CALL RNSTNR(R,1 )
Y (I)= Y (I)+ R *S IG M A Y
10 CONTINUE
END
Пример 4.8. Моделирование времени распада для смеси двух различных радио
активных субстанций. В м о м е н т t = 0 в и с т о ч н и к е с о д е р ж и т с я N р а д и о а к
ти вн ы х я д е р , и з к о т о р ы х
(1 — a )N
a N п о л н о ст ь ю р а с п а д а ю т с я з а с р е д н е е в р е м я Т ], а
— з а с р е д н е е в р ем я Г2 , г д е 0 < а < 1. П р и м о д е л и р о в а н и и н а б л ю д а е
м ого в р ем ен и р а с п а д а с л у ч а й н ы е ч и с л а н е о б х о д и м о и с п о л ь зо в а т ь д л я р еш ен и я
д в у х р а зл и ч н ы х за д а ч : д л я в ы б о р а т и п а я д р а и д л я о п р е д е л е н и я в р ем ен и р а с
п а д а я д р а в ы б р а н н о г о т и п а , см . с о о т н о ш е н и е (4 .9 .9 ).
Программа 4.7.
П о д п р о г р а м м а RNRADI д л я м о д е л и р о в а н и я в р ем ен и р а с п а д а
радиоактивны х ядер
К оманда ВЫЗОВА: CALL RNRADI сA , TA U 1,T A U 2,T )
В х одны е
п ара м етры : А — д о л я
а я д е р со с р е д н и м в р ем ен ем р а с п а д а г\
TAU1, TAU2 — с р е д н е е в р е м я р а с п а д а т\ ,
д в у х ти п ов я д е р
Выходной
и
ПАРАМЕТР: Т — в р е м я t р а с п а д а я д е р
К о м м ен та ри и : П р и к а ж д о м за п у с к е п р о г р а м м ы в р е зу л ь т а т е в ы д а е т с я
в р ем я р а с п а д а .
SUBROUTINE RNRADI( A ,T A U 1,T A U 2,T )
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DIMENSION R ( 3 )
CALL RNECUY ( R , 3 )
86
Глава 4.
Случайные числа . Метод Монте-Карло
I F ( R ( 1 ) . L T . A ) THEN
С С р е д н е е в р ем я р а с п а д а р а в н о TAU1
T --T A U 1 * L 0 G (R (2 ))
ELSE
С С р е д н е е в р ем я р а с п а д а р а в н о TAU2
T = -T A U 2 * L 0 G (R (3 ))
END IF
END
4.14. Примеры программ
В с е п р о г р а м м н ы е ф а й л ы д о с т у п н ы в п о д д и р е к т о р и и \DATAN\EXASRC.
4.14.1. Головная программа E1RN для демонстрации работы
подпрограмм RNMLCG, RNECUY и RNSTNR
Э т а п р о г р а м м а о с у щ е с т в л я е т з а п у с к п о д п р о г р а м м RNMLCG и RNECUY, к о т о р ы е
г е н е р и р у ю т р а в н о м ер н о р а с п р е д е л е н н ы е с л у ч а й н ы е ч и сл а , и з а п у с к п р о г р а м
мы RNSTNR, п о р о ж д а ю щ е й н о р м а л ь н о р а с п р е д е л е н н ы е с л у ч а й н ы е ч и сл а. П о л ь
зо в а т е л ь в ы б и р а ет д а т ч и к с л у ч а й н ы х ч и с е л , при эт о м в ы в о д я т ся т е к у щ и е н а
ч а л ь н ы е зн а ч е н и я д а т ч и к а и п о ж е л а н и ю м о ж н о в в ести н ов ы е н а ч а л ь н ы е з н а
ч ен и я . В р е зу л ь т а т е р а б о т ы п р о г р а м м ы в ы в о д и т ся п о с л е д о в а т е л ь н о с т ь и з 100
с л у ч а й н ы х ч и сел . П о л ь зо в а т е л ь и м еет в о з м о ж н о с т ь за к о н ч и т ь р а б о т у п р о г р а м
м ы или за п у с т и т ь е е сн о в а .
4.14.2. Головная программа E2RN для демонстрации работы
подпрограммы RNLINE
Г ол ов н ая п р о г р а м м а г е н е р и р у е т
N
п а р с л у ч а й н ы х ч и с е л (t, у ), д л я к о т о р ы х
t — to -f iA t, г = 0
,
1 и у = а £ + Ь + Ау. З д е с ь о ш и б к а и зм е р е н и й А у
в зя т а и з н о р м а л ь н о р а с п р е д е л е н н о й в ы б о р к и со с т а н д а р т н ы м о т к л о н е н и е м a .
В за в и с и м о с т и о т в ы б о р а п о л ь з о в а т е л я п ар ы (£,
у) м о г у т бы ть п р е д с т а в л ен ы
л и б о в ч и сл ен н о м в и д е , л и б о г р а ф и ч е с к и . Д л я п р е д с т а в л е н и я р е зу л ь т а т о в в
г р а ф и ч е с к о м в и д е д о с т а т о ч н о з а п у с т и т ь п о д п р о г р а м м у SMSDGR.
4.14.3. Головная программа E3RN для демонстрации работы
подпрограммы RNRADI
П рограм м а м одели рует
N
зн а ч е н и й ^ в р е м е н и р а д и о а к т и в н о г о р а с п а д а . К а
ж д о е о т д е л ь н о в з я т о е зн а ч е н и е в р ем ен и с в е р о я т н о ст ь ю А с о о т в е т с т в у е т к о н
к р е т н о м у р а с п а д у со с р е д н и м в р е м е н е м ть а с в е р о я т н о с т ь ю 1 - А — р а с п а д у
со с р е д н и м в р ем ен ем
т^. П о в ы б о р у п о л ь з о в а т е л я зн а ч е н и я в р ем ен и р а с п а д а
п р е д с т а в л я ю т с я или в ч и с л е н н о м в и д е , и л и г р а ф и ч е с к и (в в и д е г и с т о г р а м м ы ).
Д л я п о с т р о е н и я г и с т о г р а м м за п у с к а е т с я п р о г р а м м а SMHSGR.
4.14.
Примеры программ
87
4.14.4. Головная программа E4RN для моделирования
молекулярного движения в газе
Поведение идеального газа в закрытом сосуде можно смоделировать следу
ющим образом. Молекулы газа рассматриваются как идеальные сферы ра
диуса г, т. е. диаметра d — 2г. Движение происходит только в плоскости
(xi,X 2 ). Поэтому сосуд представляется в виде прямоугольника. х \ а < Х\ < х \в ,
Х2а <
< %2 В- На первом шаге моделирования сферы распределяются в
сосуде равномерно таким образом, чтобы они не перекрывали друг друга и
не пересекали его границы. Положение каждой сферы определяется вектором
х % = (%u,X2i), состоящим из координат их центров. На втором шаге опреде
ляются векторы скоростей v. Мы выбрали начальные условия, совершенно не
имеющие физического смысла: при этих условиях только вектор v\ отличен от
нуля. Он имеет модуль vq и направлен случайным образом.
Рассмотрим теперь щ последовательных моментов времени, следующих
один за другим через малые промежутки dt. На каждом следующем шаге
сфера с номером i сдвигается вдоль некоторой прямой на вектор Vidt, т. е.
Xi
Xi + Vi d£. После каждого шага осуществляется проверка с целью вы
явления столкновений со стенкой или с другими сферами. Если сфера столк
нулась со стенкой, то компонента скорости, перпендикулярная этой стенке,
меняет направление на противоположное. При соударении сферы i со сфе
рой j применяется правило упругого удара. Пусть е ± = ( х г —х ^ / \ х г — Xj | —
единичный вектор, направленный вдоль прямой, соединяющей центры двух
соударяющихся сфер, ец —единичный вектор, перпендикулярный вектору ej_,
w = (vi 4- Vj)/2 —скорость центра масс двух сфер и, наконец, щ = Vi — w и
uj = Vj —w —скорости в системе отсчета с неподвижным центром масс, таким
образом иг = — Uj, Тогда, используя разложение
ILi =
,
= (щ *ej_)e_L = щ ± е± ,
^i\\ — (^г *®!j)®|| —^г|1®||?
получаем следующие соотношения для скоростей и', и' после соударения:
Ui\\ — Ui \\1
Uj\\ = Uj\\ = " Ui|h
ui± —
При помощи преобразования v\ = u\ 4- ш, v'- = u'j + w в итоге получаем
гкорости после соударения в исходной системе отсчета.
Таким образом мы можем моделировать состояние и поведение достаточ
но сложных физических систем и детально изучать процесс их изменения во
времени. В частности в данной программе изучается процесс изменения во вре
мени компоненты скорости ui. Мы строим гистограммы для v\ в интервалах
времени mt d t. График гистограммы сосредоточен на интервале — vq < х < vq.
88
Гла-ва 4. Случайные числа. Метод Монте-Карло
4.14.5. Головная программа E5RN для демонстрации работы
подпрограмм RNMNPR и RNMNGN
Программа генерирует пары случайных чисел, имеющих двумерное нормаль
ное распределение с вектором средних a = (щ, аг) и ковариационной матрицей
С размерности 2 x 2 . Большая часть программы является диалогом с пользо
вателем. Вначале дается возможность ввести новые начальные значения дат
чиков случайных чисел. Далее программа запрашивает значения элементов
матрицы С и компонент вектора а. Процедура генерации начинается с вызова
подпрограммы RNMNPR. В заключение в цикле 20 раз запускается подпрограмма
RNMNGN и на экран выводятся смоделированные пары случайных чисел.
4.15. Задачи по программированию
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\S0LSRC.
4.15.1. Программа для моделирования случайных чисел, имеющих
распределение Брайта—Вигнера
Написать подпрограмму со следующей спецификацией:
К оманда
в ы зо в а : call rnbw( a ,GAMMA,r , n)
А —-математическое ожидание a
GAMMA —полная широта полумаксимального уровня (ПШПУ) Г
N —количество п генерируемых случайных чисел
В х одн ы е
п ара м етры :
R —n-мерный вектор из случайных чисел, имею
щий распределение Брайта—Вигнера с параметрами а и Г
В ыходные
п ара м етры :
Написать головную программу, которая вызывает эту подпрограмму и вы
водит на экран смоделированные значения в численном виде или, по выбору,
графически в виде гистограммы (см. рис. 4.8).
4.15.2. Программа для моделирования случайных чисел,
имеющих треугольное распределение
Написать программу в соответствии со следующей спецификацией:
К оманда
в ы зо в а : call
RNTRIT(A,B,C,R,N)
В х о дн ы е п а р а м е т р ы : А,В,С —параметры а, 6, с треугольного распределе
ния (см. пример 4.3)
N —количество п генерируемых случайных чисел
п а р а м е т р ы : R —n-мерный вектор случайных чисел, имеющих
треугольное распределение с параметрами а, Ь, с, полученный при помо
щи метода обращения функции распределения согласно примеру 4.3.
В ы х о дн ы е
4.15. Задачи по программированию
89
Рис. 4.8. Гистограмма для 1000 случайных чисел, имеющих распределение БрайтаВигнера с параметрами а = 10 и Г = 3.
Рис. 4.9. Гистограмма для 1000 случайных чисел, имеющих треугольное распреде
ление с параметрами а = 1, 6 = 4, с = 3.
Написать еще одну подпрограмму с командной строкой вызова
CALL RNTRIR( А, В, С, R, N)
хтя решения этой же задачи, используя метод просеивания фон Неймана. Казгя из двух программ работает быстрее?
Написать головную программу, позволяющую пользователю запускать лю
тую из двух подпрограмм и выводить смоделированные значения на экран
:пять же по выбору пользователя) либо в численном виде, либо графически
з виде гистограммы (см. рис. 4.9).
90
Глава 4. Случайные числа. Метод Монте-Карло
4.15.3. Программа д л я моделирования результатов измерений
с ошибками разной величины
Н аписать подпрограм м у, сходную с RNLINE, которая м оделирует результаты
изм ерений у = a t + 6 4- A y (см. пример программ ы 4.14.1). О днако теперь
ош ибки А у для в сех результатов изм ерений у* берутся не из одн ого и того
ж е равном ерного р асп ределен и я на отрезке длины сг, теперь A y i норм ально
распределены со стандартны м и отклонениям и
С тандартны е отклонения я*
равном ерно распределены на отрезке crmin < <п < сгт а х . П рограм м а им еет сле
дую щ ую спецификацию:
К оманда вы зова :
SIGMAY)
call r n l n d f ( a , b , t o , d t , n , s i g m i n , s i g m a x , t , y
,
В ходные ПАРАМЕТРЫ: А,В ,T0 ,DT,N —те же, что и в программе RNLINE
SIGMIN,SIGMAX — crmin, <rmax
В ыходные па ра м етры : Т ,Y,SIGMAY— п-мерные векторы с компонентами
У гч
Н аписать головную програм м у, которая запускает эту подпрограм м у и вы
водит на экран в граф ическом виде прям ую у = at 4- Ь и см оделированны е
результаты изм ерений с ош ибками у^ ± Ау^ (см, рис. 4.10). И спользовать п ро
грамму GRDATP.
У
д
О
5
10
15
20
25
30
---------------- о t
Р и с . 4 .1 0 . Результаты измерений с ошибками разной величины.
4.15. Задачи по программированию
91
4.15.4. П рограмма дл я моделирования молекулярного движе! ; i 1 Я
Модифицировать программу E4RN (программа 4.14.4) таким образом, чтобы
пользователь мог выбирать (а) нарисовать ли траектории движения центров
сфер на плоскости { х \ , # 2 ) (см. рис. 4.11) или (Ь) вывести на экран гистограмму,
построенную для равных промежутков времени. Сделать возможность выбора
гистограммы для одной из величин гц, иг, |г?|, М 2,
В частности, проанализировать гистограммы, построенные для v \ и V2
на больших интервалах времени, и использовать полученные результаты при
определении более близкого к реальному распределения скоростей в момент
времени t = 0.
Р и с. 4 .1 1 . Моделирование молекулярного движения в идеальном газе на двумер
ной плоскости. Нарисованы начальные положения молекул (окружности) и на пер
вом этапе траектории движения их центров во времени (непрерывные линии). Изна
чально ненулевую скорость имеет только та молекула, которая обозначена двойным
кружком. На рисунке она движется вправо и вниз. Она сталкивается с молекулой,
располагающейся ниже и правее ее, а та в свою очередь ударяется затем об обе сте
ны. Путем последующих столкновений движение охватывает левый верхний угол на
рисунке.
Глава 5
Некоторые важные распределения
Теперь мы подробно обсудим некоторые отдельные распределения. Поэтому
эту главу можно рассматривать в качестве набора примеров. Однако все эти
распределения имеют большое практическое значение и часто встречаются во
многих приложениях. Более того, их изучение приведет нас к некоторым важ
ным теоремам.
5.1. Биномиальное и полиномиальное распределения
I
Рассмотрим эксперимент, имеющий только два возможных исхода. В этом слу
чае выборочное пространство можно представить в следующем виде:
Е
(5.1.1)
—Л Л Л
с вероятностями
Р (А )= р
,
P(A ) = \ - p
(5.1.2)
= q.
Осуществим теперь п независимых реализаций эксперимента, определенного в
соответствии с соотношением (5.1.1). Пусть необходимо найти распределение
вероятности для величины х = 53Г=1 х»> гДе хг = 1 (либо 0), когда событие А
(либо А ) наступает в результате г-го эксперимента.
Вероятность того, что в результате первых к испытаний наступит собы
тие Л, а во всех остальных —событие Л, равна, согласно соотношению (2.3.8).
р к qn ~ k t Используя правила комбинаторики, событие «Л наступило ровно к раз
в п испытаниях» может осуществиться (£) =
различными способами,
в зависимости от порядка осуществления событий Л и Л (см. приложение В).
Следовательно, вероятность такого события равна
(5.1.3)
Нас интересуют среднее значение и дисперсия случайной величины х. Най
дем сначала эти характеристики для переменной х^, отвечающей отдельному
событию. Согласно соотношению (3.3.2), имеем:
(5.1.4)
E ( \ i ) = l - p + 0 - q = p,
сг2(хг) =
E {(x i - р)2}
о-2(х,;) =
pq.
= (1 -
р ) 2р
+ (0 -
p ) 2q ,
(5.1.5)
Обобщая соотношение (3.5.3) для х = 53 хь получаем
п
(5.1.6)
5.1. Биномиальное и полиномиальное распределения
93
з поскольку все ковариации равны нулю, так как х* независимы, то из формулы
3.5.10) следует, что:
сг2(х) =
npq.
(5.1.7)
На рисунке 5.1 показано распределение вероятностей W g для различных п и
фиксированного р , а на рис. 5.2 оно приведено для фиксированного п и раз
личных значений р . В заключение на рис. 5.3 оба значения п и р варьируются,
а юс произведение п р остается постоянным. Эти рисунки помогут нам увидеть
взаимосвязь между б и н о м и а л ь н ы м р а с п р е д е л е н и е м (5.1.3) и другими распре
делениями.
Эксперименты, в которых возможны более двух исходов, служат модифи
кацией биномиального распределения. В этом случае равенство (5.1.1) заме
няется суммой
Е — А \ Н- Л.2 И- ■* *Н-
(5.1.8)
|0 |
5 .1 . Биномиальное распределение для различных значений п и фиксированяг: р
94
Глава 5. Некоторые важные распределения
Р и с . 5.2. Биномиальное распределение для различных значений р и фиксированно
го п.
Р и с . 5.3. Биномиальное распределение для различных значений п и фиксированно
го произведения np. С ростом значений п распределение изменяется незначительно.
5.2. Частота. Закон больших чисел
Пусть вероятность наступления события
Aj
95
равна
I
P(Aj)=Pj,
(5Л-Э)
Y l p} = l з= 1
Рассмотрим снова п испытаний и найдем вероятность того, что событие
осуществляется k j раз. Она вычисляется следующим образом:
е
П\
П£
11,7=1
Aj
е
П
1
j =11
kj
5
P j
>
= n.
(5.1.10)
з= i
Доказательство оставим читателю. Распределение вероятностей (5.1.10) назы
вается п о л и н о м и а л ь н ы м р а с п р е д е л е н и е м .
Мы можем определить случайную величину х^-, которая принимает значе
ние 1, когда i - e испытание приводит к исходу A j , и равна нулю в противном
случае. Кроме того, определим величину Xj =
xi?* Тогда математическое
ожидание Xj равно
(5.1.11)
E ( x j ) = Xj = n p j .
Элементы ковариационной матрицы для величин
Cjj
— Txpi^Sjj
Xj
равны
P j ).
(5.1.12)
Элементы, лежащие вне диагонали, очевидно, не равны нулю. Этого следовало
ожидать, поскольку из соотношения (5.1.9) следует, что случайные величины
х; не являются независимыми.
Частота. Закон боль II [их чисел
Вероятности событий различных типов, к примеру, вероятности p j в случае
полиномиального распределения, обычно неизвестны, а должны быть опреде
лены из опыта. Сначала измеряется ч а с т о т а событий в п экспериментах
h
(5.2.1)
з
з отличие от вероятности частота является случайной величиной, поскольку
:еа зависит от исходов п отдельных экспериментов. Используя соотношения
1.1.11), (5.1.12) и (3.3.15), получаем
^(hi) = ^ = s ( ^ ) = p it
CT2(hj) = <т2 (^ -) = ^<х2(х,) = 1р^( 1 -
(5.2.2)
P j ).
(5.2.3)
Произведение p j ( 1 —p j ) в равенстве (5.2.3) не превышает 1/4. Видно, что
^тематическое ожидание частоты события в точности равно вероятности нагтулления этого события, а разброс частоты вокруг среднего значения можно
96
Глава 5. Некоторые важные распределения
сделать произвольно малым при возрастании числа испытаний. Поскольку самое большое значение pq равно 1/4, то всегда можно сказать, что стандартное
отклонение величины hj не превышает 1js/n. Это свойство частоты известно
как закон больших чисел1 и служит основанием для частотного определения
вероятности, заданного в соответствии с соотношением (2.2.1).
Зачастую цель экспериментального исследования заключается в определе
нии вероятности наступления события определенного вида. В соответствии с
формулой (5.2.2) частоту можно использовать в качестве приближенного зна
чения вероятности. Тогда квадрат ошибки такого приближения обратно про
порционален числу отдельных испытаний. Ошибки, возникающие из-за того,
что можно осуществить лишь конечное число экспериментов, называются ста
тистическими ошибками. Ошибки такого вида имеют первостепенную важ
ность в приложениях, которые связаны с подсчетом числа отдельных исходов,
например ядерных частиц, проходящих через счетчик, животных с опреде
ленными характерными чертами при изучении наследственности, деталей с
дефектами при контроле качества и т. д.
Пример 5.1. Статистическая ошибка. Предположим, что из предыдущих
экспериментов известно, что некоторое свойство А появляется у части R ^
1/200 плодовых мушек — дрозофил^ подвергнутых фиксированной дозе рентге
новского излучения. Эксперимент проводится с целью определения доли R с
точностью до 1%. Каким должен быть объем исходной выборки для достиже
ния такой точности?
Используем соотношение (5.2.3) и найдем pj = 0.005, (1 — Pj) & 1. Теперь
нужно выбрать п таким образом, чтобы a( hj ) f hj = 200*7 (frj) = 0.01. Отсюда
следует, что &(hj) = 0.00005 и &2(hj) = 0.25х10”е. Равенство (5.2.3) принимает
вид 0.25 х 10"^ = 1/п х 0.005 и, следовательно, п = 2 х 106. Нужно было
бы использовать выборку из двух миллионов плодовых мушек. На практике
это невозможно осуществить. А для определения доли Л с точностью до 10%
потребовалось бы 20000 мушек.
■
5.3. Гипергеометрическое распределение
Хотя в одном из последующих разделов будет введено строгое определение слу
чайной выборки, обсудим сейчас типичные задачи, связанные с выборочными
процедурами. Рассмотрим сосуд—мы не будем отклоняться от сложившейся
среди математиков традиции и станем называть подобный сосуд урной —с К
белыми и L — N —К черными шариками. Хотим найти вероятность того, что
1
Под знаком больших чисел обычно понимается утверждение следующего типа: пусть
случайные величины х ь х а , . . . одинаково распределены,
— а < сю. Тогда при любом
€ > 0 и п —» оо
Для рассматриваемой автором задачи закон больших чисел известен как теорема Бернулли:
Р {[Л; —pj| > е} —»0 при любом е > 0 и п —* оо. Эвристическая интерпретация автора вполне
допустима, а иногда и очень полезна. — Прим. ред.
5,3, Гштергеометрическое распределение
97
п случайно вытащенных шариков {выбор без возвращения) будет в точи к белых и I = п — к черных шариков* Задача представляется сложной,
эку вытаскивание шарика определенного цвета изменяет соотношение
оставшимися в урне белыми и черными шариками и, следовательно,
.влияет на исход при следующем выборе* Очевидно, существует ( п) различ
ных способов выбора п конкретных шариков из N шариков* Следовательно,
вероятность того, что один из этих способов реализуется, равна 1/(^)* Суще
ствует {^) способов выбора А: из К белых шариков и (£) способов выбора t из
L черных шариков* Следовательно, искомая вероятность равна
(5.3.1)
Й)
Как и в разд* 5*1, определим случайную величину х = ЕГ= 1
гДе х» = ^ когда
при t-м вытаскивании достают белый шарик, и х» = 0 в противном случае*
(Другими словами, мы определяем А;—число белых шаров в выборке — как
(Шучайную величину х*)
Для вычисления математического ожидания для величины х мы можем наг
прямую сложить математические ожидания для
хотя эти величины уже не
являются независимыми, Вместо этого мы должны вернуться к определению
(3,3,2)
ъ
-
т
(-)
ъ
_ {N~n)\n\^
iK\(N - К)\
N1
“ г!{/Г —г)!{п * i)f{JV —К —п Н- i)f
I—i
Е
п ( п -1 ) ! (Л Г -п )! y *
К\
N[N~l)l
" (i —1)Г(АГ 1
X
(i — 1))!
_____ { N - K ) \ :_______
(п - 1 - (i - 1))1(N - К - (n - 1) + {%- 1))! ‘
Если произвести замену i — 1 =
то получим;
Е (*) = п к ь ^ Ш - п2
W
N
{N — 1)!
Tl-1
E*№
U
К
(K —1)\(N — K)\
- 1 - j)!{n - 1 - j)\(N - K - ( n - 1) + j)!
1
nNC -i)h \
N-K \
3 Д »- w !
Из соотношения {В *5) следует, что
(5.3.2)
98
Глава 5. Некоторые важные распределения
Рис* 5*4* Гипергеометрическое распределение для различных значений п и малых
значений К н N.
Рис* 5*5* Гипергеометрическое распределение для различных значений п и для ^
больших значений К п N.
Вычисление дисперсии осуществляется аналогичным образом, только занима
ет значительно больше времени. В результате
«7» =
nK(N-K)(N-n)
N 7{N~ 1)
(5.3.3)
На рисунках 5.4 и 5.5 представлены несколько примеров гипергеометрических
распределений. Если п<& N, то вытаскивание белого шарика оказывает незна
чительное влияние на вероятность следующего исхода. Следовательно, можно
5.3. Гипергеометрическое распределение
99
_ть, что в этом случае поведение Wk будет сходно с поведением вино
вного распределении с параметрами р = ^ и q = N^K - Это становится
нын из сходства рисунков 5.5 и 5.1. Действительно, получаем, что матеtecKoe ожидание будет таким же iT(x) = nK/N = пр, как и у бююмиальраспределения. Тогда дисперсия равна
■К
„ а м _ nM N ~ я)
W ~
N -1
’
для случая п <£. N принимает значение и2 = npq.
Гипергеометрическое распределение имеет широкое применение, Изучение
зственного мнения, контроль качества и т, д. —все это основывается на эксшментальной схеме, заключающейся в вытаскивании (опросе) объектов без
ращения в исходную выборку или совокупность* Это распределение можобобщить двумя способами* Во-первых, безусловно, вместо двух характери1к (белый и черный шарики) можно рассматривать большее число характеик. Это приводит к модификации, подобной той, что была осуществлена
переходе от биномиального распределения к полиномиальному Пусть ис1ая выборка (совокупность) содержит N элементов, каждый из которых
сдает одним из I свойств, что
JV = N j + N 2 +
*
1
■4- N t .
>аяткость того, что при выборе (без возвращения) п элементов выборка бусостоять из п = rii + п3 -|-----+
по аналогии с равенством (5*3*1) равна
Wnit
У
(
(Ж )-О
о
(5.3.4)
Второе обобщение г ипер геометрического распределения можно получить
следующим образом* Ранее мы видели, что последовательные исходы перестаг
ют быть независимыми, поскольку шарики не возвращаются обратно* Если
теперь каждый раз после вытаскивания шарика одного типа мы будем доба
влять в урну еще несколько шариков такого типа, то эта зависимость может
усилиться* Тогда получаем распределение Полис* Оно имеет особое значение
йри изучении эпидемических заболеваний, при которых возникновение очага
Эаболевалия увеличивает вероятность появления такого случая в будущем.
Пример 5.2. Применение гипергеометрического распределения для определе
ния объема зоологических популяций* Из пруда были выловлены и помечены
К рыб* Затем они были возвращены в пруд* Через некоторое время были вы
ловлены п рыб, к из которых оказались домеченными* Перед вторым отловом
в пруду содержалось всего ЛГ рыб, из которых помеченными были К штук* Beроятность нахождения к помеченных рыб среди п выловленных определяется
в соответствии с соотношением (5.3*1). Мы вернемся к этой задаче в примере
7.3*
■
100 Глава 5. Некоторые важные распределения
5.4. Распределение Пуассона
При изучении рисунка 5.3 складывается впечатление, что если п стремится к
бесконечности и в то же время пр = Л остается постоянным, то биномиальное
распределение сходится к некоторому фиксированному распределению. Пере
пишем соотношение (5.1.3) в виде
w ? = | ;; )PV ' fc =
гсft!(n - ft)! \ п )
^
— ^ п (п ~ *)(п ~ 2) ■• ■(гс - fc + 1) (1 - ^)"
ft!
^
* 'А
п '
(i-s)‘
В пределе все множители в дроби, стоящей справа, стремятся к единице. Кроме
того,
(1 “ А/п)" =
таким образом в пределе получаем
Jim И ? = /(* ) = ^ е - \
п—»с©
(5.4.1)
Величина /(А:) —вероятность, соответствующая распределению Яуассона. Оно i
представлено на рис. 5.6 для различных значений Л. Как и другие распре- ;
деления, с которыми мы встречались до настоящего момента, распределение
Пуассона определено только для целочисленных значений ft.
5.4. Распределение Пуассона 101
Это распределение удовлетворяет требованию, чтобы полная вероятность
та равна единице
Л2
А3
\
— е Л 1 + А + 2| + 3 5 + - - - J - е~леА = 1.
(5.4.2)
L -W = L
к
\
Л—0
fe-0
выражение в скобках в действительности является разложением в ряд Тейлора
*для функции еА.
Найдем теперь среднее, дисперсию и асимметрию для распределения Пуас
сона. Из определения (3.3.2) следует, что
00 \к
00 \к
\ \к - 1
00
.-Л
‘
r
W
m
v
^
*
A
*
-
А *
А »
■ вд =е Ф - л=е 4 '- л=е
^
tt.f * - » 1
о Jt
используя эти выкладки и равенство (5.4.2), имеем
Е(к) = А.
(5.4.3)
Найдем теперь £ (к 2). Аналогичным спопобом получаем математическое ожи
дание:
00
\fc
00
\fr—1
00
и, следовательно,
£?(k2) = А(А + 1).
(5.4.4)
Для вычисления дисперсии мы воспользуемся соотношениями (5.4.3) и (5.4.4).
Согласно формуле (3.3.16), имеем:
ст2(к) = Е(к2) - {Я(к)}г = Л(Л + 1) - As
(5.4.5)
(т2 (к) = А.
(5.4.6)
или
Рассмотрим теперь асимметрию (3.3.13) для распределения Пуассона. В соответствии с разд. 3.3 легко находим, что
Мз = £ { ( к - А ) 3} = А .
Тогда асимметрия (3.3.J3) равна
Мз
А
7=^ =л
(5.4.7)
т. е. при возрастании А распределение Пуассона становится в большей степени
симметричным. На рис. 5.6 показано распределение Пуассона для различных
102 Глава. 5. Некоторые важные распределения
значений А- В частности распределение с параметром А = 3 следует сравнить
с рис. 5.3.
Мы получили распределение Пуассона из биномиального распределения с
большим параметром п и постоянным значением А = пр, т. е. малым значением
р. Следовательно, его можно применять для таких процессов, когда происходит
большое количество событий, из которых лишь очень незначительное число
обладает некоторым интересующим нас свойством (т. е. большое количество
«испытаний», но малое число «успехов»).
j
j
;
j
Пример 5,3, Распределение Пуассона и радиоактивный распад независимых
друг от друга ядер. Рассмотрим радиоактивные ядро со средним временем ■
распада г и будем наблюдать за ним в течение времени Г < т . Вероятность
того что оно распадется в течение этого промежутка вермени, равна W <С 1.
Разобьем время наблюдения Т на п маленьких временных интервалов длины
t, таким образом Т — nt. Вероятность распада ядра в течение одного из таких
интервалов равна р ад Wfn. Будем теперь в течение времени Т наблюдать за .
радиоактивным источником, содержащим N ядер, распад которых происхо
дит независимо друг от друга; пусть мы зафиксировали число а\ распадов в
течение первого интервала вермени, а>2 распадов—во время второго интерва
ла, и т. д* Пусть /ь(Аг) — частота распадов, наблюдаемых в к-м интервале, где :
fc = 0 , 1 , , . То есть если
—число интервалов, на которых произошло к рас- '
падов, то fr(fc) — njc/n. В пределе при N —*оо и при больших п распределение
частот ft(fc) стремится к плотности распределения (5.4Л). Таким образом в
знаменитом эксперименте Р е з е р ф о р д а и Г е й г е р а были установлены стати
стические свойства радиоактивного распада.
■?
Подобным образом частота расположения к звезд в области небесной сфе
ры или к изюминок в куске фруктового пирога распределена в соответствии
с законом Пуассона, в отличие от частоты нахождения к животных конкрет- j
кого вида в некоторой географической области (по крайней мере для стадных ;
животных), поскольку в последнем случае не выполнено предположение о не- i
зависимости.
В качестве количественного примера для распределения Пуассона во мно
гих учебниках приводится число прусских кавалеристов, погибших в течение 20
лет от ударов лошадей. Пример этот изначально принадлежит ф о н Б о р т к е
вичу
(1898) [6], Мы предпочитаем представить вашему вниманию менее свя
занный со смертью пример, позаимствованный из лекции Д е С о л л а П р а й с [7] 1
Пример 5*4, Распределение Пуассона и независимость научных открытий. В
начале автор строит модель яблони с 1000 яблок и 1000 сборщиками фруктов,
у которых завязаны глаза и которые одновременно пытаются сорвать яблоко.
Поскольку мы имеем дело с моделью, то считается, что они не мешают друг
другу, однако может случиться, что двое или несколько из них будут пытаться
сорвать одно и то же яблоко в один и тот же момент времени. Количество
яблок, собранных одновременно fc людьми (fc = 0 , 1, 2, . . , ) , имеет распределение
'
!
'
;
5-5. Характеристическая функция распределения 103
Таблица 5Л. Одновременные научные открытия
и распределение Пуассона,
-it
■
t*,
Гf>
Количество
одновременных
открытий
0
1
2
3
4
5
> 6
Число случаев
одновременных
открытий
Предсказание
по закону
Пуассона
не определено
не известно
179
51
17
6
3
36S
368
184
61
15
3
1
^Пуассона. Д е С олла П р а й с установил, что количество научных открытий,
независимо сделанных дважды, трижды и т, д., также распределено по закону
^Нуассона, т е* в некотором смысле подобно модели со сборщиками яблок, у
- которых завязаны глаза (см, табл* 5.1), Создается впечатление, что ученые не
интересуются деятельностью своих коллег, Д е С олла П райс полагает, что
вто можно объяснить тем, что у ученых сильна мотивация написания статей,
V'-еюпри этом относительно низка потребность их чтения*
в
С.5. Характеристическая функция распределения
До настоящего момента мы рассматривали только действительные случайные
числа* Действительно, в разд, 3*1 мы ввели понятие случайной величины как
Й&йствительной переменной, связанной с некоторым событием* Не изменяя это
го определения, из двух действительных случайных величин можно формаль
но построить комплексную случайную величину:
г - х + iy*
(5.5.1)
Определим математическое ожидание комплексной случайной величины сле
дующим образом:
Е(z) = Я ( х) + Щ у)*
(5*5,2)
По аналогии с действительными случайными величинами, комплексные слу
чайные величины являются независимыми, если действительная и мнимая ча
сти одной случайной величины независимы от действительной и мнимой чат
стей другой случайной величины.
Если х —действительная случайная величина с функцией распределения
F(ar) = Р(х < т) и плотностью распределения вероятностей /( х ) , то определим
ее характеристическую функцию ip(t) как математическое ожидание величины
#cp{ifx):
(5*5*3)
<£>(£) = *E{exp(iix)}.
104 Глава 5. Некоторые важные распределения
Таким образом, если случайная величина непрерывна, то характеристическая
функция является интегралом Фурье с известными свойствами:
/
сю
(5.5.4)
exp(i £#)/(:?;) cb.
*сю
Для дискретной случайной величины из соотношения (3.3,2) получаем такую
характеристическую функцию:
^>(t) = ^2eKp(it^t)P(x = Xi).
(5.5.5)
Рассмотрим теперь моменты случайной величины х относительно начала ко
ординат
г
ЛСЮ
А„ = .Е(хп) = /
x nf ( x ) d x ,
(5.5.6)
J —СЮ
и получим, что Ап можно легко найти путем дифференцировании характери
стической функции п раз в точке t = 0:
v (n)(0 = d
= i”
У
хП
da;
и, сл едовател ьн о,
V<n>(0)=i"Art.
(5.5.7)
Бели теперь произвести простое преобразование переменной
у = х —х
(5.5,8)
и выписать характеристическую функцию
/
оо
exp{it(x —x ) }f { x ) da: = ip{t)e x p (-i t x),
(5,5.9)
'OO
то ее u-я производная (с точностью до i в некоторой степени) равна n-му мо
менту величины х относительно математического ожидания [см, (3.3,8)]:
^ п){0) = i
= iӣ {(x - *)"},
(5.5.10)
и в частности
°2(х) = -4 ,'(0 ).
(5.5.11)
Обращая преобразование Фурье (5,5,4), из характеристической функции мож
но получить плотность распределении вероятностей
1 Г°°
/ ( х) = — I exp{—itx)<p{t) dt,
2тг
(5.5,12)
5.5. Характеристическая функция распределения
105
о показать, что функция распределения однозначно определяется ее хаг
истической функцией* Это верно также для дискретных случайных ве~н* Имеем
f (Ь)- Г(«) =± Г
exp(i££>) - exp(ita)
<p(t)dt*
(5*5*13)
бывает удобнее использовать характеристическую функцию, нежели исую функцию распределения. Поскольку между ними существует взаимно
дачное соответствие, то при вычислениях в любой момент можно сделать
прямое, так и обратное преобразование*
"рРассмотрим теперь сумму двух независимых случайных величин
w = х + у*
характеристическая функция равна
= £[exp{it(x + y)}] = £{exp(iix)exp(ity)}.
лцая соотношение (3-5*13) на комплексные случайные величины, получаем
<Pv,{t) = S{exp(itx)}£{exp(ity)} =
(5.5.14)
£* характеристическая функция суммы независимых случайных величин равпроизведению соответствующих им характеристических функций*
Пример 5*5. Сложение двух случайных величин, распределенных по закону
Пуассона, с использованием их характеристических функций* Из соотноше
ний (5*5.5) и (5*4*1) получаем, что характеристическая функция для величины,
подчиняющейся распределению Пуассона, равна
со
СО
А*
(Aexp(it)V
= ^ e x p (iifc ) — ехр(-А) = е х р ( - А ) ^
fc !
*=о
к=0
= ехр(-А )ехр(А е‘*) = ехр{А(е'( - 1)}.
(5.5.15)
Найдем теперь характеристическую функцию суммы двух независимых слу
чайных величин, распределенных по закону Пуассона с параметрами Ai и Aj:
<Amm(i) = e x p ^ f e 1* - 1)}ехр{Л2(е1* - 1)}
= ехр{(А1+А2)(еи - 1 ) } .
(5.516)
Она также имеет вид (5*5*15)* Следовательно, сумма независимых случайных
Величин, распределенных по закону Пуассона, сама также имеет распределение
Пуассона. Ее среднее равно сумме средних значений отдельных слагаемых* ■
106 Глава, Ь. Некоторые важные распределения
5.6. Стандартное нормальное распределение
Плотность распределения вероятностей для стандартного нормального рас
пределения определяется как
f ( x ) = 4,0(x ) = - L = e - * ^ 2.
(5.6.1)
Эта функция представлена на рис. 5.7а. Она имеет колоколообразный вид с
максимумом в точке х = 0. Из приложения D.1 известно, что
e” **/2 da; = \/2тг,
(5.6.2)
таким образом, как и требовалось, интеграл от функции фо(х) равен единице.
Из симметрии рис. 5.7а, или из нечетности подынтегральной функции, можно
прийти к выводу, что математическое ожидание равно
—
[ хе
J-co
*3/2 <1я = 0.
(5.6.3)
Рис. 6.7. Плотность распределения вероятностей (а) и функция распределения (Ь)
стандартной нормальной величины.
5-7. Общее нормальное (гауссовское) распределение
107
Интегрированием по частям получаем, что дисперсия равна
а2 =
1
Г
х 2 е х I2 dx
\ /Г2тт ] - (
1
- х е ж^ 2
+
\/2ж { L
"ОО
■ ^ d a rU l,
(5.6.4)
— оо
так как выражение в квадратных скобках в пределах интегрирования обраща
ется в нуль, а интеграл, стоящий в фигурных скобках, вычисляется согласно
формуле (5.6.2).
Функция распределения стандартной нормальной величины
F (x) = Ф 0(х) = - 2 =
v
Г
2 tг J-oo
e~t2/2dt
(5.6.5)
приведена на рис. 5.7Ь. Ее нельзя выразить аналитически. Численные значения
этой функции распределения приведены в таблице приложения С.4.
5.7, Общее нормальное (гауссовское) распределение
Стандартизованное распределение из предыдущего раздела имеет характери
стики х ~ Е(х) = 0, сг2(х) — 1, т. е. величина х обладает свойствами стандарти
зованной случайной величины и в соответствии с соотношением (3.3.17). Если
теперь в формуле (5.6.1) заменить х на (х —а)/6, то получим плотность рас
пределения вероятностей общего нормального или гауссовского распределения
/ (х) = « х ) = ^ е х р { - Ё ^ } 1
(5.7.1)
где
х = а,
<т2(х) — Ь2.
(5.7.2)
Из равенства (5.5.4) получаем характеристическую функцию для нормаль
ного распределения (5.7,1):
1
Г°°
(x — a)*
2b2
dx.
(5.7.3)
1 f°°
1
ip(t) — — ~ / ехр{ —- и 2 + it(bu 4- a)} du
v 27T J —оо
2
1
f°°
1
— —= e x p ( ita ) /
ехр{ —- u 2 + itbu} du.
(5.7.4)
p(i£x) exp
Используя замену и = (х —а)/6, получаем:
у27Г
<7 — со
2
108 Глава 5. Некоторые важные распределения
Дополнив многочлен под знаком экспоненты до полного квадрата, интеграл
можно переписать в виде
/
о°
^
exp{“ - u 2 + itbu] du ~
- OG
г°°
1
1
exp{ —~(н —itb)2 — - t 2b2}d u
J
^
— OO
^
^
1
1
— exp{ —- t 262} /
e x p { -~ (u - itb)2} du.
^
J—oo
^
(5.7.5)
При r — u — \tb последний интеграл принимает вид
roo —\tb
exp{ —^ г 2} dr.
z
—oo—itb
Подынтегральная функция во всей плоскости комплексной переменной г не
имеет особых точек. Следовательно, согласно теореме о вычетах, интеграл по
любому замкнутому контуру от этой функции равен нулю. Рассмотрим контур,
проходящий вдоль действительной оси от г — —L до г = L, затем параллельно
мнимой оси от г — L до г ~ L — ИЬ, оттуда параллельно действительной оси в
обратном направлении до г = —L —itb и, наконец, обратно к исходной точке
г ~ L, В пределе при L —►оо интеграл стремится к нулю вдоль тех частей
контура, которые параллельны мнимой оси. Тогда имеем
/
оо—Hb
-оо—itb
^
Г°°
^
e x p { - - r 2} d r = /
ехр{ —- r 2}dr,
^
J —оо
^
т. е. можно распространить наш интеграл на всю действительную ось. Этот
интеграл вычислен в приложении D.1 и равен
/ ОО
|
ехр{ —- г 2} dr — v/2^.
(5.7.6)
-оо
^
Подставляя это соотношение в равенства (5.7.5) и (5.7.4), в итоге получаем,
что характеристическая функция для нормального распределения равна
<p{t) = ехр(Иа) ехр(—^b2t2).
/d
(5.7.7)
Для случая а = 0 отсюда получаем следующую интересную теорем у:
Нормальное распределение со средним значением,, равным нулю, имеет ха
рактеристическую функцию, которая сама (с точностью до нормирующего
коэффициента) имеет вид функции плотности нормального распределения.
Произведение дисперсий эт их двух функций равно единице.
Если теперь рассмотреть сумму двух независимых нормально распределен
ных случайных величин, то непосредственно из соотношения (5.5.14) видно,
что характеристическая функция такой суммы вновь имеет вид (5.7.7). Следо
вательно, сумма независимых нормально распределенных случайных величин
сама является нормально распределенной случайной величиной. Распределе
ние Пуассона ведет себя аналогичным образом (см. пример 5.5).
5.8. Количественные характеристики нормального распределения
109
5.8. Количественные характеристики нормального
распределения
На рисунке 5.7а представлены плотность распределения вероятностей стан
дартного гауссовского распределения фо(х) и соответствующая функция рас
пределения. Путем простых вычислений можно определить, что точками пе
региба для (5.6.1) являются х = ±1. [В случае обобщенного гауссовского рас
пределения (5.7.1) точки перегиба находятся в точках х — а =Ь 6.] Значение
функции распределения Ф0 (х) в точке х представляет собой вероятность того,
что случайная величина х принимает значение, меньшее, чем х:
Ф0{х) - Р(х < х).
(5.8.1)
Из свойства симметрии имеем
Р {|х| > х) = 2Ф0( - |я |) = 2{1 - $ o (N )}
(5.8.2)
или обратно, вероятность попадания случайной величины в интервал длины 2х
с центром в нуле (с центром, совпадающим с ее математическим ожиданием),
равна
Р { |х| < х ) = 2Ф0(\х\) - 1.
(5.8.3)
Поскольку интеграл (5.6.5) трудно вычислить, то обычно значения выражений
(5.8.1) и (5.8.3) находят из статистических таблиц, например из таблиц 1.2 и
1.3, находящихся в приложении.
Теперь можно распространить это соотношение на общее гауссовское рас
пределение, заданное согласно формуле (5.7.1). Его функция распределения
равна
Ф (.т)= Ф 0 ( ^ ) .
(5-8.4)
Пусть необходимо найти вероятность попадания случайной величины внутрь
(или вовне) заданного интервала, длина которого кратна a — 6, с центром в
точке ее среднего значения:
Р ( | х - а | < пег) = 2Ф0
nb
Т
— 1 = 2Ф0(п) — 1.
(5.8.5)
Из таблицы 1.3 находим:
Р (|х - а|< сг) = 68.3 % ,Р(|х - а| > а) = 31.7%,
Р (|х — а|< 2а) = 95.4 % ,Р(|х - а\ > 2а) = 4.6%,
Р(|х —■ а\< За) = 99.8 % ,Р(|х - а| > Зсг) = 0.2%.
(5.8.6)
Как будет показано позже, часто можно предположить, что ошибки изме
рений некоторой величины распределены в соответствии с гауссовским распре
делением со средним нуль. Это означает, что вероятность получения значения
между х и x + dx равна Р (х < х < x + dx) —ф(х) d x . Параметр а распределения
ф(х) называется стандартным отклонением или стандартной ошибкой. Если
ПО Глава 5. Некоторые важные распределения
-------- о
Р
Рис. 5.8. Квантили стандартного нормального распределения.
известна стандартная ошибка прибора и выполнено однократное измерение, то
соотношение (5.8.6) говорит, что истинное значение измеряемой величины ле
жит в интервале, границы которого находятся в точках «измеренное значение
плюс (или минус) стандартная ошибка», с вероятностью 68.3%. Поэтому на
практике для того, чтобы увеличить эю процентное соотношение, стандарт
ную ошибку обычно умножают на произвольный, множитель. (I? примере мож
но получить около 99.8%, если взять в качестве множителя 3.) Такой метод,
однако, может направить нас на ложный путь и зачастую неверен. Если этот
множитель не фиксирован, то становится невозможным или неминуемо приве
дет к ошибкам сравнение различных измерений одной и той же величины и в
особенности вычисление средневзвешенного значения (см. пример 9.1).
Особый интерес представляют квантили [см. (3.3.25)] стандартного нор
мального распределения. По определению для функции распределения (5.6.5)
получаем
Р (х р) -- Р(х < х р) — Ф(){хр),
(5.8.7)
Следовательно, квантиль х р можно определить при помощи обратной функции
хр = Щ Р)
(5.8.8)
к функции распределения Фо(хр). Ее значения в приложении С.4 найдены при
помощи численных методов и приведены в таблице 1.4. На рисунке 5.8 приведен
график этой функции.
Рассмотрим теперь вероятность
5.9. Центральная предельная теорема
111
того, что случайная величина, имеющая стандартное нормальное распределе
ние, по модулю отличается от нуля меньше, чем на х . Поскольку
/
- \ + I
ОС
Фо(х )dx
■ОО
Фо(х) dx = i + i p ( x ) = ^ (Р (х ) + 1),
является обратимой функцией, то квантили функции распределения Р (х)
можно получить, подставив { Р{ х) I 1)/2 в качестве аргумента в функцию,
обратную к Р:
хр
-
П( Р)
=
П( ( Р
+
1)/2).
(5.8.10)
Значения этой функции приведены в таблице 1.5.
5.9. Центральная предельная теорема1
Докажем теперь следующую важную теорему. Если х7; являются независимыми случайными величинами со средними значениями а и дисперсиями Ь2, то
случайная величина
(5.9.1)
г—]
имеет распределение с
В{х) — п а,
<т“ (х) — nb7.
(5.9.2)
Тогда величина
1х<»>=Лх>
п
г—1
*= п
(5.9.3)
приближенно нормально распределена с параметрами
Е(£) — а,
а 2( С ) - Ь 2/п .
(5.9.4)
Чтобы это доказать, предположим для простоты, что все х7 одинаково
распределены. Если обозначить характеристическую функцию для х7 за <р(£),
то сумма п случайных величин имеет характеристическую функцию {<£(£)}"*
Предположим теперь, что а = 0. (К этому случаю можно перейти от общего
путем простой замены координат х- = х* —а.) Из соотношения (5.5.10) получаем
первые две производные от <p(t) в точке t — 0
/(0) = о,
<р"(0 ) = -<т2.
1 Эвристическим соображениям относительно смысла и доказательства центральной пре
дельной теоремы, приведенным в данном разделе, можно придать точный математический
смысл. По этому поводу см., например, Гнеденко Б.В. Курс теории вероятностей. — М.,
УРСС, 2001.
112
Глава 5. Некоторые важные распределения
Следовательно, можно выполнить разложение
Давайте вместо Х{ возьмем теперь в качестве случайной величины
хг
_ Хг - a
by/n
by/n
Если теперь рассмотреть фиксированное п, то это будет означать просто сдвиг
и изменение масштаба. Соответствующая характеристическая функция равна
или
Члены более высокого порядка имеют степень не выше, чем п " 2. Если мы
теперь перейдем к пределу и используем
(5.9.5)
то получим, что
или
(5.9.6)
Это, однако, в точности характеристическая функция стандартного нормаль
ного распределения фо(и). Следовательно, имеем Е ( и) = 0, гг2(и) —1. Из соот
ношений (5.9.5) и (3.3.15) напрямую приходим к доказательству теоремы.
Пример 5.6. Нормальное распределение как предельный случай биномиального
распределения. Предположим, что поведение отдельных случайных величин х*
из выражения (5.9.1) описывается простейшим распределением, заданным со
гласно соотношениям (5.1.1) и (5.1.2), т. е. они могут принимать либо значение
1 (с вероятностью р), либо 0 (с вероятностью 1 —р). Следовательно, Е (хг) = р,
<т2(хг) —р(1 —р). Тогда случайная величина
п
(5.9.7)
г—1
5.9. Центральная предельная теорема
113
Рис. 5.9.
В ел и ч и н а Р ( и ^ ) / А и ^ д л я р а зл и ч н ы х зн ач ен и й д и с к р ет н о й случ ай н ой
величины u (n) при возр астан и и п.
имеет биномиальное распределение, Р ( х ^ = А:) — W £ [см. соотношения (5.1.3),
(5.1.6), (5.1.7)]. Так же как и в формуле (5.9.5) давайте рассмотрим распреде
ление величины
u(”> = у
Хг~ р
y/np( 1 - р )
1
ч/пр(1 - р)
п
У 2 * i-n p
»=i
(5.9.8)
Очевидно, что Р(х<п> ~ к) — Р
= (к —n p )/y /n p ( 1 —р)^ = W£. Однако
при возрастании и эти значения начинают располагаться все ближе друг к
другу на оси возможных значений Фп\ Обозначим расстояние между двумя
соседними значениями Фп) за zW n). Тогда величина Р (и ^ ) /
в пределе
становится плотностью распределения вероятностей непрерывной случайной
величины. В соответствии с центральной предельной теоремой это должно
быть стандартное нормальное распределение. Этот ф акт проиллюстрирован
на рис. 5.9, где Р (Ф П))/Л Ф П) представлена для различных возможных значе
ний и(п).
■
Пример 5.7. Модель ошибок Лапласа. В 1783 г. Л А П Л А С сделал следующие за
мечания относительно происхождения ошибок наблюдений. Предположим, что
истинное значение измеряемой величины равно т о . Пусть теперь измерения
нарушаются за счет большого числа п случайных причин, каждая из которых
приводит к ошибке величины е. Каждое такое нарушение приводит с равной
вероятностью к отклонению измеренного значения от исходного в одном из
двух направлений, т. е. +£ или —е. Тогда ошибка измерений состоит из суммы
отдельных отклонений. Очевидно, что в этой модели распределение вероятно-
114
Глава 5. Некоторые важные распределения
сти ошибки измерений будет задаваться биномиальным законом. Тем не менее
интересно исследовать эту модель более подробно, поскольку она напрямую
приводит к знаменитому треугольнику Паскаля.
На рисунке 5.10 показано, каким образом строится распределение вероят
ностей для этой модели. В исходной точке нет нарушений и вероятность полу
чения при измерении значения то равна единице. При одном нарушении эта
вероятность распадается на равные части между двумя соседними возможны
ми значениями т о + £ и то — е. То же самое происходит1при каждом последу
ющем нарушении. Безусловно, отдельные вероятности, отвечающие одному и
тому же измеренному значению, необходимо складывать.
Количество
нарушений
71
Отклонение ОТ и ст и н но го з и ач е н и я
-З е
-2 е
и
0
1
т
/
i
2
\
1
2
4
1
8
1
1/
4 ’ 4
1
\
Рис. 5.10.
ем.
\
1
2
1
3
+ 2е
+ t:
I Iт
814
3
s'
2
\ы
1
4
\
) 1У
4’ S
■)
8
\.
\
i
8
С вязь м е ж д у м од ел ь ю ош и бок Л а п л а с а и би н ом и альн ы м р а сп р ед ел ен и
Каждая строка в полученном треугольнике состоит из значений распреде
ления W £(k = 0 ,1 ,...,п ) , задаваемого согласно формуле (5.1.3), для случая
р = q — 1/2. Путем умножения на l / ( p kqn~k) ~ 2П можно перейти к стро
кам, состоящим из биномиальных коэффициентов треугольника Паскаля (см.
приложение В).
Такой треугольник леко получить из примера 5.6 при помощи незначитель
ных изменений в выражении (5.9.8) и подстановки р = 1/2. При п —►оо слу
чайная величина
(«) _ 2 (ЕГ=1£х» ~ п£/ 2)
\[П£
имеет нормальное распределение с математическим ожиданием нуль и стан
дартным отклонением у /п е /2. Таким образом гауссовские ошибки измерений
могут происходить в результате большого числа незначительных независимых
нарушений.
■
5.10. Многомерное нормальное распределение
115
Во многих вычислениях, в частности при вычислениях с помощью мето
да наименьших квадратов, большое значение имеет тот факт, что ошибки
измерений распределены по гауссовскому закону. Тем не менее нормальное
распределение не является законом природы для распределения ошибок из
мерений. Причины погрешностей эксперимента могут быть очень сложными.
Поэтому невозможно найти функцию распределения, описывающую поведе
ние ошибок измерений для всех возможных экспериментов. В частности, не
всегда, можно обеспечить выполнение свойств симметрии и независимости. В
каждом конкретном случае необходимо проверять, можно ли смоделировать
ошибки измерений при помощи гауссовского распределения. Проверку можно
осуществить, например, посредством применения к распределению измеряемой
величины критерия хи-квадрат (см. разд. 8.7). Перед тем как выполнять тру
доемкие вычисления, результаты которых будут иметь смысл только в случае,
если ошибки имеют гауссовское распределение, всегда необходимо проводить
проверку распределения погрешностей эксперимента.
5.10. Многомерное нормальное распределение
Рассмотрим вектор х, состоящий из п случайных величин
х = ( х ь х 2 , . . . , Х П).
Определим совместную плотность распределения вероятностей величин яд, от
вечающую нормальному распределению, как
ф(х) = feexpj- "(ас -- а ) 1В (х —а)} = к ехр{ —
£
&
(5.10.1)
где
д(х) = (ж - a ) vB (x - а).
'
(5.10.2)
Здесь а является вектором, состоящим из п компонент, а В —симметричная и
положительно определенная матрица размер а п х п . Поскольку функция ф(х)
очевидно симметрична относительно вектора ас — а, то
/■оо
f
(х — а)ф(х) daci dx2 . .. d x n — 0,
(5.10.3)
—оо
то есть Е (х — а) = 0 или
Е{х) = а.
(5.10.4)
Следовательно, вектор математического ожидания равен вектору а.
Продифференцируем теперь равенство (5.10.3) по а:
/
ос;
г оо
■- /
■■ОО
[./ - (ас —а)(ас —а ) 1 В]ф(х) daci dac2 ... dxn = 0.
./ — оо
Это означает, что математическое ожидание величины, стоящей в квадратных
скобках, обращается в нуль: Е {(х —а)(х —а ) т } В — I или
(5.10.5)
С = Е{Ы - а)(х - а )т } = В ~ 1.
116
Глава 5. Некоторые важные распределения
Сравнивая это соотношение с формулой (3.6.19), можно увидеть, что С явля
ется ковариационной матрицей случайных величин х = (x i,x 2, . .. ,хп).
В связи с тем что нормальное распределение имеет большое практическое
значение, хотелось бы более подробно изучить случай двух переменных. В
частности нас интересует корреляция этих переменных. Имеем:
С = В~1 —
<Ул
c o v ( x b x 2)
cov(xb x2)
crz
(5.10.6)
Обращая матрицу, получаем, что
В
о\(т\
1
/
- cov(xb x2)
(То
- c o v ( x b x 2 ) 2 V - c o v ( x b x 2)
(Тл
(5.10.7)
Отсюда видно, что матрица В является диагональной, если ковариации обну
ляются. Тогда имеем
Во =
1/ ° f
О
0
1м 2
(5.10.8)
Если мы подставим J50 в выражение (5.10.1), то получим — как и ожидали —со
вместную плотность распределения вероятностей двух независимых нормаль
но распределенных случайных величин в виде произведения двух плотностей
нормальных распределений:
ф = к ехр
1 (жх - ах)2
2
а\
ехр
1 (Х2 - d'l)2
2
а\
(5.10.9)
В этом простом примере константа к принимает значение ко = 1/ ( 27тсг1сг2), ко
торое можно определить путем интегрирования функции (5.10.9) или просто
посредством сравнения с соотношением (5.7.1). В общем случае для и пере
менных с ненулевыми ковариациями имеем
к —
В
(2тг)п
det
(5.10.10)
Здесь det В — определитель матрицы В. Если случайные величины не явля
ются независимыми, т. е. если ковариации не равны нулю, то выражение для
плотности нормального распределения двух переменных будет иметь более
сложный вид.
Рассмотрим нормированные величины и* = (х* — а^/сг*, % = 1,2, и ис
пользуем коэффициент корреляции р = c o v ( x i , x2 )/<7 i <72 — cov(ui,u2). Тогда
выражение (5.10.1) принимает простой вид
Ф{и\,и 2 ) = к е х р (—^ и тВ и ) — к ехр
(5.10.11)
где
В =
1
-Р
(5.10.12)
5.10. Многомерное нормальное распределение
117
Р и с . 5 .1 1 . Э л л и п сы равны х в ер оя тн ост ей .
Кривые постоянного уровня плотности распределения вероятностей соот
ветствуют постоянным значениям экспоненты в выражении (5.10.11):
1
1
(ui + u\ — 2u\U 2 p) = —~ 9 Ы) = const.
2 а - p 2)
(5.10.13)
Рассмотрим случал g(u) — 1.
В исходных переменных равенство (5.10.13) примет вид
Ы —сыУ
-2 р
xi - а\ х 2 - а2
(х2 - а2)
+
-1 -Р 2
(Тп
^2
(5.10.14)
Это уравнение эллипса с центром в точке (ах,а2). Главные оси эллипса
образуют угол а с осями х\ и х 2. Этот угол и полудлины р\ и р2 диаметров
можно определить из соотношения (5.10.14), используя известные свойства
конических сечений:
tg 2 а =
Pi
Р2
2рохо2
2-------.
9
’
Л - СТ2
^ 2 ( 1 - р 2)
сг| cos2 а —2ptj 1 (J2 sin а cos а + <т2 sin2 а
____________ ^ 1 ( 1 - Р 2)____________ _
<т| sin2 a + 2pcji 02 sin a cos а + <т2 cos2 a
(5.10.15)
(5.10.16)
(5.10.17)
Эллипс с такими характеристиками называется эллипсом равных вероятно
стей двумерного нормального распределения. Некоторые из таких эллипсов
представлены на рис. 5.11. Эллипс равных вероятностей всегда лежит внутри
прямоугольника с центром в точке (0 1 , 0 2 ) и со сторонами, равными удвоен
ным величинам стандартных оклонений <t i и стг. Он касается прямоугольника
118
Глава 5. Некоторые важные распределения
в четырех точках. В граничных случаях р = ±1 эллипс становится одной из
двух диагоналей этого прямоугольника.
Из выражения (5.10.14) видно, что другие линии постоянного уровня плот
ности распределения вероятностей (для g ф 1) также являются элипсами, все
они концентрические, подобны эллипсу равных вероятностей и располагают
ся внутри (снаружи) него для большего (меньшого) значения плотности рас
пределения вероятностей. Следовательно, двумерному нормальному распреде
лению соответствует поверхность в трехмерном пространстве (:сь :г2, ф) (см.
рис. 5.12), чьи горизонтальные сечения являются концентрическими эллипса
ми. Д ля максимального значения плотности распределения вероятностей 'такой
эллипс превращается в точку (ai, a2). Вертикальные сечения, проходящие че
рез его центр, имеют вид гауссовского распределения, разброс которого прямо
пропорционален тому диаметру эллипса равных вероятностей, вдоль которо
го проходит сечение. Вероятность нахождения нары случайных величин хь х2
внутри эллипса равных вероятностей равна интегралу
/ кф(х) d x = 1 —е з = const,
(5.10.18)
JА
где область интегрирования А является внутренностью эллипса равных веро
ятностей (5.10.14). Равенство (5.10.18) получено путем преобразования пере
менных у = Т ж, где Т — В ~1, в распределении ф(х). Полученное в результате
распределение имеет параметры <?(у\) = сг(у2) = 1 и cov(?/b y2 ) ~ 0, т. е* имеет
вид (5.10.9). Таким образом область интегрирования преобразуется в единич
ный круг с центром в точке ( a i,a 2).
Когда мы рассматривали нормально распределенные ошибки измерения не
которой величины, то показали, что интеграл по области a —a < х < a + о
от функции плотности распределения вероятностей одномерной гауссовской
случайной величины не зависел от <т. В случае двух переменных в роли такой
области выступает эллипс равных вероятностей, заданный при помощи <т; , <т2
и р, а не прямоугольник (как иногда неправильно полагают), в который вписан
эллипс равных вероятностей на рис. 5.11. Роль эллипса равных вероятностей
видна также из рис. 5.13. Точки 1 и 2, которые лежат на границе эллипса
равных вероятностей, соответствуют одному и тому же значению плотности
распределения вероятностей (Р(1) = Р (2) = Ре), хотя расстояние от середины
эллипса до точки 1 меньше. Кроме того, в точке 3 плотность распределения
вероятностей больше, чем в точке 4 (Р(4) < Ре, Р(3) > Рп), даже несмотря на
то, что точка 4 располагается ближе к центру ( a i,a 2), чем точка 3.
Для трех переменных вместо эллипса равных вероятностей получаем элли
псоид равных вероятностей, а для п переменных —гиперэллипсоид в п-мерном
пространстве (см. также разд. А.12). В соответствии с нашими построениями
эллипсоид равных вероятностей является гиперповерхностью в n-мерном про
странстве, на которой функция д(х) в экспоненте нормального распределения
(5.10.1) имеет постоянное значение д(х) — 1. Для других значений д(х) = const
получаем подобные эллипсоиды, которые лежат внутри (д < 1) или снару
жи (д > 1) эллипсоида равных вероятностей. В разд. 6.б будет показано, что
5.10. Многомерное нормальное распределение
119
Р ис. 5 .1 2 . П л о тн о сти р а с п р е д е л е н и я в ер о я т н о ст ей д в у м е р н ы х гауссов ск и х р асп р е
делений (слева) и со о тв етств у ю щ и е эл л и п сы равны х в ер о я т н о ст ей (сп р а в а ). Т р и р я д а
графиков на р и сун к е о тл и ч а ю т ся м е ж д у собой только ч и сл ен н ы м и зн а ч ен и я м и ко
эффициента к ор р ел я ц и и р .
х2
Р ис. 5 .1 3 . С р авнение зн ач ен и й п л о т н о ст ей
распределения в ер оя тн ост ей д л я р а зл и ч н ы х т о
чек из д в у м ер н о го гауссовского р а с п р е д е л е н и я
(Pi = Р2 = Ре, Рз > Ре,
Ра
< Ре).
xt
120
Глава 5. Некоторые важные распределения
функция д(х) имеет хи-квадрат распределение с п степенями свободы, если
величина х распределена нормально (5.10.1). Следовательно, вероятность на
хождения точки х внутри эллипсоида д = const равна
w = / Э/(х2;п)ах2=р(^’1)-
(5-10Л9)
Здесь Р — неполная гамма-функция, определенная в разд. D.5. То есть при
д = 1 для эллипсоида равных вероятностей в n-мерном случае эта вероятность
составляет
W„ = P ( j , i ) .
(5.Ю.
Численные значения этой величины для небольших п таковы:
Wi = 0.682 69,
W4 = 0.090 20,
W2 = 0.393 47,
W b = 0.037 34,
W3 = 0.198 75,
W 6 = 0.014 39.
При возрастании n эта вероятность быстро убывает. Для того чтобы для раз
личных п можно было определить области, соответствующие равновероятным
значениям, фиксируют величину W в левой части формулы (5.10.19) и нахо
дят соответствующее ей значение д. Тогда д является кваитилыо уровня W для
хи-квадрат распределения с п степенями свободы (см. также приложение С.5),
9 = X w (n )•
(5.10.21)
Эллипсоид, соответствующий этому значению д и с вероятностью W содержа
щий случайную величину х, называется доверительным эллипсоидом уровня
W . Это нужно понимать следующим образом: к примеру, для W = 0.9 90%
возможных значений случайной величины х лежат внутри доверительного эл
липсоида уровня 0,9.
Дисперсия a f или стандартное отклонение Л г = Oi в случае п переменных
по-прежнему характеризуют степень рассеяния случайной величины. Вероят
ность нахождения случайной величины х; в пределах а* —ст* < х; < а; + щ равна,
как и раньше, 68.3%, вне зависимости от количества переменных п. Это, од
нако, выполнено лишь в случае, когда не наложено никаких ограничений на
значение любой из оставшихся переменных xj, j Ф i.
5.11. Свертка распределений
5.11.1. Интегралы типа свертки
В различных случаях мы уже рассматривали суммы случайных величин, в
частности, при доказательстве центральной предельной теоремы, и определи
ли, что полезным инструментом при их анализе является характеристическая
функция. Теперь нам хотелось бы рассмотреть распределение суммы двух слу
чайных величин, однако для большей ясности мы не будем использовать ха
рактеристическую функцию.
5 .1 1 .
Рис. 5.14. О бл асть и н т егр и р о в а н и я
функции F(u) в вы р аж ен и и (5 .1 1 .4 ).
Свертка распределений
121
для
Предметом наблюдений в экспериментах зачастую является сумма двух
случайных величин. Нас может интересовать, например, угловое распределе
ние вторичных частиц, полученных при распаде элементарных частиц. Его
часто используют для определения спина частиц. Наблюдаемый угол распре
делен как сумма двух случайных величин, а именно угла распада и ошибки
его измерения. В этом случае говорят о свертке двух распределений.
Обозначим исходные случайные величины за х и у, а их сумму за
и = х + у.
(5.11.1)
Необходимым условием для дальнейших рассуждений является независимость
исходных переменных. Если это выполнено, то совместная плотность распре
деления вероятностей равна произведению отдельных плотностей
f ( x , y ) = f x ( x ) f v (y).
(5.11.2)
Если мы теперь хотим найти функцию распределения величины и, т. е.
F(u) = Р (и < и) = Р(х 4- у < и),
(5.11.3)
то ее можно получить путем интегрирования выражения (5.11.2) по заштри
хованной области А на рис. 5.14;
F (u ) =
рр
/ / fx(x)fy(y)dxdy =
J JA
/
роо
ри—X
/
f x (x) d x
fv(y)dy
J —oo
J —oo
pu—y
oo
f v ( y ) dy /
f x {x) dx.
(5.11.4)
J - OO
-OO
Дифференцируя функцию распределения, получаем плотность распределения
вероятностей для случайной величины и:
dF(u)
/(« ) = du
OO
f x( x) f y( u - х) dx
OO
fy(y)fx{u-y)dy.
— OO
(5.11.5)
122
Глава 5. Некоторые важные распределения
Если х или у, либо обе эти величины, определены только в ограниченной обла
сти, то равенство (5.11.5) остается верным. Пределы интегрирования при этом
могут, однако, быть конечны. Рассмотрим различные случаи:
(а) 0 < х < оо ,
—оо < у < оо:
S x { u - y ) f v{y)dy.
/( « ) = [
г ОО
(Поскольку у = и —X и при .X,m i n = 0 получаем, что утЛХ = и.)
(5.11.6)
—
(Ь) 0 < х < оо ,
0 < у < оо:
/(« ) = [ f x(u - y)fy(y) dy.
Jo
(с) а < х < Ь ,
(5.11.7)
—оо < у < оо:
/( « ) =
f
f x { x ) f y ( u - x) dx.
(5.11.8)
Ja
В следующем примере мы рассмотрим случай (d), когда обе величины х и у
ограничены и снизу, и сверху.
Пример 5.8. Свертка равномерных распределений. При
/*(*) =
1, О < х < 1
Ов остальных случаях
И
fy{y) =
1, о < у < 1
О в остальных случаях
из соотношения (5.11.8) получаем f ( u) — f* f y(u - х) dx. Подставим v = и —х,
dv — —dx и получим
f ( u) = - f
f y{ v ) d v = f
JU
fy{v)Av.
(5.11.9)
JU~ 1
Понятно, что 0 < и < 2. Рассмотрим теперь по отдельности два случая:
ри
ги
(a) 0 < u < 1:
f i ( u ) = / f y{v) dv = / du = и,
Joг
Jo x
(5.11.10)
(b) 1 < u < 2:
/г(м) = /
f y(v) dv = / dv = 2 - u.
J U~1
J u —1
Отметим, что нижний (верхний) предел интегрирования не может быть мень
ше (больше), чем О (1). В результате получаем треугольное распределение (см.
рис. 5.15).
Если снова произвести свертку полученного результата с: равномерным распределенем, т. е. если и будет равна сумме трех независимых равномерно рас
пределенных случайных величин, то тогда получим, что
{
\ и 2,
0 < и < 1,
~(—2и2 + 6а - 3), 1 < и < 2,
£ ( u - 3 ) 2,
2<и<3.
(5.11.11)
5.11. Свертка распределений
123
m
(а )
У
Рис. 5.15.
С вертка равн ом ер н ы х р а с п р е
делений. П л отн ость р а с п р е д е л е н и я вер о
ятностей д л я сум м ы и р ав н ом ер н о р а с п р е
деленных сл уч ай н ы х велич ин х: (а) и = х,
(Ь) и = х + х, (с) и — х 4- х + х.
✓
ч
Ч
У
/
ч
\
/
\
\
V
'
у
^
^
\
V
~
4
0
1
2
' **4.
^
3
Доказательство этого факта предоставляется читателю. Это распределение со
стоит из трех параболических частей (см. рис. 5.15) и похоже на гауссовское
распределение, как и ожидалось согласно центральной предельной теореме. ■
5.1L2. Свертка с нормальным распределением
Предположим, что величину х, являющуюся объектом эксперимента, можно
рассматривать как случайную величину с плотностью распределения вероят
ностей f x {x). Она измеряется с ошибками измерений у, которые распределены
нормально со средним нуль и дисперсией а 2. Результатом измерений является
сумма
и = х + у.
(5.11.12)
Ее плотность распределения вероятностей равна [см. также (5.11.4)]
/(ц ) =
- [
fx{x) ex p [-(u —х) 2/ 2 о 2] dz.
л/2л-<т J-oo
(5.11.13)
Выполнив большое количество измерений, можно экспериментально опреде
лить f(u). Однако исследователя интересует функция / х(;г). К сожалению,
уравнение (5.11.13) в общем виде нельзя разрешить относительно / Х(х). Это
можно сделать только для ограниченного класса функций f(u). Поэтому, как
правило, приходится решать эту задачу другими способами. Из предыдущих
измерений или из теоретических выкладок имеется некоторое представление о
виде функции / Х(х), так, например, можно предположить, что f x (x) соответ
ствует равномерному распределению, границы а и 6 которого, однако, неизвест
ны. Тогда выполняется свертка (5.11.13), полученная функция f ( u) сравнива
ется с результатами эксперимента и таким образом определяются неизвестные
параметры (в нашем примере это а и Ь).
Во многих случаях невозможно даже аналитически произвести интегриро
вание в формуле (5.11.13). Тогда применяют численные методы, например ме
тод Монте-Карло. Иногда полезные результаты дают приближения (см. пример
5.11). Поскольку во многих экспериментах большое значение имеет свертка с
нормальным распределением, то мы рассмотрим несколько соответствующих
примеров.
124 Глава 5. Некоторые важные распределения
Пример 5.9. Свертка равномерного и нормального распределений. Используя
соотношения (3.3.26) и (5.11.8) и подставляя v = {х — и ) / о , получаем, что
/(« ) = ■ 1 ■ J о —a
[ e x p [ - ( u - x)2/2(j2] d i
Ja
i
i
г {ь- и)/сг
, 1 2u
= ■:-------- 7=r= /
expf —- v ) av,
Ь — a y /2 lT J { a - u ) /< 7
2
Функция Фо уже была определена в соотношении (5.6.5). На рисунке 5.16 пред
ставлены результаты для а = 0, 6 = 6, сг = 1. Если \Ь — а\
а (как в случае
на рис. 5.16), то один из членов, стоящих в скобках в формуле (5.11.14), равен
либо 0, либо 1. В точке и = а скачок вверх равномерного распределения за
меняется функцией нормального распределения со стандартным отклонением
а (см. также рис. 5.7). При и = b скачок вниз становится его «зеркальным
отражением».
■
Рис. 5.16. Свертка равномерного и гауссовского распределений.
Пример 5.10. Свертка двух нормальных распределений. «Квадратичное сло
жение ошибок». Если произвести свертку двух нормальных распределений
со средними 0 и дисперсиями <т2 и гг2 то получим
1
2_ 2 , 2
®
®х ®у'
(5.11.15)
\/27П7
В разделе 5.7 уже было приведено доказательство этого факта при помощи ха
рактеристических функций. Его можно также получить при помощи вычисле
ния интеграла свертки (5.11.5). Если распределения f x(x) и f y(y) описывают
поведение двух независимых источников ошибок измерений, то в этом случае
результат (5.11.15) известен как «квадратичное сложение ошибок».
/(« ) =
exp(—'u2/2fj2),
Пример 5.11. Свертка экспоненциального и нормального распределений . При
f x (z) = - ехр(—х /т ),
1
х > О,
e x p (-j/2/2(j2),
М у) = \/27T
7Г(
i7
5.11. Свертка распределений
125
соотношение (5.11.6) принимает следующий вид:
1
fu
f ( u) = —т^=~ - /
ехр[—(и - у)/г] ехр ( - у 2/2 а 2) dy.
V 2>7Г(ТТ 7 -0 0
Можно переписать выражение, стоящее под знаком экспоненты:
—
1 2 Л и - » ) + т Л = - —
о
2a2u — 2сг2у + ту2 Н----т
а .2\ 2
1
a
u
т ' 2т2
2а2
т
и тогда получим, что
/Ы =
\/2ттат
ехр
<т
2т2
и
т
"U~<72 /т
ехр
— оо
-tr
dt>.
2а2"
Потребуем теперь, чтобы а <ёС т, т. е. чтобы ошибка измерений была значи
тельно меньше, чем типичные значения (разброс) для экспоненциального рас
пределения. Кроме того, будем рассматривать только такие значения щ для
которых и —о 1/т
а, т. е. и
а. Тогда этот интеграл приближенно равен
y/bfa или
и
a2
1
fin)
—ехр
т
т
2т2
В полулогарифмическом представлении, т. е. на графике зависимости In f(u)
от щ кривая f(u) лежит выше кривой / Х(х) на величину а 2/2 т 2, поскольку
1 р/ \
1 1
l n/ ( u) = \ П - + —
и
а2
- - = 1п/х(х) +
Эти графики представлены на рис. 5.17. Полученный результат можно каче-
Р и с. 5 .1 7 . С вертк а эк сп он ен ц и ал ь н ого и н ор м ал ь н ого р а сп р ед ел ен и й .
126
Глава 5. Некоторые важные распределения
ственно интерпретировать следующим образом. Для любого малого интервала
по х для экспоненциального распределения свертка с нормальным распреде
лением приводит с равной вероятностью к сдвигу влево или вправо. Однако
поскольку при фиксированном значении и плотность распределения вероятно
стей экспоненциального распределения принимает большее значение для мень
ших значений я, то с большей вероятностью вклад в свертку f(it) будет проис
ходить слева, нежели справа. Это приводит на всем промежутке к сдвигу f(u)
вправо по отношению к /Д х ).
■
5.12. Примеры программ
Все
програм м ны е ф ай л ы д оступ н ы в
поддиректории
\DATAN\EXASRC.
5.12.1. Головная программа E1DS для моделирования эмпирической
частоты и демонстрации статистических колебаний
Эта программа моделирует задачу из примера 5.1. Вначале запрашиваются
значения трех величин: пехр, ^fly и Р(А), а затем последовательно осуществля
ется моделирование пехр экспериментов. В каждом эксперименте исследуются
пду объектов. Каждый объект с вероятностью Р(А) обладает свойством А. Ка
ждому эксперименту соответствуют одна строка в выводе данных, в которой
содержится текущий номер эксперимента iexpi количество Л/д объектов, обла
дающих свойством А , и частота Лд = Лгд/п п у, с которой наблюдается свойство
А. Колебания Ид вокруг известного введенного значения Р{А) в каждом кон
кретном эксперименте дают полное представление о статистической ошибке
эксперимента.
5.12.2. Головная программа E2DS для моделирования
эксперимента Р езерф орда и Гейгера
Суть эксперимента Резерфорда и Гейгера описана в примере 5.3. Экспери
мент смоделирован следующим образом. Вначале программа запрашивает чи
сло N —количество наблюдавшихся распадов, и Ujnt — число отдельных ин
тервалов А Т от всего времени наблюдений Т. Д ля простоты длина каждо
го конкретного интервала положена равной единице. Всего моделируется N
случайных событий, осуществляется это просто путем генерации N случай
ных чисел, равномерно распределенных на отрезке между 0 и Т. Они выво
дятся на гистограмму с ть\п%интервалами. Гистограмма сначала выводится на
экран в графическом виде, а затем анализируется численно. Для каждого чи
сла к = 0 , 1 , . . . , N\nt программа определяет, во сколько интервалов N(k) на
гистограмме попало к наблюдений. Сами значения N( k) также представляют
ся в виде еще одной гистограммы.
Покажите, что для метода моделирования, использованного в программе,
в пределе при N —> оо получаем, что N( k) — п-ш Ц г^ ( р ~ 1/щ пД Если N
5.12. Примеры программ
127
Р и с . 5 .1 8 . Р а сп о л о ж ен и е гв о зд ей на д о с к е Г альтоп а и о д н а и з в о зм о ж н ы х т р а ек т о
рий шарика.
возрастает, и и то же время Л — N p — N /щ nt остается постоянным, то для
больших N имеем
WF ( p = X/ N) -
^ е -А
и в пределе при N —> сю
N( k) = n-mt— e~x .
Проверьте предыдущее утверждение, запустив программу для соответствую
щих пар чисел, например для (N, n\nt) — (4, 2), (40, 20), . . . , (2000,1000), считав
значения N( k) с графика на экране и сравнив их с упомянутым выше утвер
ждением.
5.12.3. Головная программа E3DS для моделирования доски Гальтона
Доска Гальтона является простой реализацией модели Лапласа, описанной в
примере 5.7. В вертикально расположенную доску горизонтальными рядами
вбиты гвозди так, как показано на рис. 5.18. Ряды гвоздей помечены номе
рами j = 1, 2, . . . , п, и в j -м ряду содержится j гвоздей. Один за другим N exp
шариков кидают сверху на гвоздь в первом ряду. При этом каждый из шариков
с вероятностью р отлетает вправо и с вероятностью (1 —р) — влево. (Для реаль
ных досок р — 1/2.) Расстояние между гвоздями выбирается таким образом,
чтобы каждый раз шарик ударялся об один из двух гвоздей в ряду 2 и затем
снова отлетая направо с вероятностью р. После прохождения через п рядов ка
ждый шарик занимает одно из n + 1 мест, которые мы обозначим через к = 0
128 Глава 5. Некоторые важные распределения
(слева), k = 1, . . к = п (справа). После завершения всех iVexp экспериментов
(т. е. шариков) каждому значению к соответствует N( k) шариков.
Вначале программа запрашивает численные значения iVexp, п и р . Для ка
ждого эксперимента число к сначала полагается равным нулю, моделируются
и анализируются п равномерно распределенных случайных чисел rj. Для ка
ждого rj < р (соответствующего отскоку шарика вправо в ряд j) число к
возрастает на единицу. После каждого эксперимента значение к отображается
на гистограмме. По завершении моделирования всех экспериментов на экран
выводится гистограмма.
Показать, что в пределе при N —> оо N( k) = NWj}(p). Выбирая и
вводя подходящие пары чисел (п,р), например (n,p) = (1,0.5), (2,0.25),
(10,0.05), (100,0.005), получите приближение для пуассоновского распределе
ния N( k) = N X k/ k\ e~x 7 А = пр, и сравните предсказанные таким образом
значения и результаты вашего моделирования.
5.13. Задачи
5.13.1. Биномиальное распределение
(а) Доказать рекуррентную формулу
Wfcnfl = J — \ - w ? .
к + lq
(Ь) Пусть для некоторого производственного процесса известна доля q = 0.2
деталей, выпущенных с дефектами. Это означает, что среди пяти про
изведенных деталей ожидаемое число деталей без дефектов равно пр =
n (l —q) = 5 •0.8 — 4. Каковы вероятности Р2 и Р3 того, что по меньшей ме
ре две или по меньшей мере три детали будут без дефектов? Использовать
соотношение (а) для упрощения вычислений.
(с) Определить значение fcm, для которого биномиальное распределение дости
гает максимума, т. е. кш должно являться наиболее вероятным значением
этого распределения.
Указание: Поскольку W £ не является функцией от непрерывной пере
менной к, то максимум нельзя найти путем отыскания нулей производной.
Следовательно, необходимо исследовать конечные разности W £ —W£_x.
(d) В разд. 5.1 биномиальное распределение было введено как случайная вели
чина х = ]ГГ= 1 хг* Здесь хг были случайными величинами, которые могут
принимать только значения 0 или 1 с вероятностями Р(х* — 1) = р и
P(*i = 0) = q.
Затем биномиальное распределение
/(X) = /(* ) = И ? = L )pkqn- k
5.13. Задачи
129
было получено путем детального рассмотрения вероятности того, что при
77. наблюдениях величины хг в к случаях было получено х* = 1. Получи
те биномиальное распределение более строгим способом путем построения
характеристической функции (рХс для величины х^. При возведении (рх. в
77.-ю степень вы получите характеристическую функцию для х.
Указание: Использовать бином Ньютона (В.6).
5.13.2. Распределение Пуассона
В некоторой больнице дежурного врача вызывают в среднем три раза в течение
ночи. Можно считать, что число вызовов распределено по закону Пуассона.
Какова вероятность того, что за ночь у врача не будет ни одного вызова?
5.13.3. Нормальное распределение
Сопротивление R электрических резисторов, изготовленных на определенном
станке, можно описать при помощи нормального распределения со средним
Rm и стандартным отклонением а.
Стоимость производства одного резистора составляет С, а цена равна 5С,
если R ~ R q± A i , и 2 С, если R0 —Л 2 < R < R 0~ А у или R q+ A i < R < R 0 + A 2 .
Резисторы, не уютдывающиеея в эти пределы, невозможно продать.
(a) Определить прибыль Р в расчете на один резистор, изготовленный при
Rm ~ R q, А \ = ai.Ro, А 2 = a2Ro, о — bRo. Использовать функцию рас
пределения Ф0(b) Использовать таблицу 1.2 для нахождения численных значений Р для
ах = 0.01, а2 = 0.05, b = 0.05.
(c) Доказать, что плотность распределения вероятностей (5.7.1) имеет точки
перегиба (т. е. точки, где вторая производная равна нулю) при х — а ± Ь.
5.13.4. Многомерное нормальное распределение
Пусть положение мишени определяется в полярной системе координат ху. Ве
роятность попадания в мишень па плоскости можно описать при помощи нор
мального распределения из задачи 3.9.4 (е). Использовать результат этой за
дачи для нахождения
(a) P( R) — вероятности попадания внутрь окружности заданного ра
диуса R с центром в начале координат,
(b ) радиус R, в пределах которого попадания наблюдались с заданной
вероятностью. В качестве численного примера найти значение R
для Р — 90 % и а = 1.
130 Глава 5. Некоторые важные распределения
5.13.5. Свертка
(a) Доказать справедливость соотношения (5.11.11). Начать с фор
мулы (5.11.9) и использовать выражение (5.11.10) для f y(y). На
отрезках 0 < и < 1 и 2 < и < 3 верны равенства (5.11.10а) и
(5.11.10b), поскольку на этих отрезках всегда у < 1 и у > 1, со
ответственно. На отрезке 1 < и < 2 пол ученое в результате рас
пределение f ( u) должно быть представлено в виде суммы двух
интегралов вида (5.11.9), в каждый из которых входит одно из
двух возможных выражений для f y(y). В этом случае необходимо
соблюдать особую осторожность при определении пределов инте
грирования. Они соответствуют границам отрезков, на которых
определены и и f y(y).
(b) Доказать справедливость соотношения (5.11.15), произведя инте
грирование функции (5.11.5) в случае, когда f x и / у нормально
распределены со средними нуль и стандартными отклонениями
их и сгу,
5.14. Задачи по программированию
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\S0LSRC.
5.14.1. Свертка равномерных распределений
Согласно центральной предельной теореме, величина х =
хг в пределе
при N —►оо стремится к стандартному нормальному распределению, если ве
личины Хг имеют произвольное распределение со средним нуль и стандартным
отклонением 1/ у/ N . Пусть величины х* равномерно распределены на отрезке
с концами a = —у /3JN, b = —а. Выполнить большое число пеХр испытаний
по методу Монте-Карло, результатом каждого из которых является случайное
значение х. Построить гистограмму для величины х, а также изобразить пред
полагаемую плотность распределения величины х в виде графика функции, со
ответствующей плотности стандартного нормального распределения (см. рис.
5.19). (Использовать программу GRHSCV для одновременного изображения ги
стограмм и графиков функций.) Предоставить возможность интерактивного
ввода величин n exp и N.
5.14.2. Свертка равномерного и нормального распределений
Если величина х равномерно распределена на отрезке между а и Ь и если у име
ет нормальное распределение со средним нуль и стандартным отклонением <т,
то величина и = х + у имеет распределение (5.11.14). Осуществить большое
число n exp испытаний по методу Монте-Карло, результатом каждого из кото
рых является случайное число и. Построить гистограмму значений и, а также
график ожидаемой плотности распределения (5.11.14) (см. рис. 5.20). Предо
ставить возможность интерактивного ввода величин n exp, a , Ь и <т.
5.14. Задачи по программированию
п„р=90000, п=
131
3
{> х
Рис. 5.19. Гистограмма для 90 000 случайных чисел х, каждое из которых является
суммой трех равномерно распределенных случайных чисел. Кривая соответствует
стандартному нормальному распределению. Наблюдаемое различие между кривой и
гистограммой становится очевидным только потому, что использовано очень большое
количество случайных чисел.
10
15
20
---- ———с>х
Рис. 5.20. Гистограмма для 10 000 случайных чисел, каждое из которых является
суммой равномерно распределенной и нормально распределенной случайных вели
чин. Кривая соответствует свертке плотностей равномерного и нормального распре
делений.
132
Глава 5. Некоторые важные распределения
5.15. Указания и решения
Задача 5.13.1
(Ъ)
0.83 ■0.22 = 10 ■0.512 • 0.04 = 0.2048,
W$
Wf
=
W,3 ■\ • ^ = 0.2048 • 2 = 0.4096,
4 0.2
wg =
Wl - -
Р3
=
1 - WJ - W£ = 0.262 72,
Р2
=
р 3 _ Wg - 0.05792.
5
•^
0.2
=
0.4096 • 0.8
=
0.327 68,
(с) Используя результат, полученный в пункте (а), находим:
Таким образом вероятность W ?к1 возрастает, когда выражение в
скобках положительно, т. е. когда
Поскольку к и q положительны, то (п —к + 1)р > kq — к( 1 —р),
к < (п 4- 1)р. Наиболее вероятное значение кт равно максимально
му значению среди тех fc, для которых это неравенство выполнено.
(d) <pXi(t) = Е {еш '} = qeit 0 +-f peu = q + pe'4;
ГП
, x
m
«, = (,+pelr = E ( : ) l
Задача 5.13.2
Для А = 3 имеем: /(0 ) = — е Л = е л = 0.0498 « 0.05 — 5%.
Задача 5.13.3
(а) Детали, доля которых составляет
02
b
5.15. Указания и решения
133
от общего количества, являются бракованными, поскольку
R < R q — Л 2 или R > R 0 + Д 2* Детали, доли которых равны
h - 2^о ( - ^ - ) - /г и / 5 = 1 - / 2 - /г, имеют цену 2С и ЪС со
ответственно. Следовательно,
Р = 2 Н С + 5 fbC - С - С { 2 /2 + 5 - 5 / 2 - 5 fr - 1}
= С{4 - 3 /2 - 5 /г}
= С { 4 - 6 Ф 0 ( - у ) + 3/ г - 5 / г }
= с { 4 - 64,» ( - т ) - 4#» ( - т ) }
(Ь) Ф0(—0.2) ^ 0.421;
0.838С.
(с)
Ф ь(-1) - 0.159, т. е. Р = С { 4 -2 .5 2 6 -0 .6 3 6 } -
1
d2/
2 / l22 — 1} — 0, равенство
ехр( —(х —а)2/262){(х —а)2/6
dx2
выполнено, если последнее выражение, стоящее в скобках, равно
нулю.
Задача 5.13.4
[R
/
-я2
1
ге г2/ 2ст dr =
<?(r) d r =
Jo
Гe -u /2,< r2, i O
J Я2
_ 1
= 1
e-u/2a du
2сг2
_ e- R2/ 2<
(b) 1 - P = exp(—P 2/2 a 2),
R 2/ 2 a 2 = - l n ( l - P ).
Для a = 1, P = 0.9 получаем R ~ >/~21n0.1 = \J4~61 = 2.15.
Задача 5.13.5
(а) 0 < u < 1:
f ( u) = [
Ju-1
/i(y )d y = [
y d y = \ u 2.
./0
*
1 < u < 2:
f ( u) = /
/i(2 /)d y + f
J U—\
• /U - l
=
- (u - !)2) +
/ 2(y)dy =
f
y d y + j (2 —y) dy
J U—1
Jl
~ (2 - u)2) = 1(— 3 + 6u - 2u2).
2 < u < 3 :
f i u) = f
J U —1
/ 2( y ) d y =
f
•/ U — 1
(2 —y) dy = — f
J3 — U
zdz= \(Z-uf
*
134
Глава 5. Некоторые важные распределения
ЗГ
(и —х )‘
dx.
2сг2
х
2сг2 ,
Дополнение до полного квадрата выражения под знаком экспоненты дает:
(Ъ) /(и) =
„г — - /
ехр
2>7Г<7х <?у 7 —00
сг
2сг2<х2
2
СГ.
- -~ ^ 2 +
а 4
Д2
СГ2
После замены переменых и = (cr/crxcry)(a; —a 2и /о 2) получаем:
1
/ сг4 - сг2сг2 2\
/(« ) = ^-------- ехр
- д у - и
2-K(jxay
\ 2<х2<х2crj
J
/
ос-
exp
-оо
поскольку <Х* = (У2{(Т2 — оу).
1 2\ ,
аг2 )
-гг
=
СГх СГу
1 ехр
y /b ia
,— -
X
СГ
и2
2а2
Глава 6
Выборки
В предыдущей главе мы обсудили различные распределения, однако не ука
зали, в каком виде они встречаются в конкретных практических задачах. Мы
лишь определили вероятность того, что случайная величина х попадет в интер
вал с границами х и .т-f-dx. Эта вероятность зависит от некоторых параметров,
описывающих закон ее распределения (как, например, параметр Л в случае
распределения Пуассона), которые, как правило, неизвестны. Поэтому мы не
имеем достоверной информации относительно распределения вероятности и
должны аппроксимировать его при помощи распределения частот, получае
мого экспериментальным путем. С этой целью осуществляется ряд (безусловно
конечный) измерений, результаты которых называются выборкой. Перед тем
как приступить к изложению элементов теории выборок, прежде всего необ
ходимо ввести ряд новых определений.
6.1. Случайные выборки. Распределение выборки.
Оценки
Любая выборка берется из множества элементов, соответствующих возможным
результатам отдельных наблюдений. Такое множество, содержащее обычно бес
конечное число элементов, называется совокупностью. Если из совокупности
берется выборка из п элементов, то говорят, что это выборка объема п. Пусть
распределение случайной величины х в такой совокупности задается плотно
стью распределения вероятностей f ( x) . Нас интересуют те значения х, которые
принимают отдельные элементы выборки. Предположим, что взято £ выборок
объема п и получены следующие значения х:
1-я выборка:
х ^ \ х$,Ч,. . , , х„
J-я выборка:
£-я выборка:
х ^ , х ^ , . . . , х£Я ■
Представим каждую тлябор к у в виде п-мерного вектора (п-мерной случайной
величины)
x(j'} - (х
( 6 . 1. 1)
136 Глава 6. Выборки
который можно рассматривать как вектор в п-мерном выборочном простран
стве (см. разд. 2.1). Тогда плотность распределения всей выборки имеет вид:
д(х) - д( хi , x 2, ...
(6.1.2)
Для того чтобы эта выборка была случайной, эта, функция должна удовле
творять двум условиям:
(a) Случайные величины хг должны быть независимы, т. е. необходимо, чтобы
соблюдалось равенство
д(х)
=
gi (xi )g2(x2) ■■ •< ? п ( х „ ) .
(6.1.3)
(b ) Отдельные маргинальные распределения должны быть одинаковы и долж
ны совпадать с /(х ) ~~ плотностью распределения вероятностей для сово
купности:
gi(x)
=
д2(х)
=
... = дп (х) - f(x).
(6.1.4)
Если сравнить эти два условия с равенством (6.1.2), то становится очевидно,
что простая зависимость между совокупностью и выборкой имеет место только
в том случае, когда выполнены эти условия. В дальнейшем, если не оговорено
иное, то под словом «выборка» мы будем подразумевать случайную выборку.
Следует подчеркнуть, что в реальном процессе получения выборки обеспе
чить случайность зачастую бывает достаточно сложно. Ввиду большого раз
нообразия приложений невозможно дать универсальных указаний для того,
как это сделать. Чтобы в процессе создания выборки получить достоверные
результаты, необходимо предпринять все возможные меры для обеспечения
выполнения условий (6.1.3) и (6.1.4). Условие независимости (6.1.3) можно про
верить путем сравнения распределений частот первого, второго, ... элементов
для большого числа выборок. Однако очень трудно получить подтверждение
того, что выборки действительно получены из некоторой совокупности с плот
ностью распределения вероятностей /(х ). Если элементы совокупности можно
некоторым образом пронумеровать, то тогда для отбора элементов совокупно
сти в выборку бывает удобно использовать случайные числа.
Предположим теперь, что п элементов выборки упорядочены в соответ
ствии с их значениями, например нанесены на ось х, и для любого х найдем
количество п х элементов выборки, для которых выполнено неравенство х < х.
Ступенчатую функцию
Wn (x) ~
n x/n,
(6.1.5)
которая возрастает на величину 1/п в тех точках х, которые равны значени
ям отдельных элементов выборки х, называют эмпирической функцией рас
пределения. Очевидно, что она является аппроксимацией для F(x) — функции
распределения совокупности, и стремится к ней в пределе при п —►оо.
Любая функция от данных (от элементов выборки) (6.1.1) называется ста
тистикой. Поскольку х —это случайная велична, то статистика в свою очередь
также является случайной величиной. Наиболее важным примером служит
выборочное среднее
1,
п
X = - ( X ! + Х2 + . . . + Хп ).
( 6 . 1.6)
6.2.
Выборки из непрерывных совокупностей
137
Типичная задача анализа данных состоит в следующем. Пусть в общем виде
известно поведение плотности распределения вероятностей для совокупности.
Например, в случае радиоактивного распада среднее число ядер, которые рас
падутся до наступления момента времени t = т, равно N T = N q(1 —ехр(—At )),
если в момент времени t = 0 существовало No ядер. Однако постоянная полу
распада А в этом выражении в общем случае неизвестна. На основании конеч
ной выборки (путем измерения периода распада для конечного числа ядер) мы
как можно более точно хотим определить параметр А. Поскольку ввиду конеч
ности выборки для подобной задачи невозможно получить точного решения,
то говорят об оценивании параметров. Для того чтобы оценить параметр А
функции распределения, используют оценку вида
5 = 5( хь х2, . . . ,х„).
(6.1.7)
Оценка называется несмещенной, если для выборки произвольного объема ма
тематическое ожидание (случайной) величины S равно величине оцениваемого
параметра:
£7{S(xi, х2, . - -, хп)} = А
при любых п.
(6.1.8)
Оценка называется состоятельной1, если при увеличении объема выборки ее
дисперсия стремится к нулю, т. е. если
lim <t (S) = 0.
п —► оо
(6.1.9)
Часто можно указать нижнюю границу для дисперсии (несмещенной) оцен
ки параметра. Если найдена (несмещенная) оценка So, для которой эта граница
достигается, то эта оценка очевидно будет «наилучшей возможной (оптималь
ной)» оценкой. Тогда говорят, что So является эффективной оценкой для па
раметра А.
6.2. Выборки из непрерывных совокупностей.
Выборочные среднее и дисперсия
На практике наибольший интерес представляют выборки из непрерывных со
вокупностей бесконечно большого объема, которые описываются плотностью
распределения вероятностей f ( x) . Выборочное среднее (6.1.6), как и все осталь
ные статистики, является случайной величиной. Давайте рассмотрим его ма
тематическое ожидание
Е(х) = 1 { £ (х ,) + Е{х2) + . .. + £ (х п)} = х.
п
1Более точно, оценка S является состоятельной оценкой параметра Л, если
(6.2.1)
lim Р{|5 — А| > £> ~ 0
п — ►оо
для любого £ > 0. Условие (6.1.9) является достаточным, но не необходимым. Например,
если xi,Х2 ... ,хп — выборка из пуассоновского распределения с параметром А, то х — состоя
тельная оценка Л, причем <т(х) = ~^= — ►0 при п — ► оо. В то же время (х)” 1 — состоятельная
оценка для Л- 1 , но <т(1) = +оо для любого п. — Прим. ред.
138 Глава 6. Выборки
Это математическое ожидание равно математическому ожиданию величины
х. Поскольку равенство (6.2.1) выполнено при любых значениях п, то, как и
можно было ожидать, арифметическое среднее выборки является несмещенной
оценкой для среднего совокупности. Характеристическая функция случайной
величины х имеет вид
={<^С)Г=jy*Q)} ■
( 6 . 2 . 2)
Теперь найдем дисперсию х:
ст2(х) = £{х - £ (х-\)}122 = Е
=
2
nL
X] “Ь Х2 “Ь . .. ~Ь х7
—X
п
Е { [(х 1 - х) + (х2
+ (х„ - .т)]2).
Поскольку все х* независимы, то все математические ожидания от смешанных
произведений вида £ { (х 7—х)(х_у —£)} , г Ф j (т. е. все ковариации), обращаются
в нуль, и получаем, что
1
Д (х ) = -СГ2(х).
п
(6.2.3)
Таким образом мы показали, что х —состоятельная оценка для х, если
<т2(х) < оо. Сама по себе дисперсия (6.2.3), однако, не является случайной вели
чиной, и, следовательно, ее нельзя получить непосредственно из эксперимента.
В качестве определения выборочной дисперсии можно было бы попытаться ис
пользовать арифметическое среднее квадратов разностей
s'2 = - { ( х , - х )2
п
+ (х2 -
х )2 +
■■• + (х„ -
(6.2.4)
х )2 }.
Математическое ожидание этой величины равно
Е ( s'2) = \ е \
- х )2
^ i—1
~ £ , | y ^ ( x i - z + 2 : - x ) 2|
(
^
п
п
п
^
- Е I У^(хг - х )2 + ^ ( х - х)2 + 2 £ (хг - х ) ( х - х ) I
п
п I i=i
i=i
i=i
)
= ^ { Щ
( х , - $ ) 2) - £ ( ( х - £ ) 2)}
i=l
=
я (* '2) =
1 { т т 2 ( х ) - п ( 1 < 7 2 (х)
Гь
(6.2.5)
6 2. Выборки из непрерывных совокупностей
139
Отсюда видно, что определенная таким образом выборочная дисперсия —это
смещенная оценка для дисперсии совокупности, математическое ожидание ко
торой меньше, чем сг2(х). Однако величину смещения можно определить не
посредственно из соотношения (6.2.5). Поэтому изменим определение (6.2.4) и
определим выборочную дисперсию как
s2 = — ~ r { ( x i - х )2 + (х2 - х ) 2 + . . . + (х„ - х )2 }.
п —I
(6.2.6)
Теперь это несмещенная оценка для сг2(х).
Если в соотношение (6.2.3) подставить оценку для дисперсии совокупности
(6.2.6), то получим оценку для дисперсии выборочного среднего
п
£ ( > < * - х)2.
(6.2.7)
Соответствующее стандартное отклонение можно рассматривать в качестве
ошибки (меры отклонения от) среднего
Лх = V s2!*) = s(x) = 4 = s(x ).
(6.2.8)
у/П
Безусловно, нас также интересует ошибка выборочной дисперсии (6.2.6)1.
В разд. 6.6 будет показано, как эту величину можно определить в предположе
нии о том, что совокупность имеет нормальное распределение. Забегая вперед,
воспользуемся сейчас этим результатом. В случае нормально распределенной
совокупности дисперсия для s2 равна
var(s2)
2(п — 1).
(6.2.9)
Если вместо сг2 в правую часть этого выражения подставить оценку вида (6.2.6)
и извлечь квадратный корень, то получим, что ошибка выборочной дисперсии
в случае выборки из нормального распределения равна
A s2 ~ s2
2
( 6 .2 . 10)
( п - 1)'
В заключение приведем в явном виде выражения для оценок выборочного
стандартного отклонения и его ошибки. Первая из этих величин равна просто
квадратному корню из выборочной дисперсии
s=v?=7sW\/£ (Xi"ii>2'
1 Как известно,
/ 2\
var V
*/
— Прим. ред.
_
М4
Н-2
п
_
2 (/i4
2д|)
п г2
,
'
Д4
Зд2
п лЧ
(6.2.11)
140
Глава 6. Выборки
Ошибку выборочного стандартного отклонения можно получить из соотноше
ния (6.2.10), применяя закон изменения ковариационных матриц и дисперсий,
s
( 6 .2 . 12)
4s —
л /2 ( п - 1 )
Пример 6.1. Вычисление выборочных среднего и дисперсии на основе имеющихся данных. Предположим, что имеются результаты п = 7 измерений не
которой величины (например, длины некоторого объекта). Они равны 10.5,
10.9, 9.2, 9.8, 9.0, 10.4, 10.7. Вычисления упрощаются, если основываться на
том, что все результаты измерений близки к а — 10, т. е. что они имеют вид
х* = а + Si. Тогда из соотношения (6.1.6) следует, что
-I п
1
п
Л П
х = —
хг ~ —
(а + 5г) — а Н— У 5г
У
У
г~\
г=1
~
а,
А,
i—1
где
1 n
1
А = 6' = ^(0-5 + 0.9 - 0.8 - 0.2 - 1.0 + 0.4 + 0.7)
г=1
= 0.5/7 = 0.07.
Таким образом мы получили, что х = 10 + 4 = 10.07.
Выборочная дисперсия, вычисленная по формуле (6.2.6), равна
s2 = — 1
*=1
- *)2 =
£ (х> ~ 2ХгХ+*2)
г=1
X? —пх2
В численном виде результат можно получить как из первой, так и из послед
ней строки предыдущего выражения. В последней строке вычисляется не п
разностей, а всего лишь одна. Однако величины, которые при этом приходит
ся возводить в квадрат, будут значительно больше, и, следовательно, придется
решать задачу нахождения ошибок округления. Поэтому мы будем использо
вать исходное выражение
s2 = 1{0.432 + 0.832 + 0.872 + 0.272 + 1.072 + 0.332 + 0.G32}
6
= ^{0.1849 + 0.6889 + 0.7569 + 0.0729 + 1.1449 + 0.1089 + 0.3969}
6
= 3.3543/6 и 0.56.
Выборочное стандартное отклонение равно s « 0.75. В итоге из соотношений
(6.2.8), (6.2.10) и (6.2.12) получаем, что 4 х = 0.28, 4 s 2 = 0.32 и 4 s = 0.21. ■
Естественно, что обычно выборочные среднее и дисперсия вычисляются не
вручную, а при помощи простой компьютерной программы, подобной приве
денной ниже.
6.2.
Выборки из {{(‘прерывных совокупностей
141
П р ог р а м м а 6 .1 . П о д п р о г р а м м а SMMNVR д л я в ы ч и с л е н и я в ы б о р о ч н ы х с р е д н е г о ,
дисп ерси и и с т а н д а р т н о г о о т к л о н е н и я , а т а к ж е и х о ш и б о к
К о м а н д а ВЫЗОВА: CALL SMMNVR (DATA ,N,X M EAN ,DELX M ,S2,
D E L S 2 ,S ,D E L S )
В х о д н ы е п а р а м е т р ы : DATA...м а с с и в , с о с т о я щ и й и з э л е м е н т о в в ы б о р к и
N — количество эл ем ен тов в вы борке
В ы х о д н ы е п а р а м е т р ы : XMEAN — в ы б о р о ч н о е с р е д н е е х
DELXM — о ш и б к а с р е д н е г о
Ах
S2 — в ы б о р о ч н а я д и с п е р с и я s 2
DELS2 — о ш и б к а д и с п е р с и и
A s2
S — вы борочное стандартное отклонение s
DELS — о ш и б к а с т а н д а р т н о г о о т к л о н е н и я
As
SUBROUTINE SMMNVR( DATA, N , XMEAN, DELXM, S 2 , D E L S 2, S , DELS)
IM PLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION D A T A O )
PARAMETER(ZERO^O.DO, 0 N E = 1 . D 0 ,
XMEAN=ZERO
XN=DBLE(N)
XN1=XN-0NE
DO 10 I =
1,
N
XMEAN=XMEAN+DATA(I)
10 CONTINUE
XMEAN=XMEAN/XN
IF (N .G T .l)
THEN
Q=ZER0
DO 2 0
I =
1,
N
Q = Q + (D A T A (I)-X M E A N )* * 2
20
CONTINUE
S 2 - Q /X N 1
S = S Q R T (S 2 )
DELXM=S/SQRT(XN)
D E L S2=S2*SQ R T (T W 0/X N 1)
DELS=S/SQRT(TW 0*XN1)
ELSE
DELXM=ZER0
S2=ZER0
S=ZER0
DELS2=ZER0
DELS=ZER0
END IF
END
TWO=2.DO)
142 Глава 6. Выборки
6.3. Графическое представление выборок.
Гистограммы и диаграммы рассеяния
Перейдем теперь от теоретических рассуждений, которыми мы занимались в
предыдущих главах, к применению некоторых простых методов анализа выбо
рочных данных на практике. Важнейшим математическим инструментом для
осуществления анализа данных является представление этих данных в графи
ческом виде.
Любую выборку x j, Х2 , . . . , хп, являющуюся реализацией одномерной слу
чайной величины х, легко можно представить в виде точек на оси ж. Будем
называть такое представление одномерной диаграммой рассеяния. Такая диа
грамма содержит в себе всю информацию о выборке. В таблице б Л приведены
значения хь Х2 , . . . , х п для выборки объема 100. полученные путем измерения
сопротивления R у 100 различных резисторов с номинальным значением со
противления 200 кОм. После проведения измерений результаты были упоря
дочены.
Таблица 6.1.
З н а ч е н и я с оп р оти в л ен и я Я для 100 р а з
л и ч н ы х р е зи с т о р о в с н о м и н ал ь н ы м зн ачени ем с о п р о
ти вл ен и я 200 кО м. Г р а ф и ч е с к о е п р едстав л ен и е д а н
н ы х п р и в ед ен о на рис. 6.1.
193.199
196.596
197.392
199.070
199.572
200.160
200.746
200.998
201.375
201.878
202.172
202.507
203.051
203.178
203.890
204.352
205.357
206.154
207.243
208.628
195.673
196.679
197.477
199.111
199.614
200.243
200.830
200.998
201.543
201.919
202.172
202.591
203.052
203.219
203.974
204.729
205.400
206.155
207.621
208.670
195.757
196.763
198.189
199.153
199.824
200.285
200.872
201.123
201.543
202.004
202.297
202.633
203.094
203.764
204.184
205.106
205.483
206.615
208.124
208.711
196.051
196.847
198.650
199.237
199.908
200.453
200.914
201.208
201.584
202.004
202,339
202.716
203.094
203.765
204.267
205.148
206.070
206.657
208.375
210.012
196.092
197.267
198.944
199.698
200,118
200.704
200.956
201.333
201.711
202.088
202.381
202.884
203.177
203.848
204.352
205,231
206.112
206.993
208.502
211.394
На рисунке 6.1а представлена соответствующая диаграмма рассеяния. Ка
чественно среднее и дисперсию можно оценить па основании расположения и
разброса точек, нанесенных на ось ж.
6.3. Графическое представление выборок
<Ь)
(а)
190
143
195
200
205
210
215
х
(с)
190
Н> X
195
200
205
210
215
х
Р и с . 6 .1 . П р е д с т а в л е н и е д а н н ы х из т а б л .6.1 в в и д е (а) о д н о м е р н о й д и а г р а м м ы рас
сеяния, (Ь) сто л б ч а то й д и а г р а м м ы , (с) с т у п е н ч а т о й д и а г р а м м ы и (d) т о ч е ч н о й д и а
граммы с отр езк ам и ош ибок.
Следующее графическое представление лучше подходит для визуализации
выборочных данных, поскольку является двумерным. Ось х, используемая в
качестве оси абсцисс, разбита на г отрезков £ ь £ 2 »---»£г равной длины А х.
Эти отрезки называются интервалами разбиения. Центры этих интервалов на
оси х соответствуют значениям х \ . х г , . . . , х г . По вертикальной оси отклады
вается соответствующее число элементов выборки щ , 712, *• *, ?тг , попавших в
интервалы ^ , £2 , • *., £г* Полученная таким образом диаграмма называется ги
стограммой выборки. Ее можно интерпретировать как распределение частот,
поскольку hk = rik/n является частотой, т. е. оценкой для р *. —вероятности то
го, что элемент ныборки попадет в интервал
Существуют различные методы
графического представления гистограмм. На столбчатой диаграмме величи
ны rik изображаются в виде столбцов, перпендикулярных оси х, с основани
ями в точках Xk (рис. 6.lb). На ступенчатой диаграмме значениям п к соот
ветствуют горизонтальные отрезки, имеющие длину, равную длине интервала
Соседние горизонтальные отрезки соединены перпендикулярными линиями
(рис. 6.1с). Тогда часть площади, находящейся под отрезком, который соответ
ствует интервалу £к на оси х, пропорциональна п к — числу элементов выборки,
попавших в этот интервал. (Если в качестве графического представления п к
используются площади под соответствующими отрезками, то интервалы могут
быть различной длины.) Наиболее широко столбчатые диаграммы использу
ются в экономике. (Иногда встречаются также диаграммы, на которых вместо
столбцов построены отрезки, соединяющие вершины этих столбцов. На таких
диаграммах (в отличие от ступенчатых) площадь под отрезками не пропорпи-
144 Глава 6. Выборки
ональна объему выборки п.) В естественных пауках наиболее широко исполь
зуются ступенчатые диаграммы.
В разд. 6.8 мы установим, что до тех пор, пока значения Пк не станут доста
точно малы, их статистические ошибки будут определяться как А п к — у/пьДля того чтобы представить их в виде диаграммы, можно представить на
блюденные значения п k в виде точек с вертикальными отрезками ошибок,
границы которых находятся в точках Пк =Ь v/n^ (рис. 6.Id).
Очевидно, что значения относительных ошибок А п ^ /п к — 1/у/йк убыва
ют при возрастании rife, т. е. для выборки фиксированного объема п они убы
вают при возрастании длин интервалов разбиения на гистограмме. С другой
стороны, увеличивая длину интервалов разбиения, мы можем потерять часть
информации о структуре данных как функции от переменной х. Поэтому то,
в какой степени гистограмма передает информацию о данных, зависит пре
жде всего от правильного выбора длин интервалов разбиения, оптимальное
значение которых обычно можно найти только путем подбора.
Пример 6.2. Гистограммы для одной и той же выборки с различными дли
нами интервалов разбиения. На рис. 6.2 представлены четыре гистограммы
для одной и той же выборки. Данная совокупность имеет гауссовское распре
деление, график которого также приведен на диаграммах в виде непрерывной
кривой. Кривая гауссовского распределения была построена таким образом,
чтобы площадь под гистограммой равнялась площади под этой кривой. Не
смотря на то, что гистограмма содержит больше информации о конкретных
значениях выборки при меньших значениях длин интервалов разбиения (при
-1
о
1
Рис. 6.2. Гистограммы для одной и той же выборки из гауссовского распределения,
построенные для четырех различных значений длин интервалов разбиения.
6.3.
Графическое представление выборок
145
нулевых длинах интервалов гистограмма сводится к одномерной диаграмме
рассеяния), заметить сходство между данной гистограммой и кривой, соответ
ствующей гауссовскому распределению, намного легче при больших значениях
длин интервалов разбиения. Это происходит из-за того, что при более длин
ных интервалах разбиения относительные статистические колебания данных в
пределах отдельных интервалов становятся меньше. Поэтому отдельные сту
пеньки на такой гистограмме меньше отличаются от кривой гауссовского рас
пределения.
■
Процесс построения гистограммы по данным выборки легко реализовать
в виде программы. Допустим, что гистограмма имеет п х интервалов разби
ения с длинами Z\x, первый из которых расположен между точками х =
и х — х’о + А х. Величины столбцов гистограммы помещаются в массив HIST,
где первый интервал соответствует H I S T ( 1 ), второй интервал — H I S T ( 2 ) , и т. д.
Тогда такая гистограмма представляется на компьютере в виде массива HIST
и трех значений: Ху, А х и п х .
Программа
6 .2 . П о д п р о г р а м м а SMHSIN д л я п о д г о т о в к и к п о с т р о е н и ю г и с т о
грамм ы
Команда
Входные
вызова :
call
S M H S I N (H I S T ,X 0 ,D E L X ,N X )
параметры : H IST —массив значений гистограммы в интервалах
разбиения, минимальная длина массива равна п х
ХО—левая граница первого интервала разбиения х0
D ELX - длина интервалов разбиения А х
NX — количество интервалов разбиения п х
Комментарии: Все интервалы разбиения для гистограммы изначально
полагаются равными пулю.
SUBROUTINE S M H S IN (H IS T , ХО, DELX, NX)
IM PLICIT DOUBLE PRECISION
(A -H ,0 -Z )
DIMENSION H I S T ( * )
DO 10 1 = 1 , NX
H IS T (I)= 0.
10 CONTINUE
END
Программа
6 .3 . П о д п р о г р а м м а SMHSFL д л я о т о б р а ж е н и я н а г и с т о г р а м м е о т
дельного эл ем ен та вы борк и
К оманда
вызова : call
sm hsfl( h is t
, xo, delx, nx, x
in
,
WEIGHT)
Входные
параметры : H I S T ,X 0 ,D E L X ,N X — т е ж е , ч т о и в п р о г р а м м е 6 .2
XIN — э л е м е н т в ы б о р к и
WEIGHT — в е с о в о й к о э ф ф и ц и е н т , с к о т о р ы м д а н н ы й э л е м е н т
п р е д с т а в л я е т с я н а г и с т о г р а м м е ( о б ы ч н о WEIGHT = 1 . 0 )
146 Глава 6. Выборки
Данная п о д п р о г р а м м а д о л ж н а в ы з ы в а т ь с я д л я к а ж д о г о
элемента в ы б о р к и . Нужно п о л а г а т ь WEIGHT=1. з а и с к л ю ч е н и е м о т д е л ь н ы х
случаев, когда очевидно, что э л е м е н т а м в ы б о р к и н у ж н о п р и с в о и т ь
различные веса.
КОММЕНТАРИИ:
SUBROUTINE SM H SFL (H IS T , ХО, DELX, NX, X I N , WEIGHT)
IM PLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION H I S T ( * )
N = I N T ( ( X I N - X O ) / D E L X ) +1
IF
( N .G T .O
.AND.
N . L E .N X ) THEN
H IS T (N )= H IS T (N )+ W E IG H T
END IF
END
Вывод гистограммы на экран в графическом виде можно осуществить при
помощи графических программ, содержащихся в приложении F. Эти програм
мы могут помочь пользователю легко настроить все необходимые параметры,
определяющие вид представления графика на экране, такие как формат стра
ницы, коэффициент масштаба, цвета, толщина линий и т. д. Ниже приведе
н а короткая программа, которая не дает возможности столь полно варьи
ровать параметры, однако с ее помощью можно осуществить вывод гисто
граммы на экран в графическом виде путем однократного запуска подпро
граммы.
Программа 6.4. Подпрограмма
К
оманда вы зо ва
:
call
SMHSGR д л я п о с т р о е н и я г и с т о г р а м м ы
sm hsgr( h i s t
, xo,delx,nx ,tx , ltx,
TY , LTY, CAPT, LCAPT, NWS)
ВХОДНЫЕ ПАРАМЕТРЫ: H I S T , XO, DELX, NX— т е ж е , ч т о и в п р о г р а м м е 6 .2
ТХ — строка
символов, которые
гистограммы
б у д у т нан есен ы на ось а б сц и сс
TY— с т р о к а си м в о л о в , к о т о р ы е
будут нанесены на ось ординат
гистограмм ы
САРТ — символьная
строка для названия гистограммы
LTX j LTY j LCAPT— длины символьных строк
NWS —номер рабочей с т а н ц и и , н а к о т о р о й б у д е т п р о и з в е д е н о
диаграммы
построение
Формат бумаги: «А5 landscape (ландшафтный или
альбомный)». Положение и размер текущей гистограммы настраиваются
таким образом, чтобы она располагалась в данном формате. Масштаб по
оси абсцисс задается параметрами Х О ,DELX,NX. Масштаб по оси ординат
выбирается таким образом, чтобы высота столбца, соответствующего
интервалу разбиения с максимальным числом наблюдений, не превышала
длину оси ординат.
КОММЕНТАРИИ:
6.3. Графическое представление выборок
SUBROUTINE SMHSGR(Н 1 S T , ХО, DELX, NX, Т Х , LTX, T Y , LTY, САРТ,
+
LCAPT.NWS)
IM PLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION H I S T ( * )
CHARACTER*( * )
T X , T Y , CAPT
CHARACTER*8 NUMSTR
С оп р едел ен и е масш таба по о си орди н ат
HM =HIST(1)
DO 10 I =
2,
NX
H M = M A X (H IS T (I), HM)
10 CONTINUE
WRITE (NUMSTR, •’ ( E 8 . 2 ) ’ )HM
READ(NUMSTR(3: 3 ) , ’ ( I I ) > ) M 1
READ(NUMSTR( 4 : 4 ) , ’ ( I I ) ’ )М2
N 0=0
N1=M1+1
N 2=0
I F C N 1 . G T . 9 ) THEN
N0=1
N 1= 0
END I F
WRITE( NUMSTR( 1 : 1 ) , ’ ( I I ) >) N 0
WRITE(NUMSTR( 3 : 3 ) , ’ ( I I ) ’ )N 1
WRITE(NUMSTR( 4 : 4 ) , ’ ( I I ) > ) N 2
READ(NUMSTR,’ ( E 8 . 2 ) ’ ) SCALE
С графики
CALL GROPEN
CALL GROPWS(NWS)
X1=X0+DBLE(NX)*DELX
CALL GRWNCC(XO,X1 , 0 . DO,SCALE)
CALL GRVWWC( 0 . ID O , 1 . ID O , 0 . ID O , 0 . 7 5 D 0 )
CALL G R W N W C ( - 0 .2 1 4 D O ,1 .2 D O ,- 0 .1 D O ,0 .9 D O )
CALL GRSTFR(NWS, 5 . DO, 0 . DO)
^
CALL GRFRAM
CALL GRSCLX( T X , LTX)
CALL GRSCLY(TY.LTY)
CALL GRTXTC( 1 . DO, CAPT, LCAPT)
CALL GRBOUN
CALL GRSTCL(2)
CALL G RH SDR (H IST,X O ,D ELX,NX )
CALL GRCLWS(NWS)
CALL GRCLSE
END
147
148
Глава 6. Выборки
Гистограмма дает возможность получить первое приближенное представле
ние о природе данных. Она отвечает на вопросы типа «Распределены ли дан
ные по гауссовскому закону?» или «Есть ли среди данных точки, значительно
удаленные от среднего значения?». Если гистограмма позволяет сделать вывод
о том, что совокупность распределена согласно гауссовскому закону, то значе
ния среднего и стандартного отклонения можно оценить непосредственно но
диаграмме. Среднее является центром тяжести гистограммы. Стандартное от
клонение можно оценить таким же способом, что и в следующем примере.
Пример 6.3. Полная широта полумаксимальиого уровня (ПШПУ). Если вид
гистограммы позволяет предположить, что представленная выборка взята из
гауссовского распределения, то от руки можно нарисовать кривую плотности
гауссовского распределения, лежащую как можно ближе к гистограмме. Точ
ка, в которой достигается максимум этой кривой, является достаточно точ
ной оценкой для среднего значения выборки. Затем следует провести гори
зонтальную прямую, проходящую через значение, равное половине величины
максимума. Она пересечет гауссовскую кривую в точках х а и хь. Величина
/ = хь ~ х а называется полной широтой полумаксимальиого уровня (ПШПУ).
Легко можно определить, что для гауссовского распределения существует про
стая зависимость
а -
« 0.4247 /
(6.3.1)
y C s in i
между стандартным отклонением и полной широтой полу максимального
уровня. Эту формулу можно использовать в качестве оценки стандартного
оклонения выборки, значение / при этом определяется по гистограмме.
■
Теперь наряду с гистограммами воспользуемся также методом МонтеКарло (глава 4) для того, чтобы пояснить понятия среднего, стандартного от
клонения и дисперсии выборки, а также их ошибок, определенных в разд. 6.2.
Пример 6.4. Исследование при помощи метода Монте-Карло характери
стических величин выборок, взят ы х из гауссовского распределения. По
следовательно смоделируем 1000 выборок объема N — 100 из стандартного
нормального распределения, например путем запуска
CALL RNSTNR(R,100),
и для каждой выборки при помощи программы G.1 вычислим среднее х, дис
персию s2 и стандартное отклонение s, а также их ошибки Z\x, A s2 и As, Затем
для каждой из этих шести величин построим гистограмму (см. рис. 6.3) по
1000 значениям. Поскольку каждая из этих величин определяется как сумма
большого числа случайных величин, то можно ожидать, что во всех случаях
гистограммы будут близки к гауссовскому распределению. На основании ги
стограммы для х получаем, что полная широта полу максимального уровня рав
на приблизительно 0.25, и, следовательно, стандартное отклонение составляет
6.3. Графическое представление выборок
149
Р и с . 6 . 3 . Г и стогр ам м ы д л я в ел и ч и н х, А х , s, A s , s 2 и A s 2, п о с т р о е н н ы е п о 1000
выборок о б ъ ем а 100, п о л у ч е н н ы х из с т а н д а р т н о г о н о р м а л ь н о г о р а с п р е д е л е н и я .
примерно 0.1. Действительно, гистограмма для Ах близка к гауссовскому рас
пределению со средним значением Ах = 0.1. (Исходя из величины разброса
на этой гистограмме можно определить ошибку для величины ошибки А х для
среднего х!) На основании обеих этих гистограмм можно получить достаточно
четкое представление о значении ошибки А х для среднего х для конкретной
выборки, вычисляемого по формуле (6.2.8). Она определяет (с точностью до ее
ошибки) стандартное отклонение для совокупности, из которой получено вы
борочное среднее х. Если последовательно моделируется большое количество
выборок (т. е. если эксперимент повторяется многократно), то распределение
частот для величин х стремится к гауссовскому распределению со средним,
равным среднему совокупности, и стандартным отклонением Ах. Аналогичные
рассуждения можно также провести для величин s2, s и их ошибок A s и Z\s2. ■
Если элементы выборки зависят от двух случайных величин х и у, то можно
построить диаграмму рассеяния, на которой каждый элемент будет предста
влен в виде точки в декартовой системе координат с осями х и у. Такая двумер
ная диаграмма рассеяния дает полезную информацию качественного характера
о виде зависимости между двумя этими переменными.
150 Глава 6. Выборки
Программа 6.5. Подпрограмма SMSDGR для построения двумерной диаграммы
рассеяния
К
о м а н д а в ы зо в а : call
sm sdgr( x
,y ,n ,xa,xb,ya,yb,tx,
LTX, TY , LTY, CAPT, LCAPT, NWS)
В х о д н ы е п а р а м е т р ы : X— массив значений х
массив значений у
N —число пар (х,у)
ХА,XB,YA,YB—граничные значения для переменных, при этом диаграмма
покрывает область х а < х < хь, у а < У < уь
ТХ —строка символов, которые будут нанесены на горизонтальную ось
TY — строка символов, которые будут нанесены на вертикальную ось
САРТ — символьная строка для заголовка
LTX , LTY , LCAPT —длины символьных строк
NWS — номер рабочей станции
Y—
КОММЕНТАРИИ: Диаграмма строится на листе формата «А5 landscape
(ландшафтный или альбомный)» в виде квадратной диаграммы
рассеяния. При использовании другого формата бумаги или других
пропорций данную программу нужно соответствующим образом
модифицировать.
SUBROUTINE SMSDGR( X , Y , N , ХА, Х В, YА , Y B, Т Х , LTX, T Y , LTY, САРТ,
+
LCAPT,NWS)
IM PLICIT DOUBLE PRECISIO N ( A - H . O - Z )
DIMENSION X ( * ) , Y ( * )
CHARACTER*( * )
T X ,T Y ,C A P T
CALL GROPEN
CALL GROPWS(NWS)
CALL GRWNCC( Х А , X B , YA, YB)
CALL GRVWWC( 0 . 2 D 0 , . 8 5 D 0 , 0 . ID O , 0 . 7 5 D 0 )
CALL GRWNWC( - 0 . 2 1 4 D 0 , 1 . 2 D 0 , - 0 . ID O , 0 . 9 D 0 )
CALL GRSTFR(NWS, 5 . DO, 0 . DO)
CALL GRFRAM
CALL GRSCLX(TX, LTX)
CALL GRSCLY(TY,LTY)
CALL GRTXTCCl.DO,CAPT,LCAPT)
CALL GRBOUN
CALL GRSTCL(2)
DO 10 1 = 1 , N
CALL GRDATP( 1 , 0 . IDO, X( I ) ,Y(I),O.DO,O.DO,O.DO)
10 CONTINUE
CALL GRCLWS(NWS)
CALL GRCLSE
END
6.3.
Т а б л и ц а 6 .2 . Дивиденды ,
Графическое представление выборок
цена
акции
и н а зв а н и е
151
компа-
НИИ.
12.
08.
17.
25.
16.
20.
08.
16.
20.
10.
133.
417.
346.
765.
355.
315.
138.
295.
479.
201.
ACKERMANN-GOEGGINGEN
ADLERWERKE KLEYER
AGROB AG FUER GROB U. FEINKERAMIK
AG.F.ENERGIEWIRTSCHAFT
AG F. LICHT- U. KRAFTVERS.,MCHN.
AG.F. IND.U.VERKEHRSW.
AG. WESER
AEG ALLG.ELEKTR.-GES.
ANDREAE-NORIS ZAHN
ANKERWERKE
Пример 6.5. Двумерная диаграмм,а рассеяния: зависимость дивидендов от
цен акций промышленных предприятий. В табл. 6.2 приведены первые 10
данных из всех 226 наборов данных, которые соответствуют дивидендам в
1967 году (перый столбец) и цене одной акции по состоянию на 31 декабря 1967
года (второй столбы;) для ряда акций промышленных предприятий. В третьем
столбце перечислены названия компаний всех тех немецких корпораций, стои
мость которых превышает 10 миллионов марок. Диаграмма рассеяния для пар
(цена акции, дивиденды) представлена на рис. 6.4.
Как и ожидалось, видно, что между дивидендами и ценой акции суще
ствует сильная зависимость. Однако можно заметить, что зависимость роста
дивидендов от роста цен не является линейной. Это означает, что цена акций
о
Р
Р и с . 6 .4 . Д и а г р а м м а р а с с е я н и я д л я за в и си м о с т и д и в и д е н д о в
акции Р д л я акций п р о м ы ш л е н н ы х п р е д п р и я т и й .
D о т с т о и м о с т и одн ой
152
Глава 6. Выборки
О
200
ЛОО
600
------------ о
р
800
Р и с . 6 . 5 . Г и с т о г р а м м а д л я цены а к ц и й п р ом ы ш л ен н ы х п р е д п р и я т и й .
Н> D
Р и с . 6 .6 . Г и с т о г р а м м а
тии.
для
дивидендов
по
акциям
пром ы ш л ен н ы х
предприя
определяется некоторыми другими факторами, а не текущей прибылью ком
пании.
Ниже также приведены гистограммы для цены одной акции (рис. 6.5) и
для дивидендов (рис. 6.6), которые можно построить как проекции диаграммы
рассеяния на оси абсцисс и ординат. Легко можно заметить, что поведение
дивидендов носит неслучайный характер. Они определяются как процент от
номинального значения цены акций и, следовательно, почти всегда являются
целыми. По рисункам видно, что четные значения встречаются значительно
чаще, чем нечетные.
■
6.4. Выборки из составных совокупностей
153
6.4. Выборки из составных совокупностей
Часто бывает полезно разбить совокупность G (например, всех студентов в
Европе) на различные подмножества совокупности G i, G 2 , ■ . Gt (студентов
из университетов 1,2, ...,£). Предположим, что интересующая нас величина
х в различных подмножествах совокупности имеет плотности распределения
/i(x), / г ( х) , . ■., ft{x). Тогда функция распределения, соответствующая /*(х),
равна
Fi(x) -
f
f t(x) dx = Р(х < х[х е Gi).
(6.4.1)
J ~оо
Она равняется условной вероятности того, что х < х при условии, что х содер
жится в подмножестве Gi исходной совокупности. Согласно правилу полной
вероятности (2.3.4), устанавливается взаимосвязь между различными Fi(x) и
функцией распределения Р (х ), соответствующей G :
t
F { x ) = Р(х < i|x 6 G) = У ^ Р (х < i|x 6 Gi)P(x e Gi),
F{x) = y P ( x ? Gi)Fi(x).
(6.4.2)
i=l
Соответственно для плотности распределения вероятностей получаем:
t
f(x)=^2P(x€Gi)fi(x).
г= 1
Если теперь обозначить Р(х
/
G G i)
за
(6.4.3)
то получаем, что
°°
ГОО
^
xf(x)dx~y2pi
xf i (x) dx,
J —OO
-00
t
x = y^piXi.
(6.4.4)
i=l
Таким образом среднее по всей совокупности равно среднему значению
средних для отдельных подмножеств совокупности с весовыми коэффициен
тами, равными вероятностям того, что исход принадлежит соответствующему
подмножеству совокупности. Что касается дисперсии для совокупности, то по
лучаем, что она равна
сю
х) 2f ( x) dx
сю
-
Xi)
+ (Xi
-
t
- х)'2 'Y 'jJ ifi(x ) dx
г -1
х ) } 2fi(x) dx.
154 Глава 6. Выборки
Поскольку величины
независимы, то все смешанные слагаемые обрат даются
в нуль, и, следовательно,
*
(х) =
(
Гоо
/•ос
^
< / (х - Xi)2fi{x) dx + (X i..2 f /
/i(x) dx
4J —oo
J-oo
<C(x) - Y 2 Pl{ai +
~ $ )2}-
(6.4.5)
Таким образом мы получили взвешенное среднее для сумм двух слагаемых,
Первое слагаемое является дисперсией для конкретного подмножества сово
купности, а второе —квадратичным отклонением среднего для данного под
множества совокупности от среднего по всей совокупности.
После того как мы обсудили процесс и свойства разбиения совокупности на
части, возьмем из каждого подмножества совокупности G\ выборку объема щ
(где Хд = 1 п г = тг) и рассмотрим арифметическое сред tree для всей составной
совокупности
л t т
1 t
ПгХ?;
(6.4.6)
i—1 j= 1
i—I
с математическим ожиданием и дисперсией
Д Е Е ’Д х
1 ”
(6.4.7)
Е(хр)- - ]Пп,Хг,
г=1
а2(хр) = Е{(хр -Е(хр))2} = Е
= 27Х2 ^ 2 n i E ^ Xi
г=1
(6.4.8)
СТ2 (Хр) = ^
IЬ2 ^ 2 П1а2(^)'
г—1
Используя соотношение (6.2.3), окончательно имеем:
2/- \
^ \~^ п г 2
п *—' п
7=
(6.4.9)
1
Можно было бы получить тот же самый результат путем применения форму
лы преобразования изменения ковариационных матриц и дисперсий (3.8.7) к
соотношению (6.4.6).
Очевидно, что в общем случае арифметическое среднее хр пе может слу
жить оценкой для выборочного среднего х, поскольку оно зависит от выбора
величин Hi — объемов (которые могут быть произвольными) выборок из под
множеств исходной совокупности. Сравнение соотношений (6.4.7) и (6.4.4) по
казывает, что это справедливо только для частного случая, когда рг = щ/ п.
6.4. Выборки из составных совокупностей
155
Среднее х по всей совокупности можно оценить следующим образом. Опре
делим для начала средние
для подмножеств совокупности, а затем по ана
логии с соотношением (6.4.4) подсчитаем значение выражения
t
x = ^ p * X i.
(6.4.10)
г—1
Согласно правилу преобразования ковариационных матриц и дисперсий, по
лучаем, что дисперсия для х равна
“г~
(6.4.11)
“г~Л Пг
1
Пример 6.6. Оптимальный выбор объем,а выборок для подмножеств совокуп
ности,. Для того чтобы минимизировать дисперсию <т2(х), нельзя просто про
дифференцировать уравнение (6.4.11) по всем п*, поскольку щ должны удо
влетворять уравнению ограничения
t
— п — 0.
(6.4.12)
г= 1
Поэтому необходимо использовать метод множ ителей Лагранжа: умножить
уравнения (6.4.12) на коэффициент р, сложить результат с уравнением (6.4.11)
и в заключение приравнять к нулю частные производные по щ и по р:
L = а 2(х) +
щ - п) = У ](р ? /п г)а г2 +
,2 ‘2
dL _ р-а,
+ р — 0,
дщ
П
дЬ
= ^ щ —п = 0.
др
щ - п),
(6.4.13)
(6.4.14)
Из соотношения (6.4.13) получаем, что
Щ - Рг(Тг/у/рОтсюда и из соотношения (6.4.14) вытекает, что
l /л/м = п / Т . Р М
и,следовательно,
Tli — 71р:СТг/ ^ 'pj<7j.
(6.4.15)
Полученный результат (6.4.15) означает, что щ (объем выборки из подмноже
ства совокупности г) нужно выбирать таким образом, чтобы он был пропорци
онален pi (вероятности того, что исход принадлежит подмножеству совокуп
ности i) с весовым коэффициентом, равным соответствующему стандартному
отклонению.
156 Глава 6. Выборки
Допустим, например, что компания, занимающаяся изданием научной лите
ратуры, хочет оценить общую сумму денег, потраченных на приобретение книг
по науке, двумя «подмножествами совокупности»: (1) студентами и (2) науч
ными библиотеками. Кроме того, предположим, что рассматриваемая совокуп
ность состоит из тысячи библиотек и 106 студентов, а также что стандартное
отклонение для суммы денег, потраченных студентами, составляет 100 долл., а
для библиотек (затрачивающих на литературу значительно большие объемы
средств) оно равно 3 *105 долл. Тогда получаем, что
Р\ ~
1,
р2 ~ 10 3,
СГ\ — 100,
0*2
=
3
X 10°
а из формулы (6.4.15) следует, что
П\ — const ■100,
П‘2 = const *300,
П2 = Зпь
Обратите внимание на то, что полученный результат не зависит от средних
для подмножеств исходной совокупности. В общем случае величины pi, %i и
а* неизвестны. В начате исследования необходимо их оценить на основании
предварительных выборок.
К обсуждению подмножеств совокупностей мы вернемся вновь в главе 11.
6.5. Выбор без возвращения из конечных дискретных
совокупностей. Среднеквадратическое отклонение.
Степени свободы
Ранее мы уже встречались с понятием выборки без возвращения, когда опреде
ляли гипергеометрическое распределение (см. разд. 5.3). Тогда мы установили,
что в процессе выбора без возвращения элементов из конечной (а следователь
но, и дискретной) совокупности теряется независимость между отдельными
элементами выборки.
Для того чтобы далее исследовать этот вопрос, введем следующие обозначе
ния. Предположим, что рассматриваемая совокупность состоит из N элементов
?/1 , у2 >**• >VN• Из них мы делаем выборку объема п, включающую в себя эле
менты Xi,X2 , . . . , хп. (Для гипергеометрического распределения величины
а
следовательно, и х*, могут принимать только значения 0 и 1.)
Поскольку на следующем шаге с равной вероятностью можно вытащить
любой из оставшихся элементов
то получаем, что математическое ожидание
равно
(6.5.1)
Несмотря на то, что у не является случайной величиной, оно равно ариф
метическому среднему конечного числа элементов совокупности. Определение
дисперсии совокупности вызывает некоторые сложности, с которыми мы уже
6.5. Среднеквадратическое отклонение
157
сталкивались в конце разд. 6.2. Определим ее по аналогии с формулой (6.2.6)
как
1
N
я 2{у) = л г г т £ ( у .
1_
N
-\2
у)
3= 1
(6.5.2)
Рассмотрим теперь сумму квадратов
(6.5.3)
j'= i
Поскольку мы не вводили никаких ограничений для совокупности, то вели
чины у3 могут принимать все возможные значения. Следовательно, первое
слагаемое в сумме (6.5.2) также может принимать все возможные значения.
Это верно также для 2-го, 3-го, . . . , (N — 1)-го слагаемых. Однако тогда iV-e
слагаемое в сумме фиксировано, поскольку
£ ( & - - у) = о.
(6.5.4)
j=i
Будем говорить, что число степеней свободы для суммы квадратов (6.5.3) рав
но N — 1. Это свойство можно интерпретировать геометрически. Рассмотрим
случай у = 0 и построим N -мерное векторное пространство, натянутое на оси,
соответствующие величинам у3. Тогда сумма квадратов (6.5.3) равна квадрату
модуля радиус-вектора в этом пространстве. Из-за того что наложено ограни
чение (6.5.4), конец радиус-вектора может перемещаться только в пространстве
размерности (N —1). В механике размерность пространства с заданными огра
ничениями на значения его элементов, т. е. векторов, называется числом степе
ней свободы. Такое пространство представлено на рис. 6.7 для случая N — 2.
В этом случае, при заданном равенством (6.5.4) ограничении, радиус-вектор
может лежать только на прямой у2 — —щ.
Рис. 6.7. Выборка объема два дает сум
му квадратов с одной степенью свобо
ды.
158
Глава 6. Выборки
Сумма квадратов, разделенная на число степеней свободы, т. е. выраже
ние вида (6.5.2), называется квадратическим средним или —чтобы быть более
точными — среднеквадратическим отклонением (поскольку мьг имеем дело с
разностями между значениями отдельных наблюдений и их математическим
ожиданием, т. е. средним значением). Квадратный корень из этого выраже
ния, который в этом случае является мерой разброса, называется корнем из
среднеквадратического отклонения.
Вернемся теперь к рассмотрению выборки , хг, • - •, хп. Для простоты обо
значений введем символ Кронекера, который описывает процедуру отбора эле
ментов в выборку. Он определяется как
1, если хг равен элементу уг
О в противном случае.
(6.5.5)
В частности получаем, что
(6.5.6)
Поскольку выбор любого yj в качестве г-го элемента выборки явлется равно
вероятным, то имеем:
Р{&{ = 1) = 1/ N,
(6.5.7)
Так как величина 6j описывает случайный процесс выбора, то очевидно, что
она сама является случайной величиной. Ее математическое ожидание, най
денное из соотношения (3.3.2) (где п — 2, х\ = 0, x*i = 1), равно
(6.5.8)
Е(61) = P(6j = 1) = 1/N.
Если теперь определен один из элементов выборки хг, то имеется всего лишь
( N — 1) вариантов для выбора из рассматриваемой совокупности следующего
элемента, пусть это будет, например, х^. Другими словами
р(Ф
1
=о =
= е{6№ -
(а5-9)
Поскольку выборка получена путем выбора без возвращения, то j ф £, т. е.
5{Si = 0.
(6.5.10)
Si Si = 0,
(6.5.11)
Аналогично
поскольку два различных элемента из рассматриваемой совокупности не могут
одновременно выступать в роли г-го элемента полученной выборки.
Рассмотрим теперь математическое ожидание величины хд
N
"j
Е( хг) = Е {
JV
1
JV
г = Y1 УзЕ ^1) = н Y. уj = уJ
= 1
)
3= 1
3= 1
(6.5.12)
6.6. Выборки из гауссовского распределения. Хи-квадрат распределение
159
Поскольку xi ничем не отличается от остальных элементов выборки, то ма
тематические ожидания для всех элементов выборки, а следовательно, и их
арифметическое среднее, имеют одно и то же значение
Е(х) = ±
Т1
Е (ъ ) = ff.
(6.5.13)
г -1
Поэтому арифметическое среднее по выборке является несмещенной оценкой
для среднего совокупности.
Далее рассмотрим выборочную дисперсию
s2x = Д — ]Г(х* - х)2.
7Т— 1 г,= 1
(6.5.14)
При помощи несколько более длинных вычислений можно показать, что его
математическое ожидание равно
E (s2x ) = a2(y).
(6.5.15)
Поэтому выборочная дисперсия является несмещенной оценкой для дисперсии
совокупности.
Нас интересует также дисперсия среднего: <т2(х) — £{(х — £ (х ))2}. Однако
Е(х) — у фиксировано и не является случайной величиной, несмотря на то, что
х зависит от конкретной выборки, а потому случайной величиной является.
Следовательно, получаем, что
а 2 (х) = £(х 2 ) - у
2
СГ (х) =
2
о2 { у ) + п у
2
}
(6.5.16)
Сравнивая полученный результат с результатом (6.2.3), полученным для бес
конечной непрерывной выборки, видим, что здесь появился дополнительный
множитель (1 -- n/ N) . Это согласуется с тем фактом, что дисперсия х равна
нулю в случае п = N, когда «выборка» содержит всю совокупность целиком
и когда в точности х — у.
6.6. Выборки из гауссовского распределения. Хи-квадрат
распределение
Вернемся теперь к рассмотрению совокупностей, отвечающих непрерывным
распределениям, и, в частности, рассмотрим гауссовское распределение со
средним а и дисперсией а 2. Согласно формуле (5.7.7), характеристическая
функция для такого гауссовского распределения равна
160 Глава 6. Выборки
Возьмем теперь из такой совокупности выборку объема п. Характеристическая
функция для выборочного среднего была определена формулой (6.2.2) в тер
минах характеристической функции для совокупности. Из этого определения
получаем, что
Если вместо величины х рассмотреть случайную величину (х —а) = (х —ж),
то получим, что
Vx-a(t) = exp
•
(6-6.3)
Эта величина также является характеристической функцией нормального рас
пределения, однако с другой дисперсией:
СГ2(х) = СГ2(х)/п.
(6.6.4)
Для простейшего случая стандартного гауссовского распределения (а = О,
о2 = 1) имеем
(Px(t) = ехр(—£2/2тг).
(6.6.5)
Возьмем некоторую выборку из совокупности с данным распределением
xi,x2, ... ,х„.
Нас, в частности, будет интересовать сумма квадратов элементов выборки
х2 = х 2 + х 2 4 - . . . + х 2 .
Покажем, что величина
х2
(6 .6 .6 )
имеет функцию распределения1
ftf) = w
/
“W e ' w
“'
<(Ш)
где
Л =
~ п .
(6 .6 .8 )
Величина п называется числом степеней свободы.
Д ля начала введем обозачение
- к
и определим плотность распределения как
/ ( х 2) = *(ха)А" 1е " * х2.
(6.6.9)
(6.6.10)
Из формулы (6.6.7) следует, что для двух степеней свободы плотность распре
деления является плотностью экспоненциального распределения. Сначала мы
1 Символ х 2 (хи-квадрат) был впервые предложен К. Пирсоном (К. Pearson). Несмотря
на то, что эта величина обозачается как нечто в квадрате, что напоминает о ее изначаль
ной записи в виде суммы квадратов, она выступает в расчетах как обычная случайная
величина.
б.6. Выборки из гауссовского распределения. Хи-квадрат распределение
161
докажем утверждение (6.6.7) для одной степени свободы (когда Л => 1/2). Для
этого найдем вероятность тою, что х2 < у 2, а точнее того, что —у /у 2 < х <
+ Vx^- Она равна
Г ( х 2)
Г У 2 < х2) = Г(~хб3 < х < + v S ? )
1,2
dx =
i* 2 dx.
Положив x 1 = u, da = 2т dx, непосредственно из этого выражения получа
ем, что
Т ( х 2) =
u 2е 2u dи.
(
6 . 6 . 11 )
Для того чтобы доказать это утверждение в общем случае, найдем прежде
всего характеристическую функцию для хи-квадрат распределения:
/*оо
<fx2(f ) = J
-|
K x 2)X- l e M - 2 X2 + i t X2) d x 2
(6 .6 .12)
или, подставляя (1/2 — \ t ) x 2 = у ,
Г
^ 2(t) = 2A( l - 2 i t ) - Afc /
v x~1(T v с!гл
зо
В соответствии с формулой (D.1.1) интеграл, стоящий в правой части, равен
Г(Л). Следовательно,
<Рх2(1) = (1~2НГх.
(6.6.13)
Если теперь рассмотреть еще одно такое же распределение, но с параметром
А', то
V V (0 = (1 “ 2if) А'.
Поскольку характеристическая функция суммы случайных величин равна про
изведению соответствующих характеристических функций, то мы доказали
следующую важную теорему:
Сумма двух независимых случайных величин, имеющих хи-квадрат рас
пределение с п\ и П‘2 степеням %1 свободы, сама также имеет хи-квадрат рас
пределение с п — п\ + щ степенями свободы.
Эту теорему можно использовать для того, чтобы без труда обобщить утвер
ждение (6.6.7), доказанное в данный момент только для случая п — 1. Дока
зательство вытекает из того факта, что отдельные слагаемые суммы квадра
тов независимы, а следовательно, выражение (6.6.6) можно рассматривать как
сумму п различных случайных величин, имеющих хи-квадрат распределение
с одной степенью свободы.
162
Глава 6.
Выборки
Для того чтобы найти математическое ожидание и дисперсию для хиквадрат распределения, воспользуемся его характеристической функцией, че
рез производные (5.5.7) которой можно выразить начальные моменты. Полу
чаем, что
Е (х2) - - V ( 0 ) = 2А,
(6.6.14)
£ (х 2) - п
и
£{(х2)2}
= -ip"( 0) = 4Л2 +4А,
ст2(х2) = £ { (х 2)2} - (£ (х 2)}2 = 4А,
сг2(х2) = 2п.
(6.6.15)
Таким образом математическое ожидание для хи-квадрат распределения рав
но числу его степеней свободы, а его дисперсия в два раза больше. На рис. 6.8
представлена функция плотности хи-квадрат распределения для различных
значений п. Из рисунка видно [это можно также получить непосредственно из
соотношения (6.6.10)], что эта функция в точке \ 2 = 0 стремится к бесконеч
ности при п = 1, равна 1/2 при п — 2 и обращается в нуль при п > 3. Таблица
значений хи-квадрат распределения приведена в приложении (см. табл. 1.6).
Хи-квадрат распределение играет большую роль во многих приложениях,
где в качестве меры достоверности полученных результатов используется вели
чина X2. Чем меньше значение величины X2, тем более достоверным является
данный результат. (Поскольку величина X2 была определена как сумма ква-
0
5
10
15
20
Рис. 6.8. П л отн ость х и -к в а д р а т р а с п р е д е л е н и я с ч ислом степ ен ей свободы , равным
п — 1 , 2 , . . . , 10. П р и в озр аст ан и и п зн а ч е н и е м атем ат и ч еск ого о ж и д а н и я / з ( у 2) = п
смещается вправо.
6.G. Выборки из гауссовского распределения. Хи-квадрат распределение
п -
1,
2 ,..,
163
20
Р и с . 6 .9 . Функция распределения хи-квадрат для числа степеней свободы, равного
n = 1, 2,... ,20. Кривая, расположенная левее всех, является функцией распределе
ния при п — 1, а расположенная правее всех — функцией при п = 20.
дратов отклонений элементов выборки от значения среднего по совокупности.
См. разд. 8.7.) Функция распределения
F ( x 2 ) = Р(х2 < х 2)
(6 .6 . 1 6 )
равна вероятности того, что случайная величина х2 не превышает значение х 2 *
На практике зачастую в качестве меры достоверности полученных результатов
используется величина
Щ Д ) = 1 — F ( X2 ).
(6.6.17)
Часто величину ИДх2) называют уровнем, значимости. Величина ИДх2) име
ет большие значения при малых значениях величины х 2 и с ростом х 2 убы
вает. Функция распределения (6.6.16) представлена на рис. 6.9 для различ
ных значений числа степеней свободы п. Обратная функция, дающая значения
квантилей для хи-квадрат распределения,
XF =
г
(Л
=
х 2 (1 -
W)
(6.6.18)
используется главным образом при «проверке гипотез» (см. разд. 8.7). Ее та
бличные значения приведены в приложении (см. табл. 1 .7 ).
До сих пор мы ограничивались рассмотрением случаев, когда совокуп
ность описывается стандартным нормальным распределением. Хотя на прак
тике нормальное распределение обычно встречается в общем виде: со сред
ним а и дисперсией а 2. Тогда сумма квадратов (6 .6 .6 ), очевидно, уже не будет
164
Глава 6 . Выборки
распределена согласно закону хи-квадрат распределения. Однако хи-квадрат
распределение легко можно получить, рассмотрев величину
(X! - а)2 + (х2 - а)2 + -----Ь (хп - а)2
2
(6.6.19)
Это утверждение вытекает напрямую из соотношения (5.8.4).
Если для различных величин значения математического ожидания а* и дис
персии <Ji различны, то получаем, что
х =
(xi - а \)2
(х2 - а2)
(хп ^п)
+
+ ■*■+
at
<Ji
<Тл
(6.6.20)
И в заключение, если п величин независимы, а их совместная функция рас
пределения является функцией нормального распределения (5.10.1) с вектором
математических ожиданий а и ковариационной матрицей С = В - 1 , то
( 6 .6 .21)
х2 = (х - а ) 1 В (х - а).
6.7. Величина хи-квадрат и эмпирическая дисперсия
Мы установили, что выражение (6.2.6):
s2 = —Г -
- X) 2
(6.7.1)
г= 1
является состоятельной несмещенной оценкой для дисперсии совокупности а .
Пусть Х{ — независимые случайные величины, нормально распределенные со
стандартным отклонением а. Покажем, что величина
П — 1 о
(6.7.2)
а*
имеет хи-квадрат распределение с / = п — 1 степенями свободы. Д ля начала
выполним ортогональное преобразование для п переменных х^ (см. разд. 3.8):
1
У1
у2
:(*1 - Х2),
\/1 •2
=
^ = ( * 1
+ Х2
-
2х
3),
Уз = - >====(Xl + Х2 + Хз - ЗХ4 ),
V
3 •4
(6.7.3)
Уп—1 —
1
; ( x j -Ь х 2 Ч-
./ ( п - 1 )п
*** 4" xn_ i
УП = ~t =(xi + х2 + • • • + х„) = \/пх.
(ть
1)хп),
6.8 . Выбор путем прореживания. Выборки малого объема
165
Легко можно убедиться в том, что это преобразование действительно является
ортогональным, т. е. что
± ^
=±
г=1
у1
(6.7.4)
г=1
Поскольку сумма (или разность) независимых нормально распределенных слу
чайных величин сама также является нормально распределенной случайной
величиной, то все у* нормально распределены. Коэффициенты в выражении
(6.7.3) для yt обеспечивают равенство среднего значения нулю, а стандартного
отклонения —величине а.
Тогда из соотношений (6.7.1) и (6.7.2) получаем, что
(n - l)s 2 -- ^ > г - х) 2 = ^ Р х 2 - 2 x ^ X j + пх 2
i~ 1
п
г=1
п
= Й Хг “ ПХ‘2 =
г~1
г= 1
п —1
-У п = Х^Уг27—1
г—1
Это выражение представляет собой сумму всего лишь (п — 1)-го независимо
го квадратичного слагаемого. Сравнение с формулой (6.6.19) показывает, что
величина (6.7.2) действительно имеет хи-квадрат распределение с (п —1 ) сте
пенями свободы.
Квадратичные слагаемые вида (х7 —х) 2 не являются линейно независимыми.
Они удовлетворяют следующему уравнению ограничения:
п
Х > - х) = 0 .
7— 1
Можно показать, что каждое дополнительное линейное ограничение, накла
дываемое на квадратичные слагаемые и снижающее на единицу размерность
подпространства, которому принадлежит вектор (хх —х, Х2 —х ,. . . , х71 —х), по
нижает число степеней свободы на единицу. В дальнейшем мы часто будем
пользоваться этим результатом, который привели сейчас без доказательства.
6.8. Выбор путем прореживания. Выборки малого объема
Выборки часто получают следующим образом: из совокупности выбирают п
элементов, проверяют, действительно ли они обладают заданным свойством,
а затем оставляют в выборке только те к элементов, которые этим свойством
наделены. Оставшиеся п — к элементов отбрасываются, т. е. их характеристи
ки не учитываются. Таким образом такой подход сводится к выбору путем
прореживания к элементов из п ранее выбранных элментов.
Этот метод в точности представляет собой процесс получения выборки из
биномиального распределения, параметры р и q которого соответствуют насту-
166
Глава 6. Выборки
плению или ненаступлению некоторого заданного события. Как будет показано
в примере 7.5, величина
S(p) = -
(6.8.1)
п
является оценкой максимального правдоподобия для параметра р. Дисперсия
величины S равна
<x2(S(p)) =
(6.8.2)
п
Ее можно оценить на основании выборочных данных при помощи соотношения
( 6 .8 . 1):
s2 (S(p)) = - ПП \
П)
(6.8.3)
Определим ошибку Лк как
Лк = Д з Д Б М ) ] .
(6.8.4)
Используя соотношение (6.8.3), получаем, что
(0.8.5)
Ошибка Лк зависит только от количества элементов, отобранных путем про
реживания, а также от объема выборки. Она называется статистической
ошибкой. Важным частным случаем являются выборки, отвечающие малым
значениям к , или точнее к <С п. При таком предположении можно положить
Л = пр и, основываясь па рассуждениях разд. 5.4, рассматривать к —число
элементов, отобранных путем прореживания, — в качестве отдельного элемен
та выборки, полученной из совокупности, распределенной гю пуассоновскому
закону с параметром Л. Из соотношений (6.8.1) и (6.8.5) получаем, что
S(A) = S(np) = k,
(6 .8-6)
Л \ = Ck.
(6.8.7)
(Это утверждение можно вывести из результата, полученного в примере 7.4
при N = 1 .) Утверждение (6.8.7) часто записывается в некорректной, однако
легко запоминающейся формулировке:
Лк = Ск,
которая читается как: Статистическая ошибка для числа элементов к , ото
бранных путем прореж ивания, равна у/к.
Для того чтобы пояснить значение статистической ошибки ДА = \ / к , не
обходимо более тщательно исследовать распределение Пуассона. Начнем со
случая, когда к не слишком мало (допустим, к > 20). При больших значениях
А распределение Пуассона сходится к гауссовскому распределению со средним
А и дисперсией <т2 = А. На качественном уровне поведение этого распределения
можно оценить на основании рис. 5.6. До тех пор пока к не станет слишком
6 .8 . Выбор пупом прореживания. Выборки малого объема
167
Р - .683, X = X,
*> х
Рис. 6.10. Нормальное распреде
ление со средним Л и стандарт
ным отклонением а при Л = А_ и
А = А+ .
х=к
х
маленьким, т. е. при k Д> 1 . можно рассматривать распределение Пуассона с
параметром А в топке к как нормальное распределение со средним А и диспе
рсией и 2 - А в точке х. Тогда дискретная еду чайная величина к заменяется на
непрерывную случайную величину х. Плотность распределения для х равна
/ОД)
О - А)2
2 сх2
(* - Д 2
2А
(G.8 .8 )
Наступление к событий соответствует одному наблюдению значения случайной
величины х = к.
Теперь на основании плотности распределения вероятностей (6 .8 .8 ) мы хо
тим определить доверительные границы при заданном доверительном уровне
/3 = 1 —о: таким образом, чтобы было выполнено равенство:
Р (А- < Л < А+) = 1 - а.
(6.8.9)
Другими словами, требуется, чтобы вероятность того, что истинное значе
ние А попадет в интервал с .доверительными границами Л_. и А+, была равна
доверительному уровню 1 - а. Граничные случаи А ~ А_. и А = Л+ приведены
на рис. 6.10. Они определяются из условий
Р{х > к|А - А+ ) = 1 - а / 2 ,
Р (х < к|А = А_) = 1 - а /2 .
( 6 .8 . 10)
168 Глава 6 . Выборки
Очевидно, что
рх=к
« /2 = /
^
f ( x ; \ + ) d x = — ■= /
J x —— oo
O y L'K
/•u={k-A+)/ff
= J
г
г х —к
exp <
7 — oo
l
(s ~ A+ ):
2 <r2
/ к —A, \
фо{и)Аи = Ф0 у — - — j ,
( 6 .8 . 11)
и соответственно
/
х=к
/(x ; A_) dx = Ф0
k -A _
a
(6 .8 .12)
-oo
Здесь фо и Ф0 являются плотностью и функцией распределения для стандарт
ного нормального распределения, введенного в разд. 5.8. Используя функцию
j?, обратную к функции распределения Ф0 [см. соотношение (5.8.8)], получа
ем, что
к ~ Л~ = Щ 1 - а / 2),
а
сг
= Щ а/2).
(6.8.13)
Из соотношения (5.8.10) вытекает, что 17( 1 —а /2 ) = 17(1 —а), а из симметрии
функции 17 следует, что 17(1 —а /2 ) = —17(а /2). Более того, поскольку а < 1,
то имеем: 17(1 —а /2 ) > 0, 17(а/2) < 0 . В итоге получаем значения
А_ = к —а 17(1 —а),
А+ = к + сг!7(1 —а).
(6.8.14)
Согласно равенству (6 .8 .6 ), к является оптимальной оценкой для А. По
скольку а 1 — А, то оптимальной оценкой для а будет s = у/к. Так как мы
предположили, что k ^ 1 , то колебания значения s значительно меньше, чем
колебания значения к. Следовательно, в соотношение (6.8.9) можно подставить
х = к и s = >/к, и получить, что при доверительном уровне 1 —а доверитель
ный интервал составляет
Л_ = к - 7к/2(1 - а) < А < к + 7кЯ (1 - а) = А+ .
(6.8.15)
При 1 —а = 68.3% из материала разд. 5.8 или из табл. 1.5 находим, что 17(a) =
1 . Этот результат обычно записывается в виде
А — к ± л/к
и уже был получен из соотношений (6 .8 .6 ) и (6.8.7). Таким образом, это выра
жение дает доверительные границы при доверительном уровне 68.3%, однако
только для случая k
1. При доверительном уровне, равном 90%, т. е. при
а = 0.1, находим, что 17(0.1) = 1.65, а при доверительном уровне, равном 99%,
17(0.01) = 2.57.
При очень маленьких значениях к распределение Пуассона уже нельзя
аппроксимировать нормальным распределением. Поэтому воспользуемся ре
зультатами статьи [25]. Вновь начнем рассуждения с получения соотношений
6.8. Выбор путем прореживания. Выборки малого объема
к = 25, р = .683,
169
X, = 20.031
0.1
Р
0.08
А 006
I о.од
0.02
0
0
5
10
15
20
25
30
------- О
35
ДО
Д5
50
П
к = 25, р = .683,
Х+ = 31.070
0.1
Р
0.08
А 0.06
I о.од
0.02
0
Р и с. 6 .1 1 . Р а с п р е д е л е н и е
Пуассона с п а р а м ет р о м Л п ри
А = А_ и при А = А+.
0
5
10
15
20
25
------- >
30
35
ДО
Д5
50
П
(6.8 .10 ), однако теперь вместо плотности распределения вероятностей (6 .8 .8 )
для непрерывной случайной величины х с фиксированным параметром А вос
пользуемся пуассоновской вероятностью наблюдения дискретной случайной
величины п при фиксированном А:
f(n; Л) = А -е~ Л.
(6.8.16)
ТХ
Определим теперь доверительные границы А_ и А+ для исхода к, которые
удовлетворяют условиям (6 .8 . 1 0 ) при х = п (см. рис. 6 . 1 1 ), и по аналогии с
равенствами (6 .8 . 1 1 ) и (6 .8 . 1 2 ) получим
I
оо
l-a/2=
к
Y , /(п;Л+ ) = 1 - ^ / ( п ; А + ) = 1 - Г ( к + 1;Л+ ),
п“ к+ 1
п=0
к- 1
l - a / 2 = ] T /( n ; A _ ) = F(k;A_)
п =О
или
a /2 = F(k + l;A+),
1 - a / 2 = F(k; А_).
(6.8.17)
(6.8.18)
170
Глава 6. Выборки
Здесь
fc-i
F(fc; Л) =
Д /г; Л) = Р{ к < fc)
п—О
является функцией распределения Пуассона.
Для того чтобы получить численные значения доверительных границ А+
и А_, решим уравнения (6.8.17) и (6.8.18). Другими словами, необходимо по
строить функцию, обратную к распределению Пуассона при фиксированном к
и заданной вероятности Р (в нашем случае это п /2 и 1 —о / 2 ),
А = Аг(к).
(6.8.19)
Это осуществляется численными методами при помощи программы С.7. Для
наиболее часто встречающихся значений Р функция (6.8.19) приведена в
табл. 1 . 1 .
Для выборок очень малого объема часто интерес представляет только верх
няя доверительная граница при доверительном уровне ft — 1 —а. Ее можно
найти из условия
Р (п > к!Л = A(up)) = fi = l - о,
(6.8.20)
которое налагается вместо условий (6.8.10). Таким образом имеем
к
а = У З /( n ; А(,,р)) = Р (к + 1; А(ир)).
(6.8.21)
Т1“ 0
Для вырожденного случая к = 0, т. е. для выборки, в которую не попало
ни одного наблюдения, получаем значение верхней границы А(пр^ путем обра
щения а — F (l; A^up)). В этом случае верхняя граница имеет следующее значе
ние. Если истинное значение параметра в действительности было А = А^ир\ и
если эксперимент был повторен многократно, то вероятность наблюдения как
минимум одного события равна ft. При этом наблюдение исхода к — 0 интер
претируется следующим образом: А < A^upl при доверительном уровне 1 -- а.
Из табл. 1.1 можно найти, что значение к ~ 0 соответствует А < 2.996 « 3 при
доверительном уровне 95%.
Пример 6.7. Определение ниж ней границы для времени ж изни протона при
условии, что в качестве исхода не наблюдалось ни одного распада. Как уже
упоминалось, вероятность распада радиоактивного ядра за время t равна
p it) = - [ e~x/r dor.
т Jо
Здесь т является средним временем жизни ядра. При t <С г это выражение
упрощается и сводится к виду P(t) — t/r . Для N ядер можно ожидать, что
среди них k ” N P (t) = N ' t /т ядер распадутся за время t. Среднее время
Выборки малого объема с шумом
6.9.
171
жизни г находят путем подсчета количества распадов. Если среди N ядер за
время t наблюдается к распадов, то в качестве оценки для г выступает
_
N
Особый интерес представляет среднее время жизни протона —одного из основ
ных элементов в строении материи. Недавно с большим трудом были прове
дены эксперименты, в которых наблюдали за большим количеством протонов
с детекторами, дающими возможность констатировать каждый новый распад.
До сих пор не было выявлено ни одного распада. Согласно табл. I, истинное
ожидаемое число распадов Л не превышает трех (при доверительном уровне
95%). Следовательно, при этом доверительном уровне т > N t / 3.Типичные па
раметры эксперимента составляют t = 0.3 года, N = 1033, т. е. т > 1032 года.
Поэтому протон можно рассматривать как устойчивую частицу даже в кос
мическом масштабе времени, если при этом полагать, что возраст Вселенной
оценивается всего лишь примерно в Ю 10 лет.
■
6.9. Выборки малого объема с шумом
Во многих экспериментах сталкиваются со следующей ситуацией: для наблю
даемых событий невозможно определить, принадлежат ли они в действитель
ности к интересующему нас типу (сигнальные события) или же относятся
к другому типу (события-шумы) . Тогда в качестве ожидаемого количества
событий в эксперименте может выступать распределение Пуассона с параме
тром Л = Л$ 4- Ад. Здесь As — интересующий нас параметр, отвечающий за
количество сигнальных: событий, а \ в — параметр, соответствующий событи
ям, образующим шум. Для того чтобы можно было получить информацию
относительно значения параметра As, безусловно должен быть известен пара
метр Ав. (Так, например, в эксперименте из примера 6.7 в рассматриваемом
веществе могла существовать примесь радиоактивных ядер, распад которых
невозможно отличить от распада протона. Если известно количество таких
ядер, а также время их жизни, то можно вычислить значение параметра А^-)
Существует соблазн просто взять результаты, полученные в предыдущем
разделе, и использовать их для определения доверительных границ А± и верх
ней границы А^ир\ положив As± — А± — Ад, А^ир^ = А^ р) —Ав- Однако такой
подход может привести к результатам, лишенным всякого смысла. (В примере
6.7 для к — 0 мы получили, что А^ р) = 3 при доверительном уровне 95%.
Если бы Хв = 4 и к = 0, то мы бы получили, что А^ир^ = —1 , хотя значение
As < 0 не имеет смысла.)
До сих пор наши рассуждения базировались на следующем факте: вероят
ность наблюдения п событий, где п = п$ + гщ, равна
/(п ; As + Ав)
1
"п!7 е
(A«+ ab )(As _|_ \ в у \
( 6 .9 .1 )
172
Глава 6 . Выборки
а вероятности наблюдения n s сигнальных событий и пд событий, образующих
шум, равны соответственно
f ( n s ; \ s ) = — }e~XliXns \
ns!
(6.9.2)
f { n B -,\B ) = — .e~ Xll\ nRD.
(6.9.3)
п В-
Справедливость соотношения (6.9.1) была доказана в примере 5.5 при помощи
характеристических функций на основании независимости двух величин, име
ющих распределения Пуассона (6.9.2) и (6.9.3). Это утверждение можно также
получить напрямую путем суммирования всех произведений вероятностей ви
да (6.9.2) и (6.9.3), дающих п — n s 4 - пд, применяя соотношения (В.4) и (В.6):
У
ns=0
у
f ( n s ; A s)/(n - n s ; \ B ) = е (Ал'+Ав)
-----
п Д о Пб-(П
\ПЛ-\п — п В
n s )!!Л<? Л В
п
= i_ e~(A.s- + AB)
п\
*—' \Пя Ix s sXB~ns
пs —0 4
= - y iX*+XD)(ks + b B)n = /(n ;A s + AB).
n!
Перечисленные выше трудности можно преодолеть при помощи метода,
разработанного З е х о м [26]. В тех экспериментах, в которых наблюдалось к
событий, количество событий, образующих шум, невозможно подсчитать про
сто на основании соотношения (6.9.3), поскольку из результатов такого экс
перимента известно лишь, что п в < к. Поэтому нужно заменить соотошение
(6.9.3) на другое
f { n B;X) = f ( n B ;AB ) / У / ( п й ;Лд),
пв —О
п в < к.
(6.9.4)
Это распределение нормировано единицей в области 0 < пд < к. Аналогичным
образом распределение
к
/(n ; As 4- Ад) = /( n ; As 4- Ад)
/(пд;Ад)
(6.9.5)
пв—О
нужно использовать вместо распределения (6.9.1).
Таким образом по аналогии с формулами (6.8.17) и (6.8.18) получаем, что
границы доверительного интервала As- < As < As+ при доверительном уров
не 1 — а равны
а/2 — F(k -f 1, As+ 4- Ад),
l - a / 2 = F ( k ,A s - + A B).
(6.9.6)
(6.9.7)
6.9.
Выборки малого объема с шумом
F ( к; As + Ав) = У 2 /( « ; А^ + Ав) = Р(к < к)
173
(6.9.8)
п=0
является ф у н к ц и е й р а с п р е д е л е н и я , о т в е ч а ю щ е г о н о р м и р о в а н н о й п л о т н о с т и
(6.9.4).
распределения
Е сл и н у ж н о найти т ол ь к о в ер х н ю ю гр а н и ц у при д о
в е р и т е л ь н о м у р о в н е 1 -- а , т о о ч е в и д н ы м о б р а з о м п о а н а л о г и и с с о о т н о ш е н и е м
(6.8.21) п о л у ч а е м , ч т о
a = F(k + 1, Ag р) + As).
В табл.
6.3
(6.9.9)
п р ед ст а в л ен ы н ек о т о р ы е ч и сл ен н ы е зн а ч ен и я , н ай д ен н ы е при
помощ и п р и в е д е н н о й н и ж е п р о г р а м м ы SMERSS. О б р а т и т е в н и м а н и е , ч т о п р и
к=
0 вы раж ение
(6.9.7)
не и м е е е т см ы сл а, п о э т о м у А $_ н е в о з м о ж н о о п р е д е
лить. В э т о м с л у ч а е в ы р а ж е н и е
(6.9.6),
а такж е сам а величина
\$ + н е и м е ю т
смысла. ( Т е м н е м е н е е в т а б л и ц е п р и в е д е н ы в ы ч и с л е н н ы е п р и п о м о щ и п р о
грамм ы з н а ч е н и я А
по ф о р м у л е
и
A s+- П р и э т о м п о л а г а е т с я А ^ _ = 0 , a A s+ в ы ч и с л я е т с я
(6.9.6).)
Т а б л и ц а 6 . 3 . Г р ан и ц ы д о в е р и т е л ь н о г о и н т ер в а л а As - и Ав+ и
верхняя д о в е р и т е л ь н а я г р а н и ц а А^ир^ д л я р а з л и ч н ы х зн ач ен и й
Ав и р а з л и ч н ы х вы борок очень м ал ого о б ъ е м а к п р и ф и к с и р о
ванном д о в е р и т е л ь н о м у р о в н е 90 %.
[3 = 0.90
к
Ав
Ав-
As+
\ (up)
Л 5
0
0
0
0.0
1.0
2.0
0.0
0.000
0.000
0.000
0.051
0.051
0.051
0.355
0.100
0.076
0.818
0.226
0.125
2.996
2.996
2.996
4.744
4.113
3.816
6.296
5.410
4.824
2.303
2.303
2.303
1
1
1
2
2
2
3
3
3
4
4
4
5
5
5
1.0
2.0
0.0
1.0
2.0
0.0
1.0
2.0
0.0
1.0
2.0
0.0
1.0
2.0
1.366
0.519
0.226
7.754
6.782
5.983
9.154
8.159
7.241
1.970
1.009
0.433
10.513
9.514
8.542
3.890
3.272
2.995
5.322
4.443
3.877
6.681
5.711
4.926
7.994
7.000
6.0 8 7
9.275
8.276
7.306
174 Глава 6 . Выборки
Программа 6 .6 .
П о д п р о г р а м м а SMERSS в ы ч и с л я е т д о в е р и т е л ь н ы е г р а н и ц ы д л я
п а р а м е т р а р а с п р е д е л е н и я П у а с с о н а , о п р е д е л е н н о г о по в ы б о р к е 1 м а л о г о о б ъ е м а ,
учиты ваю щ ая в озм ож н ое наличие ш ум а
К оманда
вызова :
call
sm erss
( к , c o n f i d , alback, alsmin,
ALSPLS, ALSUPR)
В ходные
параметры :
К— о б ъ е м
выборки
CONFID — д о в е р и т е л ь н ы й у р о в е н ь
к
3 — 1 —а
ALBACK — п а р а м е т р А д д л я р а с п р е д е л е н и я П у а с с о н а , с о о т в е т с т в у ю щ е г о
ш уму
ВЫХОДНЫЕ ПАРАМЕТРЫ:
ALSMIN,ALSPLS
- доверительны е
границы
Ад_, А£+
ALSUPR— в е р х н я я г р а н и ц а А^ир^
SUBROUTINE SMERSS( К , C 0 N F I D , ALBACK, ALSMTN, A L SPL S, ALSUPR)
IM PLICIT DOUBLE PRECISION
(A -H .O -Z )
PARAMETER(ZER0=0. DO, 0 N E = 1 . DO, H ALF=0. 5 D 0 , E P S I L N - 1 . D - 6 )
COMMON /CMSMER/ CALPHA,CADN0M
EXTERNAL SMZRSS
ALPHA=ONE-CONFID
IF(ALBACK . L E . ZERO) CADNOM-ONE
С в ы ч и с л е н и е ALSMIN -— н и ж н е й г р а н и ц ы д о в е р и т е л ь н о й о б л а с т и
I F ( K .E Q .O ) THEN
ALSMIN=ZERO
ELSE
KK=K
IF(ALBACK.G T.ZERO ) CADNOM=SCPOIS(KK, ALBACK)
CALPHA=ONE-HALF*ALPHA
ALS0=ZER0
ALS1=0NE
I F ( K . G T .0 ) ALS1=DBLE(K)
CALL AUXZBR( ALSO, A L S 1 , SMZRSS, ALBACK, KK, NDUM)
CALL AUXZFN(ALSO, A L S 1 , ALSMIN, SMZRSS, ALBACK, KK, NDUM, EPSILN )
END IF
CALPHA=HALF*ALPHA
С в ы ч и с л е н и е ALSPLS —
в е р х н е й границы д о в е р и т е л ь н о й о б л а с т и
КК=К+1
IF(ALBAC K . GT. ZERO) CADNGM=SCPOIS(KK, ALBACK)
ALS0=ZER0
ALS1=DBLE(K)
CALL AUXZBR(ALSO, A L S 1 , SMZRSS, ALBACK, KK, NDUM)
CALL AUXZFN(ALSO, A L S 1 , A L SP L S, SMZRSS, ALBACK, KK, NDUM, E P SIL N )
С вы числение
ALSUPR —
CALPHA=ALPHA
КК=К+1
ALS0=ZER0
в е р х н е й границы д л я п а р а м ет р а
6.10. Об оценивании отношения вероятностей редких событий
175
ALS1=DBLE(K)
CALL AUXZBR( ALSO, ALS1 , SMZRSS, ALBACK, KK, NDUM)
CALL AUXZFN( ALSO, ALS1 , ALSUPR, SMZRSS, ALBACK, KK, NDUM, EPSILN)
END
C-------------------------------------------------------------------------------------------------------DOUBLE PRECISION FUNCTION SM ZR SS(A L S, ALBACK, К ,NDUM)
IM PLICIT DOUBLE PRECISION ( A - H . O - Z )
COMMON /CMSMER/ CALPHA,CADNOM
SM ZRSS=CALPHA-SCPOIS(K, ALS+ALBACK)/CADNOM
END
I
6.10. Об оценивании отношения вероятностей редких
событий
Зачастую и экспериментах сначала оценивается количество сигнальных собы
тий к , а затем оно сравнивается с общим числом d наблюденных conyrncmeywщих событий (пусть в качестве сопутствующего события выступает некоторое
событие Л). При этом интерес представляет истинное значение г —отношения
количества сигнальных событий к количеству наблюдений сопутствующего со
бытия или, точнее, отношения вероятности наблюдения сигнального события
к вероятности наблюдения события Л. В качестве оценки для этого отноше
ния, очевидно, можно использовать г = k / d . Найдем теперь доверительные
границы для г. Если величины к и d имеют достаточно большие значения, то
их можно аппроксимировать гауссовскими случайными величинами со стан
дартными отклонениями сд ~ \/к и о d — \/d. Тогда на основании формулы
преобразования ковариационных матриц и дисперсий получаем, что
( 6 . 10 . 1)
Кроме того, если
d
к,
то Л г равно просто
( 6 . 10 .2 )
Тлели не выполнены необходимые условия, при которых справедливо соот
ношение ( 6 . 1 0 . 1 ) или даже соотношение ( 6 . 1 0 . 2 ) , т. е. если к и d принимают
малые значения, то нужно использовать метод, разработанный Д ж е й м с о м и
РОУСОМ [23]. Очевидно, что при наблюдении конкретного исхода вероятность
того, что этот исход есть сигнальное событие, равна
г
(6.10.3)
а вероятность того, что это событие Л, составляет
Я= 1 - Р
1
Т+ г '
(6.10.4)
176
Глава 6. Выборки
Для эксперимента, в котором наблюдалось всего N — k + d событий, вероят
ность наблюдения ровно п сигнальных событий можно вычислить при помощи
биномиального распределения (5.1.3). Она равна
N
Я » ;г )= П л " - = Г
1 + Т
п
1 + Г
(6.10.5)
Тогда вероятность того, что п < к, составляет
к—1
Р (п < к) =
( 6 . 10.6)
/ 0 ; г) = F (k ;r),
п—О
где
к—1
F(k;r) = ]T
п=0
'N'
п
N -71
1 + Г
1+ Г
(6.10.7)
т. е. функция распределения является функцией биномиального распределе
ния. Для нахождения границ
и г+ доверительного интервала при довери
тельном уровне (3 — 1 —а по аналогии с формулами (6.8.17) и (6.8.18) восполь
зуемся соотношениями
a / 2 - F ( k + l,/> ) ,
1 - а / 2 = F(k; г_).
(6 . 1 0 .8)
(6.10.9)
Если необходимо найти только верхнюю г р ап и ну при довериггсльном уровне
[3 = 1 —а, то ее можно получить на основании соотношения [см. (6 .8 .2 1 )]
а = F(k + 1 ;г (,,р)).
(6 . 1 0 .10 )
При заданных значениях k, d и /3 величины
?■_ и г '|1р| можно вычислить
при помощи программы SMERQS, приведенной в конце следующего раздела.
6.11. Об отношении вероятностей редких событий
в присутствии шума
Объединяя (как это было сделано Ш в а рц е м [24]) подходы, представленные
в разделах 6.9 и 6.10, можно перейти к решению следующей задачи. Пусть в
эксперименте в качестве исходов могут выступать три типа событий: сигналь
ные, шум и сопутствующие. Сигнальные и образующие шум события невоз
можно отличить друг от друга. Предположим, что в процессе эксперимента
было констатировано всего к сигнальных и образующих шум событий, а также
d сопутствующих событий. Обозначим г$ и гр истинные значения (в смысле
определения, приведенного в начале предыдущего раздеты) отношений количе
ства сигнальных событий к количеству сопутствующих и количества, событий,
образующих шум, к количеству сопутствующих событий. Тогда вероятности
6.11.
Об отношении вероятностей редких событий в присутствии шума
177
Ps и Р в того, что случайно выбранное из множества исходов событие будет
сигнальным или образующим шум, соответственно равны
гв
rs
( 6 . 11. 1)
рв =
Ps
1 + rs + гв ’
^
1 + rs + гв
А вероятность того, что такое событие будет сопутствующим, составляет
1
PR ~ 1 - PS ~ РВ =
( 6 . 11. 2)
1 + r s + Гв
Если в эксперименте наблюдалось всего I\1 = k + d событий, то вероятности
того, что в качестве исходов выступали ровно п$ сигнальных событий, пр
событий, образующих шум, и п р = N — n s — п в сопутствующих событий,
соответственно равны
fs(ns-,ps) =
(6.11.3)
( nNs) p 3 s (l - p s ) N~ n s ,
/в (п в ;рв) = ( N W ( 1 - Р в ) ы~п°,
\ пВ/
(6.11.4)
/н(ган;ря) = f
(6.11.5)
_ P « )N_n"-
Поскольку в данном случае мы имеем дело с тремя взаимоисключающими
событиями, то вместо биномиального распределения (6.10.5) приходим к три
номиальному распределению, т. е. полиномиальному распределению (5.1.10) с
параметром £ = 3. Следовательно, вероятность того, что в эксперименте среди
общего числа 1\1 исходов наблюдалось в точности n s сигнальных событий, п в
образующих шум и N —n s —в в сопутствующих событий, равна
N!
f ( n s , n B ; r s , r B ) = — j----- lyrr— ----------- — wP s 'P b ' H
Tbs'riB'i™ - n s - n B p
-PS- P
b
) N ns n ° ■
( 6 . 11.6 )
Однако здесь мы не учитывали тот факт, что количество событий, образующих
шум, не может превышать к. Применим метод, аналогичный (6.9.4), и вместо
/н будем использовать функцию
к
(6.11.7)
п в < к,
У З f ( n B;pe),
1 в ( п в ' , р в ) - 1 в ( п в -,рв)
п в =О
Такую замену нужно произвести также в соотношении (6.11.6), что дает
f ( n s , n B-,rs,rB) - f ( n s , n B ; r s , r B) /
УЗ f ( n B ’ Pn)-
(6.11.8)
/ пв =0
Вероятность наблюдения в качестве исходов n s сигнальных событий вне зави
симости от числа событий, образующих шум, равна
к
f(n s',rs , r B) =
УЗ
h n s , n B \ r s , r B ),
178 Глаза 6 . Выборки
и в итоге в ер оя тн ость т о го ,
что n s <
к,
составляет
к—пв—1
F(k-,rs ,r B) =
5 2 f ( n s-,rs , r B )
ns=О
к—пд —1 к—1
_
Е
ns~ ]0
пв
Е
, ,/К, N!....... .......rfPs"l>’АП(1 ~ Ps - PB)N- n“Е
пв= 0 H g !n B !(N - ns - п в ) ! __________________
k
Ml
V' _____—_____ г Л в (Л -п гЛи~п»
Поскольку мы предположили, что г в известно, то при фиксированном к ве
личина F зависит только от г$. По аналогии с равенствами (6 .9 .6 ) и (6.9.7)
границы rs+ и r s - доверительного интервала для rs при доверительном уров
не /3 = 1 —а можно найти из следующих условий:
a /2 =
l-Q/2 =
F(k+l;rs+,rB),
F(k;r5- )rB).
(6.11.9)
(6.11.10)
Если необходимо найти только верхнюю границу при доверительном уровне
/3 = 1 —а , то, согласно формуле (6.9.9), это можно сделать на основании со
отношения
а = Т ( к + 1 ; г ^ р),гв ).
(6 .1 1 . 1 1 )
В табл. 6.4 приведены некоторые численные значения, полученные при по
мощи приведенной ниже программы SMERQS. Однако при к ~ 0 соотношение
(6.11.10), а следовательно, и значения r s - не имеют смысла. Аналогично вы
ражение (6.11.9) и Г5 + также не имеют смысла при к — 0. (Несмотря на это.
в таблице приведены вычисленные при помощи программы значения rs_ и
r s + при к = 0. При к = 0 программа полагает r s - ~ 0 и вычисляет
па
основании соотношения (6.11.9).)
Программа 6.7. Подпрограмма SMERQS вычисляет доверительные границы для
о т н о ш е н и я к о л и ч е с т в а сигнальных событий к количеству элементарных собы
т и й н а о с н о в а н и и в ы б о р к и малого объема с возможным наличием шума
■ КОМАНДА
ВХОДНЫЕ
ВЫ ЗОВА:
CALL
ПАРАМЕТРЫ:
К
SMERQS(K,ID,CONFID,RBACK,RSMIN,RSPLS,RSlJPR)
— количество
к
наблюдаемых сигнальных событий
и собы тий, о б р а зу ю щ и х ш ум
наблюдаемых сопутствующих событий
CONFID — д о в е р и т е л ь н ы й уровень (3 — 1 — а
RBACK — о ж и д а е м о е значение г в — отношения количества событий,
о б р а з у ю щ и х ш у м , к количеству сопутствующих событий
ID — к о л и ч е с т в о d
В ы х о д н ы е
ПАРАМЕТРЫ:
RSMIN,RSPLS — доверительные границы гs —j rs+
RSUPR— в е р х н я я г р а н и ц а r^up^
6. П. Об отношении вероятностей редких событий в присутствии шума
Т а б л и ц а 6 , 4 . Г ран ицы г$~ и г $ + д о в е р и т е л ь н о г о и н т ер в а л а и
верхняя д о в е р и т ел ь н а я г р ан и ц а r K
s д л я р а з л и ч н ы х зн а ч е н и и
г л и р а з л и ч н ы х очень м ал ы х зн а ч е н и й к п р и ф и к с и р о в а н н о м
коли честве с о п у т с т в у ю щ и х с о б ы т и й d и з а д а н н о м д о в е р и т е л ь
ном уровн е 90% .
1
3 = 0.90, d == 10
г Ыр)
k
гв
r S-
rs+
Ts
0
0
0.0
0.1
0
0.2
0.000
0.000
0.000
0.349
0.349
0.349
1
0.0
0.1
0.005
0.005
0.005
0.034
0.010
0.007
0.077
0.020
0.012
0.573
0.502
0.464
0.259
0.259
0.259
0.450
0.382
0.348
1
1
0.2
2
2
2
0.0
0.1
3
3
3
4
4
4
0.0
0.1
5
a
5
0.2
0.2
0.0
0.1
0.2
0.0
0.1
i
0.2
0.127
0.044
0.019
0.180
0.085
0.034
0.780
0.686
0.613
0.979
0.8 8 0
0.788
1.174
1.074
0.976
1.367
1.267
1.167
0.627
0.535
0.467
0.799
0.701
0.612
0.968
0.869
0.771
1.135
1.035
0.936
SUBROUTINE SMERQS( К , I D , C 0 N F I D , RBACK, RSMIN, R S P L S , RSUPR)
IM PLICIT DOUBLE PRECISION ( A - H , 0 - Z )
PARAMETER ( ZER0=0 . DO, 0NE= 1 . DO, H ALF=0. 5 D 0 , E P SILN = 1 . D - 6 )
COMMON /CMSMER/ CALPHA
EXTERNAL SMZRQS
ALPHA=0NE-C0NFID
С в ы ч и с л е н и е RSMIN
н и ж н ей г р а н и ц ы д о в е р и т е л ь н о й о б л а с т и
I F ( K . E Q . O ) THEN
RSMIN=ZER0
ELSE
KK=K
CALPHA=0NE-HALF*ALPHA
RSO=ZERO
RS1=0NE
I F ( K .G T .0 ) R S 1 = D B L E ( K )
CALL AUXZBR(RSO, R S 1 , SMZRQS, RBACK, KK, ID )
CALL AUXZFN(RSO, R S 1 , RSMIN, SMZRQS, RBACK, KK, I D , E P S IL N )
END IF
179
180 Глава 6 . Выборки
CALPHA=HALF*ALPHA
С вычисление RSPLS — верхней границы доверительной области
КК=К+1
RS0=ZER0
RS1=DBLE(K)
CALL AUXZBR(RSO, RS1 ,SMZRQS, RBACK, KK, ID)
CALL AUXZFN(RSO, RS1 ,RSPLS, SMZRQS, RBACK, KK, ID, EPSILN)
С вычисление RSUPR — верхней границы для параметра
CALPHA=ALPHA
КК=К+1
RS0=ZER0
RS1=DBLE(K)
CALL AUXZBR(RSO, RS1 ,SMZRQS, RBACK, KK, ID)
CALL AUXZFN(RSO, RS1 ,RSUPR, SMZRQS, RBACK,KK, ID, EPSILN)
END
DOUBLE PRECISION FUNCTION SMZRQS(RS,RB,K,ID)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
COMMON /CMSMER/ CALPHA
PARAMETER(ZER0=0. DO, ONE=l. DO,EPSILN=1. D-6 )
N=K~1+ID
DEN=ONE+RS+RB
PS=RS/DEN
PB=RB/DEN
IF(PB.LT.EPSILN) THEN
DEN=0NE
ELSE
DEN=SCBINM(K,N,PB)
END IF
G=GLNGAM(DBLE(N+1))
F=ZER0
DO 20 NB=0,K-1
DO 10 NS=0,K-NB-1
IF(NS.EQ.O) THEN
ES=0NE
ELSE
ES=PS**NS
END IF
IF(NB.EQ.O) THEN
EB=0NE
ELSE
IF(PB.LT.EPSILN) THEN
EB=ZER0
ELSE
EB=PB**NB
6Л 2. Примеры программ
181
END IF
END IF
IF(N-NS-NB. EQ.0) THEN
E=0NE
ELSE
E=(ONE-PS-PB)* * (N-NS-NB)
END IF
F=F+EXP(G-GLNGAM(DBLE(NS+1)) -GLNGAM(DBLE(NB+1)) +
GLNGAM(DBLE(N-NS-NB+1)))*ES*EB*E
10
CONTINUE
20 CONTINUE
SMZRQS=CALPHA-F/DEN
END
6.12. Примеры программ
Все программные файлы доступны в поддиректории \DATAN\EXASRC.
6.12.1. Головная программа E1SM для демонстрации работы
подпрограммы SMMNVR
Эта короткая программа моделирует 10 выборок объема N — 100, взятых из
стандартного нормального распределения. Д ля каждой выборки вычисляются
значения шести величин: среднего, ошибки среднего, дисперсии, ошибки дис
персии, стандартного оклонения и ошибки стандартного отклонения. Затем эти
значения выводятся на экран в виде одной строки.
6.12.2. Головная программа E2SM для демонстрации работы
подпрограмм SMHSIN, SMHSFL и SMHSGR
Эта программа демонстрирует процессы подготовки, построения и вывода на
экран в графическом виде гистограммы. По выборке из стандартного нормаль
ного распределения объема N строится гистограмма. Сначала запрашиваются
численные значения N , нижняя граница хо, длина интервалов разбиения А х и
количество интервалов разбиения п х. Далее проводится подготовка к постро
ению гистограммы. Затем в цикле порождаются элементы выборки и по их
значениям строится гистограмма.
В заключение запрашивается номер графической рабочей станции и на
экран выводится гистограмма.
6.12.3. Головная программа E3SM для демонстрации работы
подпрограммы SMSDGR
Эта программа осуществляет построение и вывод на экран в графическом ви
де диаграммы рассеяния. Координаты точек, которые наносятся на диаграмму
182
Глава 6 . Выборки
Рис. 6.12. Пары случайных чисел из двумерного нормального распределения.
рассеяния, соответствуют парам случайных чисел, имеющим двумерное нор
мальное распределение (см. разд. 4.11). Программа запрашивает у пользовате
ля значения параметров нормального распределения (средние ai, а2, стандарт
ные отклонения <7 i, <
j 2 и коэффициент корреляции р), а также количество пар
случайных чисел, которые нужно смоделировать. Затем происходит генерация
пар случайных чисел, формирование заголовка диаграммы, названий осей и
масштабных меток. После этого запрашивается номер графической рабочей
Станции и на экран выводится построенная диаграмма (см. рис. 6 .1 2 ).
6.12.4. Головная программа E4SM для демонстрации работы
подпрограммы SMERSS
Эта программа вычисляет доверительные границы А , А$+ и А ^1^ для пара
метра пуассоновского распределения сигнала. В интерактивном режиме поль
зователь вводит количество наблюдаемых событий к, доверительный уровень
/3 — 1 — а и параметр распределения Пуассона Ав для событий, образующих
шум.
Указания: (а) Сверить результаты со значениями из нескольких строчек
таблицы 6.3.
(Ь) Положить (3 = 0.683, \ в = 0 и при различных значениях к сравнить значе
ния As- и As+ с величиной, полученной по формуле Л = к ± Ук.
6.12. Примеры программ
183
6.12.5. Головная программа E5SM для демонстрации работы
подпрограммы SMERQS
Данная программа вычисляет значения доверительных границ rs _ , rs+ и r^up^
для величины г —отношения количества сигнальных событий к количеству
сопутствующих событий в пределе при стремлении объема выборки к беско
нечности, Точнее, вычисляется значение величины г —отношения параметров
As и Xr распределений Пуассона для сигнальных и сопутствующих событий.
Вначале программа запрашивает количество к наблюдаемых исходов (сигналь
ных и сопутствующих событий), количество d сопутствующих событий, дове
рительный уровень /3 ----- 1 -- а и ожидаемое значение отношения г в — Xb /X r
для событий, образующих шум.
У казан и е: Сверить полученные результаты со значениями из нескольких
строчек таблицы 6.4.
6.12.6. Головная программа E6SM для моделирования экспериментов
с малым числом событий и шумом
Всего данной программой моделируется пехр экспериментов. В каждом экс
перименте анализируется N объектов. Каждый из объектов в качестве исхо
да с вероятностью ps ~ X s /N выдает сигнальное событие и с вероятностью
рв — Xr / N —событие, образующее шум. В результате количества соответству
ющих событий, констатированных в смоделированном эксперименте, равны к£,
к# и к — ks -Ь кд. В реальном эксперименте известно только значение к. Про
грамма вычисляет доверительные границы As_, А£+ и А^р^ для данного к при
заданном доверительном уровне /3 — 1 —а и заданном значении Ав и выводит
их на экран для каждого эксперимента.
У казан и е: Положить, например, пехр — 20, N ~ 1000, А^ — 5 , Ав — 2,
/3 ~ 0.9 и выяснить, действительно ли, как и ожидалось, при моделировании в
10% экспериментов в результате выдается интервал (As_,As+), в котором не
содержится значение As- Примите во внимание значение статистической ошиб
ки наблюдений в случае, когда осуществляется всего лишь 20 экспериментов.
6.12.7. Головная программа E7SM для моделирования экспериментов
с малым количеством сигнальных событий и с сопутствующими
событиями
Вначале программа запрашивает значения величин пехр, У* А$, А3 , Xr и до
верительного уровня (3 = 1 —а. Затем вычисляются вероятности p s — X s / N ,
рв — Хв/ N, PR = Xr / N , а также их отношения: rs = Ps/PR и гв = Pb / pr
для всех пехр смоделированных экспериментов, в каждом из которых ана
лизируется N объектов. Каждый из объектов с вероятностью p s в качестве
исхода дает сигнальное событие, с вероятностью р в ~ событие, образующее
шум, а сопутствующее событие— с вероятностью p r . (Здесь предполагается,
184 Глава 6. Выборки
что p s + Р в + P R ^ 1.) При моделировании порождаются значения к 5 , к в
и d, соответствующие количеству сигнальных, шумовых и сопутствующих со
бытий соответственно. В реальном эксперименте известны только величины
k = ks + k BHd , поскольку сигнальные события и события, образующие шум,
невозможно отличить друг от друга. Далее при заданных значениях (3 и г в
для величин к и d, найденных в результате смоделированных экспериментов,
(up)
вычисляются и выводятся на экран доверительные границы rs_ , r*s+ и r ys .
У казан и е: Модифицировать указание, соответствующее примеру програм
мы 6.12.6, положив дополнительный задаваемый параметр As — 20. Выяснить,
во скольких случаях истинное значение rs , используемое при моделировании,
не содержится в интервале ( r s _ ,r s + ).
6.13. Задачи
6.13.1. Эффективность оценок
Пусть Хх, х2 , х3 — элементы выборки из непрерывной совокупности с неизвест
ным средним х и известной дисперсией <т2.
(a) Показать, что следующие величины являются несмещенными оценками
для х
51 = \ * \ + 4 Х2 + ^ Х3 ,
52 =
| х х + | х 2 + | Х3 ,
53
gXx
Указание: Легко показать, что S =
кой, если Y12=i a i — 1 *
3 ^2
2 ^*
aiXi является несмещенной оцен
(b) Найти значения дисперсий o'2 (Si), <х2 (S2), ст2{S3), основываясь на соотно
шении (3.8.7) и предположении о том, что элементы выборки хх, х2, х3
независимы.
(c) Показать, что арифметическое среднее х — |хх + ^х2 4 - ^х 3 имеет минимальную дисперсию среди всех оценок вида S = ^ i = i
удовлетворяющих
условию £ i= 1 a>i = 1 .
Указание: Минимизировать дисперсию величины S = aiXi + a 2 x2 + (1 —а\ a 2 )x3 по а\ и по а2. Вычислить полученное значение дисперсии и сравнить
его с дисперсиями, найденными в пункте (Ь).
6.13.2. Выборочное среднее и выборочная дисперсия
Вычислить выборочное среднее х, выборочную дисперсию s2 и оценку для дис
персии выборочного среднего s2 — (l/n ) s 2 для следующей выборки:
18, 2 1 , 23, 19, 20, 2 1 , 20, 19, 20, 17.
Воспользоваться методом, описанным в примере 6 . 1 .
6.13. Задачи
185
6.13.3. Выборки из составных совокупностей
В преддверии наступающих выборов проводится опрос общественного мнения.
В нашем (специального смоделированном) примере совокупность разделена на
три подмножества, а из каждого из этих подмножеств взята выборка объема 1 0 .
Каждый из элементов выборки может принимать значение 0 (если голосует за
партию А) или 1 (если голосует за партию В). Выборки имеют следующий
вид:
г
=1
* —2
i= 3
{pi =
. ) : X i j - 0 , 0 , 0 , 0 , 1, 0 , 1, 0 , 0 , 0 ,
01
(р* = 0.7) : Xij = 0 ,0 ,1 ,1 ,0 ,1 ,0 ,1 ,1 ,0 ,
(pi — 0.2) : Xij - 0 ,1 ,1 ,1 ,1 ,0 ,1 ,1 ,1 ,0 .
(a) На основании этих выборок дать оценку результата выборов и подсчитать
ее дисперсию s2. Показывают ли данные результаты явное предпочтение,
отдаваемое опрашиваемыми людьми одной из партий?
(b) На основании этих выборок определить, для какого объема выборки п и
каких объемов подвыборок щ величина х будет иметь минимальную дис
персию (см. пример 6 .б).
6.13.4. Хи-квадрат распределение
(a) Определить асимметриию 7 = д 3 /сг3 для хи-квадрат распределения, ис
пользуя соотношение (5.5.7). Д ля начала выразить д 3 через Л3, х и £*(х2).
(b) Показать, что 7 —►0 в пределе при п —> оо.
6.13.5. Гистограмма
По следующим результатам измерений построить гистограмму:
26.02, 27.13, 24.78, 26.19, 22.57, 25.16, 24.39, 22.73, 25.35, 26.13,
23.15, 26.29, 24.89, 23.76, 26.04, 22.03, 27.48, 25.42, 24.27, 26.58,
27.17, 24.22, 21.86, 26.53, 27.09, 24.73, 26.12, 28.04, 22.78, 25.36.
Использовать интервалы разбиения длины А х = 1 .
Указание: Д ля каждого значения в соответствующем интервале разбиения ри
совать в виде крестика прямоугольник с основанием А х и с высотой 1 . Та
ким образом вам не придется упорядочивать данные результаты измерений,
так как каждый следующий прямоугольник будет находиться над всеми пре
дыдущими прямоугольниками, соответствующими данному интервалу разби
ения. В результате столбцы гистограммы будут вырастать в процессе постро
ения.
186 Глава 6 . Выборки
6.14. Указания и решения
Задача 6.13.1
(а) Е ( S) = E ^ d i X i ) = J 2 ai E ( xi) =
£ ai = 1 •
= т тогда и только тогда, когда
(Ь )
^= e (S )
1
1
1
^ ( S i ) = ^ ( ^ : + ^ + 7 ) = ^ - i8 = 0.375a2,
16
16 4
<’J(S!>= (й 4
.2.СЛ _
— +
=
25
25)
а 2 ■
- - = 0.360а2,
25
, 1 . ^ - -2 . L = 0.389а2.
o-2(S3) = ^ 2 ( 36
^ + :9k + l4 ) =(T
18
(с)
a 2(S)
9 a 2 (S)
9a i
9 a 2(S)
da2
ai
= [af + 02 + l 1 _ (ai + °'2 ))"]o-“= [2ai - 2(1 - (oi + a 2 ))]a 2 = 0,
= [2a2 —2(1 - (a-i + a2))]a2 = 0,
= 1 - (аг + a2),
a 2 = 1 — (ai + 02)1
aj = a 2 = —;
a 2(S) = ^ a 2 = 0.333a2.
Задача 6.13.2
a = 20,
nП
=
/
i ( - 2 + 1 + 3 - 1 + 0 + 1 + 0 - 1 4 - 0 - 3 ) = -0.2,
x = 19.8,
s = i(1 .8 2 + 1.22 + 3.2 2 + 0.8 2 -f 0 .2 2 f
+ 1.22 + 0.22 + 0.82 + 0.22 + 2.82)
= J • 25.60 = 2.84,
s? = 0.284.
Следовательно, x - 19.8 ± 0.53.
6.14. Указания и решения
187
Задача 6.13.3
(а)
X! = 0.2, хо = 0.5, х3 = 0.7,
х = 0.02 + 0.35 + 0.14 = 0.51,
sj = - ( 2 - 10 • 0.22) = 0.178,
s§ = 1(5 - 10-0.52) = 0.278,
гт2 = 0.233,
4 = -(7 - 10-0.72)
f) I 2
0.72
0 . 22
0.278 + —j-Q-0.233
8* = 1 (Г0Л 78+ 10
= 0.001'0.178 + 0.049 • 0.278 + 0.004 • 0.233 = 0.0147,
sg =
= 0 .1 2 .
Полученный результат х = 0.51 ± 0 .1 2 не дает возможности говорить о
явном предпочтении, оказываемом одной из партий.
s, = 0.422, s2 = 0.527, s3 = 0.483,
Pi Si = 0.0422, p 2s2 = 0.369, p3s3 = 0.0966,
У р г Si = 0.508,
— = 0.083, — = 0.726, — = 0.190.
71
П
П
Задача 6.13.4
(а) Для простоты положим х 2 = и.
Дз —
—
3 — З и 2и
Е ( и 3) - ЗиЕ(и2) + З и 2£ ( и )
А3 — ЗиЕ( и2) -ь 2и3,
Е{ ( и
— и)3} — £ { и
+ Зии2 —
-
и3}
и3
£ (и 3 ) = А 3 = ^ ' " ( 0 )
=
= i ( —А)(—А - 1)(—А - 2)(—2i)3
= 8 А(А + 1)(А + 2 ) = 8 А3 + 24А2 + 16А,
ЗиЕ(и2) = 6А(4А2 + 4А) = 24А3 + 24А2,
2и3 = 2 • (2А)3 = 16А3,
Из — 16А,
7 = д з/ а 3 = 16A/8AJ = 2А“ *.
(Ь) Очевидно, что 7 = 2 / \ f \
0 в пределе при А — \ п
Оо.
188 Глава 6 . Выборки
Задача 6.13.5
NCx)
А
<> х
Р и с . 6 . 1 3 . Г и с т о г р а м м а д л я д а н н ы х из за д а ч и 6.13.5.
Глава 7
Метод максимального правдоподобия
7.1. Отношение правдоподобий. Функция правдоподобия
В предыдущей главе мы ввели понятие оценки параметра. Мы также описали
желательные свойства оценок, хотя не определяли, каким образом можно по
строить такие оценки в каждом конкретном случае. Мы вывели оценки только
для двух важнейших величин: математического ожидания и дисперсии. Те
перь перейдем к задаче общего характера.
Зададим параметры, подлежащие оцениванию, в виде вектора
А = (Ai, А2 , . . . , Ар) и запишем плотность распределения вероятностей слу
чайных величин х — (xi,x2, -.. ,хп) в виде
/ = /(* ; А).
(7.1.1)
Если теперь мы осуществим некоторое количество экспериментов (обозначим
это количество через N ) либо возьмем выборку объема N из некоторой сово
купности, то каждому эксперименту с номером j можно сопоставить число
АРМ = / ( x ^ ; A ) d x .
(7.1.2)
Величину dPW можно трактовать как апостериорную вероятность, т. е. вероятность, определенную после эксперимента. Она показывает, насколько ве
роятно было получить результат
(на малом интервале значений х ^ ). То
гда полная вероятность осуществления всех событий х^1) 7
,...,
,..., х ^
равна произведению
N
d P = n / ( x (i);A)dx.
(7.1.3)
Очевидно, однако, что эта вероятность зависит от А. Бывают случаи, когда
исходная совокупность определяется лишь двумя возможными наборами па
раметров Ai и А2. Подобные случаи встречаются, к примеру, в ядерной физике,
где состояния обязательно должны быть либо «четными», либо «нечетными».
Можно построить отношение
N
N
3 = П / ( xW); A i ) / J I / ( xW);A2)
3=1
(7Л-4)
J=1
и сказать, что величины Ai являются в «Q раз более вероятными (правдоподоб
ными)», чем величины А2. Эта дробь называется отношением правдоподобия.1
1 Хотя отношение правдоподобия Q и функции правдоподобия L и определяемые ниже,
являются случайными величинами (поскольку являются функциями от выборки), мы не
будем здесь записывать их при помощи специальных символов.
190
Глава 7.
Метод максимального правдоподобия
Произведение вида
N
L = Jln^-,X )
J= 1
(7.1.5)
называется функцией правдоподобия. Необходимо четко различать плотность
распределения вероятностей и функцию правдоподобия, которая является
функцией отданных и, следовательно, сама есть случайная величина. В част
ности, во многих исследованиях большое значение имеет вероятность апосте
риорного типа из соотношения (7.1.5).
Пример 7.1. Отношение правдоподобий. Предположим, что путаем многократ
ного подбрасывания монеты мы хотим определить, принадлежит ли монетах
типу А или к типу В . Монета в задаче является асимметричной: для монет
типа А орел выпадает с вероятностью 1/3, а для монет типа В орел выпадает
с вероятностью 2/3.
_________ А
орел
1/3
решка 2/3
В
2/3
1/3
Пусть в результате эксперимента орел выпал один раз, а решка четыре раза,
тогда имеем: Ь а = | *( | ) 4 и Ь в — § ■( | ) 4, Q —
= 8 . Следовательно, было
бы естественно склониться к мнению, что монета имеет тип Л.
ш
7.2. Метод максимального правдоподобия
Теперь становится очевидным общий принцип отношения правдоподобия: наи
более достоверным будет выбор тех параметров Л, для которых функция прав
доподобия (7.1.5) максимальна. На рисунке 7.1 представлены различные виды
функций правдоподобия для случая одномерного параметра Л.
Точку максимума функции правдоподобия легко можно определить путем
приравнивания к нулю ее первой производной по параметрам Аг. Однако доста
точно неудобно брать производную от произведения с большим числом сомно
жителей. Поэтому можно сначала взять логарифм от функции правдоподобия:
N
^ = 1п£ = у Л п / ( х (-7);Л).
(7.2.1)
3= 1
Функция £ называется «логарифмической функцией правдоподобия». Очевид
но, что максимумы функции (7.2.1) совпадают с максимумами функции (7.1.5).
Теперь для случая одного параметра можно записать:
£' = d £ /d \ = Q.
(7.2.2)
7.2. Метод максимального правдоподобия
191
Р и с . 7 .1 . Ф ункции п р ав д о п о д о б и я .
Тогда задача оценивания параметра сводится к решению этого уравнения прав
доподобия. Применив формулу (7.2.1), запишем:
е = Е jx ln /(хШ; А) = Е т = £
3= 1
3= 1 1
3=
^
3);А) -
(7-2-3)
1
где
Д х' Д а) = ( ^ / ( x (i);A )) / Д х ш ;А)
(7.2.4)
является логарифмической производный функции плотности распределения ве
роятностей / по параметру Л.
В общем случае для р параметров уравнение правдоподобия (7.2.2) заме
няется системой р уравнений
д£
д \г
~ о,
1 , 2 , . ..,р.
(7.2.5)
Пример 7.2. Многократные измерения с различной точностью. Если некото
рая величина измеряется при помощи различных приборов, то тогда ошибки
измерений будут, вообще говоря, различны. Результаты измерений
будут
колебаться вокруг истинного значения Л. Предположим, что ошибки измерений
распределены нормально, тогда процесс измерений соответствует получению
выборки из гауссовского распределения со средним Л и стандартным отклоне
нием Gj. Тогда апостериорная вероятность некоторого результата измерений
равна
1
(х<*> - Л)2
192 Глава 7. Метод максимального правдоподобия
Учитывая все N измерений, получаем функцию правдоподобия
N
(х^) - Л)2
2a]
1
£=П
з= 1
(7.2.6)
и ее логарифм
(х « - Л)2
I
(7.2.7)
-b const.
3=1
Следовательно, уравнение правдоподобия принимает вид
N
d£ _
dA “ ^
3= 1
х«) - Л
а:°
*
Оно имеет решение
(7.2.8)
Поскольку d 2 ^/dA 2 =
< 0 , то это решение действительно является
максимумом. Отсюда видно, что мы получили оценку максимума правдопо
добия в виде среднего значения результатов N измерений, взвешенных при
помощи коэффициентов, обратных к значениям дисперсий отдельных измере
ний.
■
Пример 7.3. Оценивание параметра N гипергеометрического распределения.
Иногда, как и в примере с монетами из начала этой главы, оцениваемые па
раметры могут принимать только дискретные значения. В примере 5.2 мы
упомянули о возможности оценивания объема зоологических популяций пу
тем нанесения меток и отлова. Согласно формуле (5.3.1), вероятность отлова
ровно п рыб, среди которых к помечены, из пруда, в котором содержится всего
N (неизвестное число) рыб, среди которых К помечены, равна
L { h ,n ,K , N )
К \ (N - К
к /V п —к
N'
п
Нужно найти значение N } для которого функция L достигает максимума. Для
этого используем соотношение
L(k\n,k,N)
_ (N-n)(N~k)
(> 1 ,
L(k\ п, /с, TV - 1 ) “ (N - n - К + k)N { < 1,
Nk < п К ,
Nk>nK .
Таким образом функция L достигает максимума, когда N равно целому числу,
ближайшему к п К /к .
■
7.3. Информационное неравенство. Оценки
193
7.3. Информационное неравенство. Оценки с
минимальной дисперсией. Достаточные оценки
Обсудим теперь еще раз качество оценок. В разд. 6.1 мы назвали оценку не
смещенной, если для любой выборки смещение равно нулю
В ( \) = Е( S ) - A = 0.
(7.3.1)
Однако отсутствие смещения не является единственным свойством, необходи
мым для того, чтобы оценка была «хорошей». Более важным является требо
вание того, чтобы дисперсия cr2 (S) несмещенной оценки была мала. При этом
часто необходимо находить компромисс, поскольку между В и а 2 существует
связь, которая описывается информационным неравенством1.
Легко видеть, что можно добиться того, чтобы a 2 (S) = 0 , если использовать
в качестве S константу. Рассмотрим оценку S( x^\ x^2\ . . ., х ^ ) , которая явля
ется функцией от данных х ^ . х ^ 2) . , .. д ^ г). Согласно соотношениям (6.1.3) и
(6.1.4) совместная плотность распределения вероятностей элементов выборки
равна
/( х ^ \ Л 'Д . . . , х * Д А) = /(лЛ >; А)/(х*2>; А) • • • / ( T w>; Л).
Таким образом математическое ожидание оценки S равно
Е( S ) = [
(7.3.2)
Однако, с другой стороны, согласно равенству (7.3.1), оно равно Е (S) =
В(Х) + Л. Предположим теперь, что мы можем дифференцировать выраже
ние, стоящее под знаком интеграла, но параметру Л. Тогда получаем, что
1 + В'(А)
S
v
/,{:г
/ ( х (1); Л) • • • f ( x {N); Л) с1х<п • • •с1х(Л,),
что эквивалентно
1 + в'(Л ) = ь Д s f ^ /,(x(j);A)
/(Х0);Л)
= Е
Из формулы (7.2.3) получаем
N
а = 5 > ( х ш ;Л)
и, следовательно,
1 + В'(А) = Е { SC}.
(7.3.3)
1 Это неравенство было выведено независимо Крамером, Фреше и Рао, а также и другими
авторами. Оно также называется неравенством Крамера—Рао или неравенством Фреше.
194
Глава 7.
Метод максимального правдоподобия
Очевидно, что f /(rr^1); А) • • •/( т ;^ ) ; A) d x ^ - —dx^N^ — 1. Если также вычи
слить производную этого равенства по параметру А, то получим
/
£
^
-всо-о.
Умножая это равенство на E(S) и вычитая его из правой части равенства
(7.3.3), получаем:
1 + B f{А) - E { S if} - E{S)E(£') = Е {[S - E ( S ) } t }.
(7.3.4)
Для того чтобы понять значимость этого результата, необходимо использовать
неравенство Коши—Ш варца в следующей формулировке:
Если х и у являют ся случайными величинами и если х2 и у2 имеют ко
нечное математическое ожидание, то
{-Б(ху) } 2 < Е( х2)Е(у2).
(7.3.5)
Для доказательства этого неравенства рассмотрим выражение
Е((ах + у)2) = а2Е( х2) + 2аЕ(ху) + Е ( у2) > 0.
(7.3.6)
При любых значениях а это выражение остается неотрицательным. Если мы
рассмотрим теперь случай равенства, то это выражение становится квадратич
ным уравнением относительно а с корнями
Е( хУ) , 1 ( Е ( х у) \ 2
Е{х2)
У \ Е ( х 2) ]
Д (7 )
Е( х2)
(7.3.7)
Тогда неравенство (7.3.6) выполнено для всех а, если выражение, стоящее под
квадратным корнем отрицательно либо равно нулю. Отсюда получаем следу
ющее утверждение:
(Д(ху ) } 2
{Е(х2)}2
Е( у5)
Е( х2) ~
■
Если теперь применить неравенство (7.3.5) к соотношению (7.3.5), то полу
чим, что
{1 + £ '( А ) } 2
<
£ {[S -
E { S ) f } E (tn ).
(7.3 .8 )
Используем теперь разложение (7.2.3), чтобы переписать выражение для
E ie12):
Е{£'2) = Е
/
= Е<
\
N
Ем*0^))1
3=1
+Е
Е Д х' Д аМ х' Д а)
.
7.3. IJ^FIфop^^д-цнoннoe неравенство. Оценки
195
Математическое ожидание выражения во второй фигурной скобке обращается
в нуль, поскольку для i ф j
Т { Д х<УА)Д х(Д Л)} = Е { < р ( х ^ - , \ ) } Е { ф М ; \ ) } ,
£{^(х;Л)} =
х: /'(* ; А)
■/(a:;A )dx= / /'(x;A )da:,
/(•г; А)
/
ОО
/(•с; A) dx = 1 .
-ОО
Дифференцируя последнюю строчку по параметру Л, получаем
/ ■О
О
f ' (x;X) dx = 0.
--ОСТаким образом имеем:
/'(х Ю А)
Е(е,'4) = е
А))2
/(хО); А)
Поскольку отдельные слагаемые этой суммы независимы, то математическое
ожидание этой суммы равно просто сумме математических ожиданий. Отдель
ные математические ожидания не зависят от элементов выборки. Следователь
но, имеем
/(А) = E { f 2) ^ N E
/ 4 х; А) Л 2
/(х; Л) )
Это выражение называется информационным количеством (информацией)
выборки относительно параметра Л1. Оно является неотрицательным числом,
которое обращается в пуль, если функция правдоподобия не зависит от пара
метра Л.
Иногда удобно записывать информационное количество в несколько ином
виде. Для того чтобы это сделать, продифференцируем выражение
ГОО Г(х; Л)
( Т(х; А)
f(x; A) dx ~ 0
V /(х: А)
—ОО т \ )
еще раз но параметру Л и получим
1 Функцию /(А) называют также информационным количеством (или функцией) Фише
ра, а се матричный аналог — информационной матрицей Фишера. Если обозначить 7° (А) —
информационное количество Фишера для одного наблюдения в выборке объема 7V, то
/(А) = N 1° (Л). — Прим. ред.
196
Глава 7.
Метод максимального правдоподобия
Тогда информационное количество можно представить как
/(А) - N E
'/'(*; А) \ а]
тт)
„ Л //'<*;« У
Д 'Д т к Л
или
/(А) - Е{Е2) ^ -Е{£").
(7.3.9)
Неравенство (7.3.8) можно теперь переписать следующим образом: { 1 +
B f(X) } 2 < <t6 (S)/(A) или
a 2( S ) >
{1 + Д Ч А ) } 2
(7.3.10)
/(Л)
Это и есть информационное неравенство^. Оно определяет соотношение ме
жду смещением, дисперсией оценки и информационным количеством выбор
ки. Необходимо отметить, что при выводе этого неравенства не было сделано
никаких предположений относительно самой оценки. Следовательно, правая
часть неравенства (7.3.10) является нижней границей дисперсии оценки. Она
называется граниг^ей минимальной дисперсии или границей, Крамера—Рао. В
случае когда смещение не зависит от Л, в особенности, когда смещение обра
щается в нуль, неравенство (7.3.10) принимает более простой вид:
<r5 (S) > 5//(А ).
(7.3.11)
Это соотношение объясняет, почему используется слово информация. При возрастании информационного количества выборки дисперсия оценки может быть
уменьшена.
Найдем теперь, при каких условиях достигается граница минимальной дис
персии, или точнее, когда неравенство (7.3.10) превращается в равенство. В не
равенстве (7.3.6) достигается равенство, если величина (ах + у) равняется нулю,
поскольку только тогда £{(ах + у)2} = 0 для всех значений а, х и у. Примени
тельно к соотношению (7.3.8) это означает, что l ! + a(S —E(S)) = 0 или
е’ = A (A )(S -£ (S )).
(7.3.12)
В этом выражении А обозначает произвольную величину, не зависящую от
реализации выборки х ^ ,х ( 2\ . . . , х ^ ) , которая, однако, может являться функ
цией от Л. Интегрируя, получаем:
£ = j t dA = В{ A)S + С( А) + Д
(7.3.13)
L — d exp{£(A)S + С{А)}.
(7.3.14)
и окончательно
Величины d и D не зависят от А.
1 Необходимо отметить, что дисперсия для смещенной оценки не является полностью
адекватной мерой точности оценки. 'Гаковой является среднеквадратическое отклонение
E ( S — Л)2 = сг2(5) + (£(А ))2. Используя неравенство (7.3.10), получим информационное
неравенство для E ( S — А)2. Далее, часто приходится оценивать не параметр А, а функцию
д( А). Если S — несмещенная оценка для д( А), то ct2(S) >
•
П р и м . ред.
7.3. Информационное неравенство. Оценки
197
Таким образом мы видим, что оценки достигают границы минимальной
дисперсии тогда, когда функция правдоподобия имеет вид (7.3.14). Поэтому
они называются оценками с минимальной дисперсией.
Для случая несмещенных оценок с минимальной дисперсией из неравенства
(7.3.11) получаем, что
^ =щ =ЖРУ
(7-3-15'
Подставляя сюда выражение (7.3.12), получаем
a 2 (S) -
1
(A(\))*E{(S-E{S))*}
(A(\))WS
или
a 2 (S) =
1
|Л(А)Г
(7ЛЛв)
Если вместо соотношения (7.3.14) выполнено лишь более слабое ограничение
L = g ( S , \ ) c ( x ^ M e\ . . . , d {N)),
(7.3.17)
то говорят, что оценка S является достаточной для Л. Можно показать [см.,
например, Кендалл и Стюаргг, (1957)], что если выполнено условие (7.3.17), то
ни одна другая оценка не может дать дополнительной информации о параме
тре Л, кроме той, которая уже содержится в 5. Отсюда и следует название
«достаточная оценка» (или статистика).
Пример 7.4. Оценка параметра пуассоновского распределения.
пуассоновское распределение (5.4.1)
Рассмотрим
у -л
/(* ) = А-! е
Функция правдоподобия для выборки
. . . , к ^ имеет вид
N
е = ^ 2 {ки Ы х - in (k ^ !) - л},
J=5
а ее производная но параметру Л равна
d£
dA
N Г = у ( к-А).
j~ 1
(7.3.18)
Сравнение с формулами (7.3.12) и (7.3.16) показывает, что арифметическое
среднее к является несмещенной оценкой с минимальной дисперсией (ее дис
персия равна A/ N).
■
198
Глава 7. Метод максимального правдоподобия
Пример 7.5. Оценка параметра биномиального распределения. Функция
правдоподобия для выборки из биномиального распределения с параметрами
р = А, ^ = 1 —Л задается непосредственно формулой (5.1.3):
L (М ) = ( I ) Лк( 1 - А ) " - к.
(Конкретную реализацию выборки можно охарактеризовать следующим обра
зом: в п испытаниях событие А наблюдалось к раз; см. разд. 5.1.) Тогда имеем:
I = ln L = klnA + (гг - к) 1п(1 - А) + In ( “ ) ,
/?/_ к
п —к
п
( к
~ А ” Т ^ Л = А(1 -~А) \ п
Сравнивая соотношения (7.3.12) и (7.3.14), находим, что к/н —оценка с мини
мальной дисперсией (дисперсия равна А(1 —А)/п).
и
Пример 7.6. Пример объединения ошибок («Квадратическое усреднение от
дельных ошибок»). Сейчас мы вернемся к задаче из примера 7.2 о много
кратных измерениях одной и той же величины с различной точностью, или
другими словами, к задаче получения выборки из нормального распределения
со средним А и различными, хотя и известными дисперсиями а 7. Из формулы
(7.2.7) получаем
d* . л,
dA
^
J= 1
х») - А
а*3
'
Можно переписать это выражение в виде
\
—А > .
Как и в примере 7.2, мы приходим к тому, что
S=
(7.3.19)
является несмещенной оценкой для А. Сравнение с соотношением (7.3.12) по
казывает, что она также является оценкой с минимальной дисперсией. Из фор
мулы (7.3.14) находим, что ее дисперсия равна
а \\) =
(7.3.20)
7.4. Асимптотические свойства функции правдоподобия и оценок
199
Соотношение (7.3.20) часто встречается под названием правила объединения
ошибок или квадратического усреднения отдельных ошибок. Его можно было
бы получить также путем применения к выражению (7.3.19) правила преобра
зования ковариационных матриц и дисперсий (3.8.7). Если мы рассмотрим <г(А)
в качестве ошибки орепки А, а <х, —как ошибку j -го измерения, то можно будет
переписать это соотношение в каноническом виде:
1
‘2
д\ =
{AxiY
-h
т; +
(Л т 5 )2
+
( А х п )2
(7.3.21)
Если все изменения осуществляются с одной и той же ошибкой а — оу, то
соотношения (7.3.19) и (7.3.20) принимают более простой вид:
А = х,
гг2 (А) —а 2 /п ,
который мы уже получали в разд. 6 . 2 .
7.4. Асимптотические свойства функции правдоподобия
и оценок максимального правдоподобия
Выведем теперь эвристическими методами несколько важных свойств функ
ции правдоподобия и оценок максимального правдоподобия для выборок боль
шого объема, т. е. в пределе при N —> оо. Оценка S = А была определена как
решение уравнения правдоподобия
Г(хш;Л)
(7.4.1)
/(x(j);А)
Предположим, что £'(Х) можно еще раз продифференцировать по параметру
А, тогда можно выполнить разложение в ряд в окрестности точки А = А
е'(\) = £!{Х) + (А - А)Г(А) + • • • .
( 7 .4 .2 )
Первое слагаемое, стоящее в правой части, согласно соотношению (7.4.1) обра
щается в нуль. Множитель но втором слагаемом можно записать в следующем
виде:
/
/ЧхЦ);Л)
/(хО>; Л) Л
Это выражение по сути является средним значением выборки. При больших
значениях N его можно заменить на математическое ожидание (см. разд. 6 .2 )
£”{\) = N E
/м V
Л
(7.4.3)
200 Глава 7. Метод максимального правдоподобия
Используя соотношение (7.3.9), теперь можно записать:
Г (А) = Е{£"{\)) = -Е { £ ,2(\)) = -1(A) = - 1 / 62.
(7.4.4)
Таким образом мы можем заменить выражение для £"(А), которое является
функцией от выборки
... , х ^ , на величину —1 / 62, зависящую толь
ко от плотности распределения вероятностей / и оценки Л. Если пренебречь
членами высшего порядка, то разложение (7.4.2) можно свести к форме
^(Л) = - 1 ( А - А ) .
(7.4.5)
Проинтегрируем это соотношение:
^ ^ - ^ ( А - А ^ + с.
Подстановка Л = Л дает с = ^(А), откуда получаем, что
*(А )-*(А ) = - ± ^ ^ .
(7.4.6)
Возьмем экспоненту и получим
L(X) = к ехр{—(А - Л)2 /262},
(7.4.7)
где к является некоторой константой. Функция правдоподобия L(A) имеет вид
функции плотности нормального распределения со средним А и дисперсией Ь2.
Для значений А = А± 6, где А — одно из стандартных отклонений для А, имеем:
-(£(Х) - *(А)) = 1/2.
(7.4.8)
Теперь можно сравнить выражение (7.4.7) с соотношениями (7.3.12) и
(7.3.16). Поскольку мы оцениваем параметр А, то должны записать, что S = Аи
тем самым Е ( S) = А. Следовательно, оценка А является несмещенной оценкой
с минимальной дисперсией. Ее дисперсия равна
<т2 (а) = ъ2 = - L - = — К = - = —
А с7(A) Е{еа {А))
Е{£"{ А))
(7.4.9)
Поскольку оценка А обладает этим свойством только в пределе при N —►оо,
то мы будем называть ее асимптотически несмещенной. Кроме того, оценка
максимального правдоподобия является состоятельной (см. разд. 6 .1 ) и асим
птотически нормальной.
В разд. 7.2 мы интерпретировали функцию правдоподобия Ь(Х) как вероят
ностную меру того, что истинное значение параметра А0 равно А. Результаты
оценивания часто записывают в сокращенной формулировке:
А = А ± о*(А) — А ± ЛХ.
7.4. Асимптотические свойства ф ункции правдоподобия и оценок
201
Поскольку функция правдоподобия является асимптотически нормальной, то
по крайней мере для выборок большого объема, т. е. для многократных изме
рений, это соотношение можно интерпретировать следующим образом: вероят
ность того, что истинное значение параметра Ао лежит в пределах интервала
А —АХ <С Ао < А 4- ДА,
равна 68.3 % (см. разд. 5.8). На практике это соотношение применяется для вы
борок большого, однако конечного объема. К сожалению, невозможно сформу
лировать общее правило определения достаточности объема выборки для того,
чтобы это соотношение оставалось верным. Очевидно, если N конечно, то со
отношение (7.4.3) является лишь приближением, точность которого зависит не
только от 7V, но также от конкретной плотности распределения вероятностей
/(z; Л).
Пример 7.7. Определение среднего времени распада ядра по наблюдениям в те
чение небольших отрезков времени. Вероятность того, что радиоактивное
ядро, которое зародилось в момент времени t = 0 , распадется в течение про
межутка времени между t и t -(- dt, равна
m d t =
i
ехр(—£/т) dt.
т
Для наблюдаемых значений времени распада t \ , £2 » *• £дг функция правдопо
добия равна
“Рj- Д *<}=
А ее логарифм £ ~ 1n L = —
£' =
"Я
~ N \ n r имеет производную
N
г
t
- - 1
т
т).
Сравнивая это соотношение с формулой (7.3.12), мы видим, что т = i являет
ся оценкой максимального правдоподобия, дисперсия которой равна ег2 (т) =
т 2 / N. Для т = т = i получаем, что Ат ~ t / y / N.
При т ~ t имеем: £(т) = Спах = —N(1 + \nt). Можно записать также:
- № ) - е(т)) = n ^
+ in I - 1 ^ .
Из этого выражения для логарифмической функции правдоподобия невозмож
но сразу определить асимптотический вид (7.4.6) в пределе при N —> оо. Оче
видно, что для малых значений N он не будет иметь тот же вид. Согласно
формуле (7.4.8), мы хотим использовать в качестве несимметричных оши
бок Д+, А - такие значения т+ = т + А+ и т_ — т — Л _, для которых
202
Глава 7. Метод максимального правдоподобия
—{£{т±) — £{т)) = 1 / 2 . Безусловно, мы предполагаем, что в пределе при N —►оо
б у д е т в ы п о л н ен о : Л + ,
—> Д т = <т(т).
На рисунке 7.2 N наблюдаемых значений времени распада U отмечены на
оси абсцисс в виде вертикальных штрихов для различных малых значений N.
Кроме того, на графики нанесена функция —(£ —/max) ~ ~(/(т) —£ (т)). Точки
т_)_ и т_ находятся в точках пересечения графика функции и горизонтальной
прямой, т. е. —(/ —/шах) = 1/2. Точка т обозначена на оси абсцисс при помощи
дополнительной отметки. Видно, что с возрастанием Аг функция —( / —/ тах) лее
больше и больше приближается к виду симметричной параболы и что ошибки
Д+, Д_ и Ат становятся по значению все ближе друг к другу.
■
А. =
N =
2,
0.73, А+ =
t
=
1.57
1.99, Ах =
N =
5, t
=
1.80
1
2
3
N = 20,
0.26, А, =
\ =
1.11
■U-lnJ
0
А. =
0.46, А+ =
0.73, Ах
=
0.57
А. =
[д
4
!
1.36
0 36, Ах =
0.30
0.11, Ах
0.10
-CL-L_)
А. =
0.13, А+ =
0.17, Ах
=
0.15
А. =
0.09, А+ =
0.6
0.6
>0.5
0.5
-n-UJ
0.4
t
0.3
^
0.4
h
0.3
0.2
0.1
0.2
0
0
■■ни in
0.1
0
Рис. 7.2.
=
1
3
- t ,х
4
0
1
2
-Н >
3
I, I
tд
4
Д ан н ы е и л огар и ф м и ч еск ая ф у н к ц и я п р ав д оп одоби я д л я п р и м ер а 7.7.
5
7.5.
Совместное оценивание нескольких параметров
203
7.5. Совместное оценивание нескольких параметров.
Доверительные интервалы
Мы уже приводили систему уравнений (7.2.5), позволяющую осуществить со
вместное определение р параметров Л = (Ai, А2 , . . . , Ар). Оказывается, что для
многопараметрического случая существенно более сложной проблемой стано
вится задача оценивания ошибок при оценивании параметров. В частности,
нам придется рассматривать не только ошибки оценок параметров, но и кор
реляции этих ошибок.
Продолжим наши рассуждения, начатые в разд. 7.4, касающиеся свойств
функции правдоподобия в случае нескольких параметров. Логарифмическую
функцию правдоподобия
N
(7.5.1)
можно разложить в ряд в окрестности точки
(7.5.2)
следующим образом:
m - Xm) + • • • •
(7.5.3)
Поскольку по определению Л
(7.5.4)
и это выполнено для всех /с, то ряд сводится к виду
(7.5.5)
где
д 2£
ox2
-А =
д 2£
8 X1 6 X2
д2£
\ OXiOXp
д2£
dXid\2
д2£
ЭХ2
д 2£
дХ‘2 дХр
д 2е
\
дХгдХр
д 2£
0Х2 дХр
д2£
(7.5.6)
204
Глава 7. Метод максимального правдоподобия
В пределе при N —>оо можно заменить элементы матрицы А , которые все еще
зависят от конкретной выборки, на соответствующие математические ожида
ния 1
О2 Г
Е
ЕI
дХ\.
д2е
дХгдХз
' д2е
d \ i 8 X2
д2е \
Е
дХ2 )
э 2е
\9AidAp
Е(\ d- X* 2dXf
* -
Е
Е
Е
В = Е (А ) = -
\
Е
• д2£ N
дХхдХР/
' э 2е '
Е
кдХ2 дХр
' д2С
д Х р.
(7.5.7)
Если пренебречь членами высшего порядка, то можно представить функцию
правдоподобия в виде
1
L = к ехр{ —~(А - А) 1 Л(А - А)}.
(7.5.8)
Z
Сравнение с формулой (5 .ЮЛ) показывает, что это функция плотности рмерного нормального распределения со средним Л и ковариационной матрицей
С = В -1
(7.5.9)
Дисперсии оценок максимального правдоподобия А ь А ^ , . . . , Ар являются диа
гональными элементами матрицы (7.5.9). Элементы, располагающиеся вне диа
гонали, равны ковариациям между всеми возможными парами оценок
& (^г) —Ciii
c o v (A j
, Xk)
(7 .5 .1 0 )
=
(7.5.11)
Cjk.
Коэффициент корреляции между оценками \ j , \ k можно определить как
=
(7.5Л2)
0-(Aj>(Afc)
Как и в случае одномерного параметра, квадратные корпи из дисперсий явля
ются ошибками или стандартными отклонениями оценок
A X i
-
{АО -
(7.5.13)
ст
В разд. 7.4 мы установили, что при нахождении оценки максимал 1>1Юго прав
доподобия и ее ошибки, определяется область, в которой с вероятностью 68.3%
1 В ернее бы ло бы сказать, что м атр и ц у ~ А
М а т р и ц а В (Л ) в с о о т н о ш е н и и
(7 .5 .7 ) я в л я е т с я
ки о б ъ ем а N, а j j B(X) — и н ф о р м ац и о н н ая
ред.
при
N
—*■
сю м о ж н о
инф ормационной
зам енить на м атрицу ~ В ,
матрицей
Ф и ш е р а выбор
м а т р и ц а о т д е л ь н о г о э л е м е н т а в ы б о р к и . — Прим,
7.5. Совместное оценивание нескольких параметров
205
содержится истинное значение параметра. Поскольку в случае нескольких пе
ременных функция правдоподобия в асимптотике имеет гауссовское распреде
ление нескольких переменных, то эта область определяется не только ошибка
ми, но и всей ковариационной матрицей. В частном случае двух параметров
это эллипс равных вероятностей, который был рассмотрен в разд. 5.10.
Выражение (7.5.8) (при замене х — А) в точности совпадает с формулой
(5.10.1). Следовательно, его можно применять ко всем результатам, получен
ным в разд. 5.10. Для степени экспоненты получаем:
- 1 ( А ~ А)Т Й(А - А) — - 1 9 (А) = - {/?(А) - *(А)} .
(7.5.14)
Тогда в пространстве параметров, натянутом на А*, . . Ар, эллипсоид равных
вероятностей для распределения (7.5.8) определяется из условия
9 (A) = l = 2 { f ( A ) - * ( A ) } .
(7.5.15)
Для других значений .ДА) получаем эллипсоид равных вероятностей, также
рассмотренный в разд. 5.10. При небольших значениях N нельзя отбросить
часть разложения в ряд (7.5.3), и приближение (7.5.7) не будет иметь места.
Тем не менее решение системы уравнений (7.5.4) все еще можно легко полу
чить. При фиксированной вероятности W вместо эллипсоида равных вероят
ностей получаем доверительную область, лежащую на гиперповерхности
ДА) —2 jV(A) —ДА) j = const.
(7.5.16)
Величина g определяется таким же образом, что и для эллипсоида равных
вероятностей в разд. 5 . 1 0 .
В примере 7.7 для случая одной переменной мы вычислили область А—
<
А < А+Д+. Она соответствует доверительной области для вероятности, равной
68.3%.
Пример 7.8. Оценивание среднего и дисперсии нормального распределения.
Мы хотим оценить среднее А* и стандартное отклонение А2 для нормально
го распределения, используя выборку объема N . Такая задача встречается,
к примеру, при определении расположения а-частиц в некотором веществе.
Благодаря случайному характеру потерь энергии при большом количестве не
зависимых столкновений расположение отдельных частиц имеет гауссовское
распределение около некоторого среднего значения. Путем определения распо
ложения х(» для N различных частиц можно оценить среднее Ai и «константу
рассеяния» Аг = сг. Получим функцию правдоподобия
1
^=ПТA2~V^7T
7 Г ехр
(х<-?> - Ai)2
Щ
и
f =
1 Д . (х « - Ai)2
2 ^
А2
1= 1
2
ЛПп А2 —const.
206
Глава 7. Метод максимального правдоподобия
Система уравнений правдоподобия выглядит следующим образом:
ис _ ^
д£
дХ 1
- Ai _
j-^
д£
Ее решение имеет вид
1
N
N
г(Я
А, =
\
.7= 1
£ ( x (j) - д 2
0^\
N.
Метод максимального правдоподобия, примененный для оценивания среднего,
приводит в результате к арифметическому среднему отдельных измерений, а
для дисперсии дает в итоге величину s/2 (6.2.4), имеющую небольшое смещение,
а не несмещенную оценку s2 (6 .2 .6 ).
Определим теперь матрицу В. Вторые производные равны
N
дЧ
д 2е
dXidX2
эх2 ~
d2t _
д \\ ~
2£(х«> - АО
Х32
ЗЕ(> О ) - А П 2 N
У
" А2 '
Используем формулу (7.5.7), заменим At, Л2 на А: , А2 и найдем
В =
Л7 А2
о
0
\
27V7A2
или для ковариационной матрицы
_ Вп - 1 _= ( % /N
С =
0
X -/ 2 N
Здесь диагональные элементы матрицы можно интсщнроти решать как ошибки
соответствующих параметров, т. е. zAAj — A2/\/Л т7 А\А2 ~ А2/\/2ЛА Оценки
параметров А* и А2 не коррелированы.
■
Пример 7.9. Оценки параметров двумерного нормального распределения. В
заключение рассмотрим совокупность наблюдений из двумерного нормального
распределения (см. разд. 5.10.) с плотностью
1
f ( x u x 2) =
2-KCTi
(х,
(72 \ / Т
ехр
—
Q2
1
2 (1 - </}
(хд -- ах)(х 2 - а2)
а\ ) 2
(х 2 - а 2 ) 2
+
- 2еод
оЛ
<Т\СТГ2
7.6. Примеры программ
207
Выписав и решив систему из пяти уравнений правдоподобия для пяти параме
тров tti, tt2 , <т2, <j\ , £>, получаем, что оценки максимального правдоподобия рав
ны
(7.5.17)
В точности как и в примере 7.8, оценки s'2 и s^2 для дисперсии являются сме
щенными. Это верно также для выражения (7.5.17) — выборочного коэффициен
та корреляции г. Как и все оценки максимального правдоподобия, г является
состоятельной оценкой, т. е. она обеспечивает достаточную точность оценки д
для выборок очень большого объема. В пределе при N —►оо плотность распре
деления вероятностей случайной величины г имеет нормальное распределение
со средним д и дисперсией
°г2(г) = (1 —Q2 )'1 /N .
(7.5.18)
Для конечных выборок распределение является несимметричным. Поэтому
для того, чтобы применять соотношение (7.5.17), важно иметь выборку доста
точного большого объема. На практике обычно рекомендуется использовать
N > 500.
■
7.6. Примеры программ
Все программные файлы доступны в поддиректории \DATAN\EXASEC.
7.6.1. Программа E1ML для вычисления среднего времени жизни
и несимметричных ошибок для биномиальной
модели числа радиоактивных распадов
Эта программа производит вычисления и вывод результатов в графическом
виде для задачи, описанной в примере 7.7. Сначала при помощи метода МонтеКарло моделируются все N значений времени распада ti радиоактивного ядра
со средним временем распада т — 1. Количество распадов N и начальное зна
чение для генератора случайных чисел вводятся в интерактивном режиме.
(Возможность выбора начального значения позволяет моделировать различ
ные множества значений времени распада.)
208
Глава 7.
Метод максимального правдоподобия
7.6,2. Программа E2ML для вычисления оценок максимального
правдоподобия для параметров двумерного нормального
распределения при помощи смоделированной выборки
Сначала программа запрашивает у пользователя значение пехр числа экспе
риментов, которые нужно смоделировать (т. е. количество выборок, которые
будут последовательно обрабатываться), значение объема п,р1, для каждой вы
борки, средних значений a i, a2, стандартных отклонений <J[, <т2 и коэффици
ента корреляции р для двумерного гауссовского распределения*
Затем вычисляется ковариационная матрица С для нормального распреде
ления и запускается программа RNMNPR, моделирующая случайные числа для
многомерного гауссовского распределения. Каждая выборка моделируется, а
потом анализируется, т. е. вычисляются величины ;/ц, .f2, s[, s f2 и г, которые
являются оценками для a j, a2, a i, a 2 и p [см. (7.5.17)1. На экран выводятся
значения этих величин для каждой выборки.
У казание: Выберите пехр = 2 0 , зафиксируйте значения всех остальных па
раметров и изучите статистические колебания значения г для n pt = 5, 50, 500.
Используйте значения р — 0, 0.5, 0.95.
7.7. Задачи на программирование
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\SOLSRC.
7.7.1. Распределение времени распада, определенное по выборке
малого объема, элементы которой — наблюдаемые количества
радиоактивных распадов
В программе 7.6.1 оценка i для среднего времени распада т и ее несимме
тричные ошибки А - и
были найдены на основании одной выборки ма
лого объема. В любом случае в результате эта программа выдает значения
А - < А+. Написать программу, моделирующую большое число пехр экспери
ментов, в каждом из которых наблюдается N радиоактивных распадов со сред
ним временем распада т = 1 . Для каждого эксперимента вычислить оценку t и
построить гистограмму для величины t по всем экспериментам. Предоставить
возможность интерактивного выбора между выводом данных в виде гисто
граммы N i(ii < t < i i + At ) или в виде эмпирической функции распределения
hi = (1 /пехр) YLt<t
Предоставить возможность интерактивного ввода зна
чений пехр и N , Показать, что при малых N распределения являются несим
метричными, а при больших N становятся симметричными. Показать, что для
малых N значение t — 1 не является наиболее вероятным значением, а равно
математическому ожиданию i. При фиксированном значении Лг, например для
N = 4, определить границы Д_ и А+ так, чтобы неравенство i < 1 —
было
выполнено с вероятностью 0.683/2 и с той же вероятностью бы ло верно нера
венство t > 1 + Л+. Сравнить полученные результаты с последовательностью
экспериментов, смоделированных в программе E1ML (программа 7.6.1).
7.8. З а д а ч и
op
0.00,
q2-
0.00, op 1.00,
o2~ 1.00,
209
q=-0.80
Р и с . 7 .3 . Г и стогр ам м а для в ы бороч н ого к о э ф ф и ц е н т а к ор р ел я ц и и , вы численного
д л я 1000 вы борок о б ъ ем а 10 из д в у м е р н о го гауссовского р асп р ед ел ен и я с к о э ф ф и
циентом корреляции р = — 0.8.
7.7.2. Распределение выборочного коэффициента корреляции
Модифицировать программу E2 ML таким образом, чтобы в результате вместо
вывода данных в численном виде на экран выводилась гистограмма для ко
эффициента корреляции г (см. рис. 7.3). Построить гистограммы для р = О
и р — 0.95, каждую при n pt = 5, 50, 500. При каких условиях распределение
является несимметричным и почему? Противоречит ли эта асимметрия цен
тральной предельной теореме?
7.8. Задачи
7.8.1. Оценки максимального правдоподобия
(a) Предположим, известно, что случайная величина х равномерно распреде
лена с плотностью /(х ) — 1 / 6 на интервале 0 < х < 6. По выборке требуется
оценить параметр 6. Показать, что S = 6 = х т а х является оценкой макси
мального правдоподобия для 6. ( Указание: этот результат нельзя получить
путем дифференцирования, получите его посредством простого анализа
функции правдоподобия.)
(b ) Записать уравнения правдоподобия для двух параметров а и Г распределе
ния Лоренца (см. пример 3.5). Показать, что эти уравнения необязательно
имеют единственное решение. Однако легко можно убедиться в том, что
для | х ^ —а\
Г арифметическое среднее х является оценкой для а.
210 Глава 7. Метод максимального правдоподобия
7.8.2. Информационное количество Фишера
(a) Определить информационен кол ичетно /(А) выборки объема jV, получен
ной из нормального распределения с известной дисперсией а 2 и неизвест
ным средним Л = а.
(b ) Определить информационое количество /(А) выборки объема 7V, получен
ной из нормального распределения с известным средним а и неизвестной
дисперсией А = сг2. Показать, что оценка максимального правдоподобия
для а 2 равна
и что эта оценка является несмещенной, т. е. В (S) = E(S) —А ~ 0.
7.8.3. Дисперсия оценки
(a) Используя информационное неравенство, получить нижнюю границу для
дисперсии оценки среднего в задаче 7.8.2 (а). Показать, что эта граница
совпадает с минимальной дисперсией, найденной в задаче 6.13.1 (с).
(b ) Используя информационное неравенство, получить нижнюю границу для
дисперсии S в задаче 7.8.2 (Ь).
(c) Используя соотношение (7.3.12), показать, что S является оценкой с ми
нимальной дисперсией, которая равна нижней границе, найденной в пунк
те (Ь).
7.9. Указания и решения
Задача 7.8.1
N 1
^
з= 1
(a) L =
1
? очевидно, что L — max для Ь = х
(Ь) \ г — а, Аг — Г ,
N
3~ 1
_ 2 ________ А|_______
1
4(хШ - А ^ + А 2 ’
7гА2 4(х№ —Ai) 2 + А2
N
i = N (\n 2 —1п 7г + In А2) —^ l n [ 4 ( x ^ —Ai)2 4- А2],
j=i
dt_
аЛ1
Л
8 (xW - AQ
- ^ 4(хШ - л 1 ) 2 + л 2
&_
N _
5А2
л2
Л
1
2£ Д ( хШ - А ^ + А*
7.9.
Указания и решения
211
Система необязательно имеет единственное решение, поскольку уравнения
не являются линейными по Ai и А2. Тем не менее для |х ^ — AiJ <С А2
можно записать:
N
N
"" А]) =
Л2
TVAj =
j= \
Аг = a = х.
j= 1
Задача 7.8.2
(а)
N
L = П ~VТ1т:г ~a exP[_ (x(j) - У / to-2)
N
= (v^Trcr)- ^ P Je x p [-(x (^ - А)2/2сг2],
j= i
—
1
£ = -ЛПп(/2тго-) - —
1 W
4 = - j V ( x(j) - A ) .
<J * "
.7-1
N
^ ( х ^ - A)2,
j =i
(" = - N / a 2,
/(A) = —E(£") = N /a “.
(Ь)
iY
П
^
1
(x( j ) - a ) 24‘
2A
- (2 л ) “ лг/-2Л-А72 Д
7= 1
1 = ~
Ar
Ar
У
l
(ХШ ~ a )2
е х[У
n
2A
'
A
- a )2’
^
i=i
i=i
TV
/(A) =
= - ~
+ ~ E { J > W > - o,)‘
0^ 1
B(S) = ~ E j x > ' - ” - 0 ) 4 = » J =A.
212 Глава 7. Метод максимального правдоподобия
Задача 7.8.3
(a) <r2 (S) >
ст2
=
, б задаче 6.13.1 (с) мы нашли, что а 2 (х) = 1/3о 1 для
/(А) _ N ’
1
N = 3.
( b ) * 2(S ) >
_ 2 А2
/(А)
N
1
(с) Из задачи 7.8.2 следует, что
е
Поэтому <r2 (S)
N
I
N
- 2Л + № № = ^
_ 2А2
N '
5 - А>
N
= ^ - Е ‘5» '
Глава 8
Проверка статистических гипотез
8.1. Введение
Зачастую в задачах статистического анализа имеются некоторые априорные
предположения о значении неизвестного параметра, т. е. гипотезы. Так, на
пример, в задачах контроля качества можно изначально сделать предполо
жение о нормальном распределении измеряемых характеристик вокруг номи
нальных значений в допустимых пределах. Давайте проверим эту гипотезу,
используя статистический критерий. Для ясности рассмотрим упрощенную
задачу: проверим гипотезу о стандартном нормальном распределении элемен
тов выборки, состоящей из 10 наблюдений.
Допустим, что в результате анализа выборки получили среднее значение
х — 0.154. В предположении о правильности гипотезы случайная величина х
нормально распределена со средним 0 и стандартным отклонением -д=. Най
дем вероятность того, что при данном распределении наблюдаемое значение
|х| > 0.154. Из формулы (5.8.5) и табл. 1.3 следует, что
Р (|х| > 0.154) = 2 { 1 - Фо(0.154у Т))} = 0.62.
Таким образом, даже если наша гипотеза справедлива, то с вероятностью
62% в выборке из 10 наблюдений выборочное среднее будет отличаться от
математического ожидания более чем на 0.154.
Основная трудность теперь заключается в ответе на кажущийся простым
вопрос: «Наша гипотеза справедлива или нет?» Для ответа на этот вопрос
воспользуемся понятием уровня значимости. Перед началом проверки гипо
тезы зададимся малым значением вероятности а. Если в нашем предыдущем
примере Р(|х| > 0.154) < а , то событие х = 0.154 можно рассматривать как
практически неосуществимое. Следовательно, можно сказать, что значение х
существенно отличается от предполагаемого, и гипотеза должна быть отверг
нута. Причем обратное неверно: если Р больше или равно а, то мы не можем
сказать, что «гипотеза справедлива», а можем сказать лишь, что «это не про
тиворечит результатам опыта». Выбор уровня значимости зависит от предмет
ной значимости задачи. Для контроля качества карандашей достаточно взять
1%. Если же решать задачу расчета страховых премий так, чтобы вероят
ность разорения страховой компании была меньше а, то даже уровень 0 .0 1 %
может быть слишком велик. При анализе данных научного характера обычно
используют следующие значения а: 5%, 1 % или 0.1 %. Из таблицы 1.3 можно
получить такие предельные значения величины |х|, превышение которых будет
происходить с заданной вероятностью. Вот они:
0.05 = 2 { 1 - Ф0(1.96)} = 2 { 1 - Фо(0.62\/10)},
0 .0 1 = 2 { 1 - Ф0(2.58)} = 2 { 1 - Фо(0.82\/10)},
0.001 - 2{1 - Ф0(3.29)} = 2 { 1 - Фо(1.04\/10)}.
214
Глава 8.
Проверка, статистических гипотез
f(x)
f(x)
Ха
X
X
Р и с . 8 .1 . О д н о ст о
ронн ий и дв устор он ний к ри терии.
При этих уровнях значимости для отклонения гипотезы необходимо, чтобы
значение |х| превысило соответственно 0.62, 0.82 и 1.04.
В некоторых случаях важен знак х. Во многих производственных процес
сах имеет большое значение, положительно или отрицательно возникающее
отклонение. (Если булочки у пекаря тяжелее нормы, то снижаются его до
ходы; а если они легче, то он может лишиться лицензии.) Если положить, к
примеру, Р(х > x fa ) < а , то получим односторонний критерий в отличие от
, который мы уже рассматривали (см. рис. 8 .1 ).
Для многих критериев нельзя использовать выборочное среднее: для них
существуют определенные функции от данных, называемые статистиками
Пусть здесь, как и раньше, задан некоторый уровень значимости
а и определена область U в пространстве возможных значений статистики Т
критерия, где P # (Т € U) = а. В этой формуле индекс Н означает, что веро
ятность вычисляется в предположении о справедливости гипотезы Н. Теперь
для конкретной выборки получаем некоторое значение Т ' статистики крите
рия. Если Т* лежит в области Г/, называемой критического областью, то ги
потеза отклоняется.
В следующих разделах мы подробно рассмотрим некоторые важные крите
рии, а затем обсудим основные положения теории проверки гипотез.
двустороннего критерия
критерия.
8.2. F -критерий для проверки равенства дисперсий
Задача сравнения двух дисперсий часто возникает при разработке приборов
измерительной техники, а также в различных производственных процессах.
Рассмотрим две совокупности с одинаковыми математическими ожиданиями;
пусть, например, одна и та же величина измеряется двумя различными прибо
рами без систематических ошибок. Спрашивается, имеют ли они одинаковую
дисперсию.
Для проверки данной гипотезы возьмем выборки объемов N\ и N 2 из обеих
совокупностей, которые, как мы предположили, имеют нормальное распреде
ление. Построим выборочную дисперсию (6.2.6) и рассмотрим соотношение
(8 .2 .1)
Если эта гипотеза справедлива, то значение F будет близко к единиц'е. Извест
но (см. разд. 6 .6 ), что для каждой выборки мы можем построить величину,
F -кри repий д л я проверки равенства дисперсий
8.2.
215
имеющую хи-квадрат распределение:
-2 _ W -1)5? _ / lS2
Л'
2 ,
(Ti
'1
a \
v2
*2 =
(N 2 - l)sj
u2
_ f 2s\
2
uсг
2
*
Распределении имеют соответственно j \ ~ (N\ — 1 ) и /2 — (N 2 — 1) степеней
свободы.
В предположении, что данная гипотеза (erf — <т|) справедлива, получаем,
что
F _ h XI
/.
Плотность распределения вероятностей для хи-квадрат распределения с / сте
пенями свободы равна [см. (G.6.10)]
Д х 2) =
1
Т 7 ( х 2 Й (/- 2)е - * * а.
Щ п 2if
Теперь вычислим вероятность 1
mQ) =г
(§ <о)
того, что величина X f / X ‘2 меньше, чем Q:
ге
W(Q) =
Г(~г 1 \ ) Г ( р 2 ) 2 Ш Н М
1 е 2у
dj/.
х>0
У> о
x/y>Q
Вычисляя интеграл, получаем
pQ
ra n
a /l_1( t + 1)-H d «,
(8.2.2)
r ( \ h ) C ( \ h ) Jo
где / = / 1 + / 2 . В итоге, если положить F = Q / 2 / / 1 , то функцию распределения
величины F можно получить из соотношения (8.2.2),
mQ) =
/
W{F) = Р [ Ц < F ) .
Она называется F-pa.cnределением Фишера 2 и имеет два параметра: /j и / 2.
Плотность распределения вероятностей для F -распределения выглядит следу
ющим образом:
т
=
/ Д Г ( 1 ( /, + /Д)
/ 2у
щ 1 )г& 2)
,
Л
V
Л Д _1(/1+/2)
/2
(8.2.3)
;
Она представлена на рис. 8.2 для фиксированных значений / 1 и / 2. Это рас
пределение напоминает хи-квадрат распределение; однако оно не обращается в
1 Мы используем здесь символ W для функции распределения, чтобы не путать его с
величиной F.
2 Она также часто называется распределением Снедекора.
216
Глава 8.
Проверка статистических гипотез
Рис. 8.2. Плотность распределения вероятностей для F -распределения при фикси
рованных значениях Д = 2,4,..., 20. Для /i = 2 имеем /(F ) = e~F. Для Д > 2
функция имеет максимум, который возрастает с ростом Д .
нуль для F > 0 и имеет тяжелый хвост при F —> оо. Следовательно, оно не мо
жет быть симметрично. Легко можно показать, что при Д > 2 математическое
ожидание для него равно E( F) = / 2 / ( / 2 - 2).
Теперь можно найти критическую границу F af , которая определяется из
условия
(8.2.4)
Это выражение означает, что критическая граница F£ равна квантили F i_ a
для F -распределения (см. разд. 3.3), поскольку
(8.2.5)
Если значение этой критической границы превышается, то можно сказать, что
of > а \ с уровнем значимости а. Значения квантилей Fi _а для различных пар
( / ь / 2 ) приведены в табл. 1.8. В общем случае применим двусторонний крите
рий, заключающийся в проверке того, лежит ли величина F между двумя кри
тическими границами F " и F " ', которые определяются следующим образом:
Р
( 8 .2.6)
Поскольку F —это отношение двух величин, то неравенство s ? / s 2 < F ' " ( / i , / 2)
очевидно, имеет тот же смысл, что и неравенство: s \/s \ > F " '( / 2 , / i ). Здесь
8 .2 . F -критерий для проверки равенства дисперсий
217
первый аргумент —число степеней свободы величины в числителе, а второй
аргумент —число степеней свободы величины, стоящей в знаменателе. Условие
(8 .2 .6 ) можно переписать как:
Р ( | > F * ( h , / 2 )) =
Р
> F " ( /2, Д ) ) = \ а .
(8.2.7)
Следовательно, таблицу 1.8 можно использовать как для одностороннего, так
и для двустороннего F -критерия.
Взглянув на табл. 1.8, можно заметить, что Р\ _ а / 2 > 1 для всех возможных
значений а. Следовательно, необходимо только найти граничное значение для
соотношения
s2
g/ S k > Fi - i M g , f k ) .
(8-2.8)
Здесь индексы д и к означают большее и меньшее значения дисперсий, т. е.
4 > *1 - Если неравенство (8.2.8) выполнено, то гипотеза о равенстве дисперсий
должна быть отклонена.
Пример 8 . 1 . F -критерий для проверки гипотезы о равенстве дисперсий двух
последовательностей измерений. Длина (100м*10~9) образца измеряется при
помощи двух движущихся микроскопов. Результаты измерений и вычислений
приведены в табл. 8.1. Из табл. 1.8 следует, что для двустороннего F -критерия
с уровнем значимости 10% ^ол(6,9) — ^о.95 (6 , 9 ) = 3.37 и гипотеза о равенстве
дисперсий не отвергается.
■
Таблица 8.1. Е-критерий для проверки гипотезы о
равенстве дисперсий. Данные из примера 8.1.
Номер
измерения
1
2
3
4
5
6
7
8
Измерения при помощи
прибора 1 прибора 2
[м-10 - 9]
[м-10 - 9]
97
100
10 1
102
103
98
97
98
103
96
102
101
9
99
10
101
100
Среднее
Число степеней свободы
s2
F = 6.5/3.7 = 1.8
9
34/9 = 3.7
100
101
100
99.8
6
39/6 = 6.5
218
Глава 8.
Проверка статистических гипотез
8.3. Критерий Стьюдента. Сравнение средних
Рассмотрим выборку из стандартного гауссовского распределения. Пусть х —
арифметическое среднее выборки объема N. Согласно формуле (6.2.3) диспе
рсия величины х связана с выборочной дисперсией посредством соотношения
а 2 (х) — a 2( x) / N.
(8.3.1)
Если N достаточно велико, то, согласно центральной предельной теореме, ве
личина х будет нормально распределена со средним х и дисперсией а 2 (х). Та
ким образом поведение величины
у = (х - х)/а(х)
(8.3.2)
будет описываться стандартным нормальным распределением. Величина сг(х),
однако, не известна. Мы знаем только оценку для <т2 (х), равную
(8.3.3)
Тогда при помощи соотношения (8.3.1) мы можем оценить также и величину
* 2 (х):
1
(8.3.4)
N(N - I )
3^1
Теперь мы хотим узнать, насколько распределение величины (8.3.2) будет
отличаться от стандартного гауссовского распределения, если <т(х) заменить на
Sx. Путем простой замены координат всегда можно добиться того, чтобы х — 0.
Следовательно, будем рассматривать только распределение величины
t = x/Sx = xViV/Sx.
(8.3.5)
Поскольку величина ( N — 1 ) s2 = / s2 имеет хи-квадрат распределение с
/ = N —1 степенями свободы, можно записать, что t — xx^NyfJ/x- Функция
распределения величины t имеет вид
F( t ) = P ( t < t ) = P
xn/
^ n/7
X
(8.3.6)
После несложных вычислений находим, что
т
=
ПШ + 1)) гП У )^ С 1
' ,2 \ —^ (/“И J
1+7
J'-
Соответствующая плотность распределения вероятностен равна
/(*)
1/ Л
!
п/ I\—
и( / I+ 1I))
А с? V
ran
-Ш
уI \
/
+1)
(8.3.7)
8.3.
Критерий Стьюдента. Сравнение средних
1,
219
2 ,..., 10
f(t)
л
о
-5-4 - 3- 2 - 1 0
1
^
2
3
4
5
t
Р и с . 8 .3 . Р а сп р ед ел ен и е С т ь ю ден т а f (t ) с / ~ 1 , 2 , . . . , 10 ст еп ен я м и свободы . П ри
/ = 1 зн ач ен и е м ак си м ум а ф у н к ц и и м еньш е, чем при д р у г и х зн а ч е н и я х / , а ее хвосты
являю тся н аи бол ее «тя ж ел ы м и ».
На рис. 8.3 представлена функция f ( t ) для различных значений степеней
свободы / ~ дг —1 . Из сравнения с рис. 5.7 видно, что, как и предполагалось,
в пределе при / —+ ос распределение (8.3.7) стремится к стандартному нор
мальному распределению с плотностью <f>o(t). Так же как и <^>о(£), плотность
распределения f(t) симметрична относительно нуля и имеет колоколообразную
форму. Согласно соотношению (5.8.3), получаем
P(\t\ < t) = 2F(\t\) - 1.
(8.3.8)
Из условия
(8.3.9)
можно определить значения критических границ ± .t’a при заданном уровне зна
чимости а, где tfa = гг_ 1 а . В табл. I приведены квантили tx_ i a для различных
значений а и / .
Алгоритм применения критерия Стьюдента1 можно описать следующим
образом: имеется гипотеза о том, что математическое ожидание для нормаль
ного распределения равно Ао- Выборка объема N дает значение х выборочного
среднего и значение s* выборочной дисперсии. Если при заданном уровне зна
чимости а справедливо неравенство
x -A o iV iv
1*1
">
*1 —jOr>
(8.3.10)
то наша гипотеза должна быть отвергнута.
^-распределение было введено В.О. Госсетом в публикации под псевдонимом «Student
(Стьюдеит)».
220 Глава 8. Проверка, статистических гипотез
Очевидно, что это двусторонний критерий. Если важно иссследовать от
клонения только в одну сторону, то соответствующий критерий при уровне
значимости а принимает вид:
(x ± \ 0 ) V n ^ ,
Ъ— ~
Р* Ъп2а
(8.3.11)
tl-
Можно обобщить этот критерий и применить его к задаче сравнения двух
математических ожиданий. Предположим, что из совокупностей X и Y были
получены выборки размеров iVj и JV2. Необходимо найти, насколько справед
лива гипотеза о том, что математические ожидания равны: х = у.
Согласно центральной предельной теореме, средние значения приближенно
имеют нормальное распределение. Их дисперсии равны
ff2(x) =
=j^ff2(y)’
(8.3.12)
а оценки для этих дисперсий имеют следующий вид:
1
Ай
1
Ай
(8.3.13)
*>’ ■ ^ = в д - в
В примере 5.10 обсуждалось, что разность
(8.3.14)
А - х - у
приближенно имеет нормальное распределение с дисперсией
а 2 (А) = сг2 (х) + <т2(у).
(8.3.15)
Если наша гипотеза о равенстве средних справедлива, т. е. если А — 0 , то
отношение
А/а(А)
(8.3.16)
имеет стандартное нормальное распределение. Если бы была известна величи
на сг(А)у то можно было бы сразу в соответствии с формулой (5.8.2) вычислить
вероятность того, что гипотеза справедлива. Однако нам известно только зна
чение
В общем случае соответствующее отношение
(8.3.17)
A / sa
будет немного больше.
Обычно гипотеза о том, что х = у , подразумевает, что значения х и у полу
чены из одной и той же совокупности. Тогда сг2 (х) и а 2 (у) равны, и в качестве
соответствующих оценок можно использовать взвешенные средние s2 и s2. Ве
са их равны (N\ — 1) и (Д^2 — 1):
2 _ (Ni - l)sl + (N 2 - l)sy
2
s
(iVj - 1 ) + (JV2 - 1 )
•
(8.3.18)
8.3. Критерий Стьюдента. Сравнение средних
221
Тогда построим величины s| = s2 /Лгь s? = s2 /N 2 и
A^i + TV2
(8.3.19)
n ,n 2 s '
Можно показать (см. [8]), что отношение (8.3.17) имеет ^-распределение Стью
дента с / — N \ + TV2 —2 степенями свободы. На основании этого теперь можно
сформулировать критерий равенства средних Стьюдента.
По двум выборкам вычисляется величина (8.3.17). Полученное значение
сравнивается с квант илью распределения Стьюдента с / = N i + TV2 —2 степе
нями свободы при уровне значимости а. Если
— эх
S- ~
+ S-
\л\
х — у!
(8.3.20)
> t'a
эл
Эл
то гипотеза о равенстве средних должна быть отклонена. Вместо этого можно
предположить, что х > у или х < у , в зависимости от того, какое неравенство
верно: х > у или х < у.
1*1
Пример 8 .2 . Критерий Стьюдента для проверки гипотезы о равенстве сред
них значений двух последовательностей измерений. В столбце х таблицы 8.2
содержатся результаты измерений (в произвольных единицах) концентрации
нейраминовой кислоты в красных кровяных тельцах у больных, страдающих
Т а б л и ц а 8 .2 . К р и т ер и й
С тью ден та
д л я п ровер к и ги п отезы о равен стве
д в у х с р е д н и х зн ач ен и й . Д а н н ы е из
п р и м ер а 8.2.
X
У
21
24
18
19
25
17
18
22
21
23
18
13
16
23
22
24
16
20
22
19
18
19
19
= 1 7 1 .8 /1 5
i^ll
Sx
= 20.3
£
to
1—f
II
X
у = 19.0
S?
=
20/6
222
Глава 8. Проверка статистических гипотез
определенным заболеванием крови. В столбце у представлены результаты из
мерения этих величин для группы здоровых людей. На основании средних
значений и выборочных дисперсий для двух выборок находим:
Д1 = | х - у | = 1-3,
s2 =
15s2 + 6 s2
Х
21
У — О 1к
“ J b '
23
SA — 112 !
1 . 88 .
При а = 5 % и / = 21 получаем, что
= 2.08. Следовательно, мы должны
сделать вывод о том, что этих экспериментальных данных недостаточно для
определения степени влияния болезни на уровень концентрации кислоты.
■
8.4. Принципы общей теории проверки гипотез
Все рассмотренные до настоящего момента методы проверки гипотез были по
лучены путем рассуждений на интуитивном уровне без строгих доказательств.
В частности, не было приведено никаких конкретных соображений по поводу
выбора критической области. Теперь мы рассмотрим теорию проверки стати
стических гипотез более строго, хотя полное исследование этого вопроса лежит
за пределами нашей книги.
Любую выборку объема N можно описать при помощи N точек в выбо
рочном пространстве, описанном в разд. 2.1. Для простоты мы ограничимся
непрерывной случайной величиной х, тогда выборку можно представить в виде
N точек (х^1 ),х^2) , . . . , х ^ ) на оси абсцисс .т. В случае г случайных величин
эти N точек лежали бы в r -мерном пространстве. При другом подходе выборка
могла бы быть представлена в виде единственной точки в пространстве раз
мерности rN . Например, выборку объема 2 для одномерной переменной мож
но было бы изобразить в виде точки с координатами х^Е\ х ^ 2} на двумерной
плоскости. Такое пространство мы будем называть ^-пространством. Любая
гипотеза Н состоит из некоторого предположения относительно поведения
плотности распределения вероятностей
/ ( x ;A i ,A2,...,A?>) = /(.-г; А).
(8.4.1)
Гипотеза называется простой, если плотность распределения / ею полностью
определена вплоть до значений ее параметров. С другой стороны, гипотеза на
зывается сложной, если не известны или функциональная форма плотности
/ , или хотя бы одно значение параметра, ее определяющего. Простая гипотеза
может, например, заключаться в предположении о стандартном гауссовском
распределении выборки. При этом предположение о гауссовском распределе
нии выборки с нулевым средним и неизвестной дисперсией будем являться уже
сложной гипотезой. Одну из гипотез назовем пулевой и обозначим ее через Щ.
Если она состоит в том, что Л — Ао, то это записывают следующим образом:
#о(А = Ао) = #o(Ai — Аю, А2 — А20 ) • ■•, Ар -- Аро).
(8.4.2)
Другие возможные гипотезы называются альтернативными гипотезами, на
пример
(8.4.3)
Н\ ( А — A i ) — Н\ ( A i — А ц , A2 — A 2 1 , . •■ , A p - - A P [).
8.4. Принципы общей теории проверки гипотез 223
Часто приходится проверять нулевую гипотезу вида (8.4.2) против сложной
альтернативной гипотезы
ЯДА ф Ао) = Hi (Ax Ф А10, А2 Ф Л20, • • •, Ар ф А,*).
(8.4.4)
Поскольку такая нулевая гипотеза содержит в себе утверждение о поведении
плотности распределения вероятностей в выборочном пространстве, то она так
же предсказывает вероятность наблюдения точки X — (х^^,х^2\ ... , х ^ ) в
^-пространстве1. Определим теперь критическую область S c с уровнем зна
чимости а из условия
Р {Х £ S c\Ho) = а,
(8.4.5)
т. е. определим область S c таким образом, чтобы вероятность наблюдения точ
ки X в области S c в предположении о справедливости гипотезы H q была равна
а. Если точка X , соответствующая выборке, действительно попадает в область
Sc, то гипотеза Но отвергается. Необходимо отметить, что условие (8.4.5) не
определяет критическую область Sc однозначным образом.
Несмотря на то, что использование концепции Е-пространства приводит к
красивым теоретическим построениям, при проверке гипотез на практике ее
обычно неудобно использовать. Вместо этого строят статистику критерия
Т
=
Т( Х) =
Т ( х (1\ х ( 2\ . . , x W )
( 8 .4 .6 )
и определяют область U значений переменной Т таким образом, чтобы она
соответствовала критической области £ с, т. е. осуществляют отображение
X -> Т(Х),
S C{X) -> U(X).
(8.4.7)
При этом нулевая гипотеза отклоняется, если Т £ U.
Поскольку выборочные данные носят случайный характер, то, очевидно, су
ществует возможность отклонить нулевую гипотезу согласно условию X € 5 С,
даже если на самом деле она была верна. Вероятность подобной ошибки, так
называемой ошибки первого рода, равна а. Кроме того, существует еще одна
возможность сделать неправильный вывод: основываясь на том, что X не при
надлежит критической области £ с, принять гипотезу Но, хотя на самом деле
эта гипотеза была неверна, а справедливой была альтернативная гипотеза. Эта
ошибка называется ошибкой второго рода. Вероятность такой ошибки равна
Р ( Х $ ? 5 С| Я 1 ) = / 3 ,
(8.4.8)
и, безусловно, зависит от конкретной альтернативной гипотезы H i. Эта зави
симость дает нам методику определения критической области S c. Очевидно,
1 Несмотря на то, что величина X и определенная ниже функция Т(Х) являются случай
ными величинами, для их обозначения мы не будем пользоваться специальными символа
ми.
224
Глава 8 . Проверка статистических гипотез
что критерий будет наиболее мощным (корректным), если при фиксирован
ном уровне значимости а критическая область будет выбрана таким образом,
чтобы вероятность /3 ошибки второго рода была минимальна. Как и следова
ло ожидать, критическая область и, следовательно, сам критерий зависят от
рассматриваемой альтернативной гипотезы.
После того как была определена критическая область, можно рассмотреть
вероятность отклонения нулевой гипотезы как функцию от «истинной» гипо
тезы, или, точнее, как функцию от параметров, которые ее описывают. По
аналогии с формулой (8.4.5) эта вероятность равна
М (5 С,Л) - Р (Х е S C\H) = Р (Х € 5 С|Л).
(8.4.9)
Она является функцией от S c и от параметров Л и называется функцией мощ
ности критерия. Вероятность дополнительного события
L ( S C, Л) = 1 —М (Sc, Л)
(8.4.10)
называется вероятностью принятия или оперативной характеристикой кри
терия. Она равна вероятности принятия 1 нулевой гипотезы как функции па
раметров, определяющих «истинную» гипотезу. Очевидно, что
М (5 С, А о ) = а ,
L{SC, Ао) = 1 —а ,
М (5 С,Л 0 = 1 - / 3 ,
L( SC, Ai) = /3.
Наиболее мощный критерий для простой гипотезы
нативной гипотезы определяется из условия
М (5 С, Ах) = 1 —/3 = шах.
(8.4.11)
против простой альтер
(8.4.12)
Иногда существует равномерно наиболее мощный критерий, для которого
условие (8 . 1 . 1 2 ) выполнено при всех возможных альтернативных гипотезах.
Говорят, что критерий является несмещенным, если его функция мощности
больше либо равна а при всех возможных альтернативных гипотезах:
М (5 С, Xi) > а.
(8.4.13)
Это определение корректно, поскольку при этом минимальна вероятность от
клонения нулевой гипотезы, когда нулевая гипотеза справедлива. Несмещен
ный наиболее мощный критерий является наиболее мощным среди всех не
смещенных критериев. Соответственно можно определить несмещенный рав
номерно наиболее мощный критерий. В следующих разделах будут рассмо
трены правила, которые в некоторых случаях позволяют строить критерии с
такими заданными свойствами. Перед тем как перейти к этому вопросу, приве
дем сначала пример, иллюстрирующий только что приведенные определения.
Пример 8.3. Проверка гипотезы о том, что нормальное распределение с за
данной дисперсией а 2 имеет среднее А = Ао- Пусть необходимо проверить
гипотезу Яо(А = Ао)- В качестве статистики критерия возьмем среднее ариф
метическое х — ~ (xi + Х2 + ... + хп). (В примере 8.4 будет показано, что для
1 Мы используем здесь термин «принятие» гипотезы, хотя точнее было бы сказать: «Нет
оснований для отклонения гипотезы».
8.4.
Принципы общей теории проверки гипотез
225
наших целей это наиболее подходящая статистика). Из разд. 6.2 известно, что
величина х имеет нормальное распределение со средним Л и дисперсией сг2 /п,
т. е. плотность распределения вероятностей для х в случае Л = Ао равна
(
/О ; А0) =
(8.4.14)
Она представлена на рис. 8.4 вместе с четырьмя различными критическими
областями, каждая из которых имеет один и тот же уровень значимости а.
Эти области задаются следующим образом:
Ui : х < Л1 и х > Л",
U2 : х > А111,
где fy„ Д х ) dx = а,
U3 : х < AIV,
гДе / _ оо / Ц ) die = а,
UA : Av < х < AVI,
гЛе /Д° f ( x ) d r = /Д
где
./ -о с Д
г )
=
/л"
й
х ) d x
=
\ot,
AIV
/ ( i ) dx = | а .
Для того чтобы получить функции мощности для каждой из этих областей, не
обходимо варьировать значение среднего А. По аналогии с формулой (8.4.14),
плотность распределения вероятностей величины х при произвольном значе
нии А равна
п
П
(8.4.15)
(х - А):
/( Д А) = -= = г- ехр
2а 2
V Z7T(7
Пунктирная кривая на рис. 8.4Ь соответствует плотности распределения веро
ятностей при А = А! ~ Ао + 1. Тогда функция мощности (8.4.9) равна просто
P ( x € U |А)= / f ( x ; X) dx .
Ju
(8.4.16)
Функции мощности, полученные таким образом для критических областей
и^ч Нз, £/4 , представлены на рис. 8.4с для случая п — 2 (сплошная линия) и
п — 10 (пунктирная кривая).
Теперь можно сравнить эффективности четырех критериев, соответствую
щих различным критическим областям. Непосредственно из рис. 8.4с видно,
что U\ соответствует несмещенному критерию, поскольку, очевидно, выполне
но условие (8.4.13). С другой стороны, критерий с критической областью U-2
является более мощным при альтернативной гипотезе Hi ( X} > А0), однако не
годится для случая H {(Xi < Ао). Для критерия, соответствующего U3 , ситуа
ция выглядит в точности наоборот. И наконец, область Щ дает критерий, для
которого максимальна вероятность отклонения нулевой гипотезы, когда она
справедлива. Безусловно, это крайне нежелательное свойство. Этот критерий
был построен только в демонстрационных целях. Если сравнить три первых
критерия, то можно увидеть, что ни один из них не является более мощным
по сравнению с двумя другими для всех возможных значений Aj. Отсюда сле
дует, что нам так и не удалось найти равномерно наиболее мощный критерий.
В примере 8.4 будет продолжено обсуждение этой задачи и будет установлено,
что в данном случае не существует равномерно наиболее мощного критерия. ■
226
Глава 8.
Рис. 8.4.
Проверка статистических гипотез
(а) К р и т и ч еск и е о б л а сти в ^ -п р о с т р а н с т в е , (Ь) к ри ти ч еск ая обл асть для
статистики к ри тери я и (с) ф у н к ц и я м ощ н ости к р и тер и я д л я п р и м ер а 8.3.
8.5. Лемма Неймана-Пирсона и ее применение 227
8.5. Лемма Неймана—Пирсона и ее применение
В предыдущем разделе было введено пространство, в котором выборка пред
ставляется при помощи одной точки X . Вероятность наблюдения точки X в
критической области Sc в предположении что нулевая гипотеза Но справедли
ва, была определена в формуле (8.4.5). Она равна
Р(Х
G
SC\H0) = а.
(8.5.1)
Определим теперь вероятность f(X\Ho) в ^-пространстве. Очевидно, что
/
J st:
f{X\H0)dX = P { X € S c\Ho)
a.
(8.5.2)
В лемме Н еймана--П ирсона утверждается следующее:
Критерий для проверки простой гипотезы Но против простой альтер
нативной гипотезы II \ является наиболее мощным критерием, если кри
тическая область Sc в пространстве Е выбирается таким образом, чтобы
отношение
f(X\H0) ( < с для всех X € Sc,
f(X\Hi) [ > с для всех X g Sc.
(R ,
on
Здесь с — константа, зависящая от уровня значимости.
Докажем это утверждение, рассмотрев помимо 5Стакже некоторую область
S. Она может частично пересекаться с областью S c, как показано на рис. 8.5.
Выберем область S такой, чтобы она соответствовала тому же самому уровню
значимости, т. е. чтобы
/
Js
f(X\Ho) dX —
f(X\H0)dX = a.
s.
Используя обозначения рисунка 8.5, можно записать:
! f(X\H0)dX= /
f(X\H0)dX- / f(X\H0)dX
Jsa
л
=
Jc
f f(X\H0)dX- [ f(X\Ho)dX= [ f(X\H0)dX.
Js
Jc
Jb
228 Глава 8 . Проверка статистических гипотез
Поскольку область А содержится в 5 С, то можно применить одно из неравенств
(8.5.3), т. е.
/ f(X\HQ)dX<c I f{X\Hx)dX.
JA
JA
Соответственно, поскольку В лежит вне *SC, то имеем:
[ f ( X\ H0) d X > c [ f ( X\ HL)dX.
Jв
Jв
Теперь можно выразить функцию мощности (8.4.9) через три интеграла:
М ( 5 С,Л0 =
I i\x\Hv)dx
[ f(X\Hl)dX= [ f(X\H!)dX+
JSc
Ja
Jc
> - f f ( X\ Ho ) d X+ f f ( X\ Hj ) dX
c Ja
Jc
> f f { X \ Hi ) d X + j f ( X\ Ht) d X > f f { X\ H1) dX = M(S, X1)
JВ
JC
JS
или окончательно
M (S C, Ai) > M (S ,X i).
(8.5.4)
Это неравенство в точности соответствует условию (8 .4 .1 2 ) из определения рав
номерного наиболее мощного критерия. Поскольку не было сделано никаких
предположений относительно альтернативной гипотезы Hi(X = Aj) и области
5, то мы доказали, что если альтернативная гипотеза удовлетворяет условию
(8.5.3), то это условие задает равномерно наиболее мощный критерий.
Пример 8.4. Наиболее мощный критерий для проверки гипотезы из приме
ра 8.3. Продолжим теперь обсуждение примера 8.3, т. е. рассмотрим критерий
• для выборки объема 7V, полученной из нормально распределенной совокуп
ности с известной дисперсией а 2 и неизвестным средним Л. Плотность рас
пределения вероятностей для точки X =
.. . , х ^ ) в ^-пространстве
равна совместной плотности распределения вероятностей для величины
при фиксированных значениях Л, т. е.
1
f(X\H0) =
2а 2
N
(8.5.5)
3=1
при нулевой гипотезе и
пх\нз =
ехр
1
2сг2
N
(8.5.6)
3=1
Лемма Неймана-Пирсона и ее применение
8.5.
229
при альтернативной гипотезе. Отношение из формулы (8.5.3) принимает вид
Л
N
Л Х |Я „ )
« =7ИЖГехр -=и &
= ехр
X(J) - Л о
)2
-
М У
3=1
" 2^2 |М А 2 ~ А?) - 2(Л0 - Л,)
|
Величина
N
? О ? - а?) = fe > О
2и 1
ехр
является неотрицательной константой. Поэтому условие (8.5.3) принимает вид
ехр
Ао —А]
N
£*
(J)
3= 1
< е,
AT G *S*C,
> с,
X g S c.
Это равносильно неравенствам
(А0 - Ai)x
<<Л
> с ',
X £ S C.
(8.5.7)
Здесь d —константа, отличная от с. При этом соотношение (8.5.7) является
не только условием, согласно которому определяется область 5 С; из него так
же напрямую вытекает, что в качестве статистики критерия необходимо ис
пользовать величину х. Для каждого конкретного значения Ai, т. е. для вся
кой альтернативной гипотезы ЯДА = АД, согласно соотношению (8.5.7) легко
определить Sc или С/, т. е. критическую область и статистику критерия х.
Для случая Ai < Ао соотношение (8.5.7) принимает вид
- / < с",
Х \ > с",
X € S C,
X £ Se.
Это соответствует ситуации, представленной на рис. 8.4 (ЬЗ) при с" = XIV.
Аналогично для любой альтернативной гипотезы, в которой Ai > Ао, критиче
ская область для наиболее мощного критерия задается соотношением
(см. рис. 8.4 (Ь2 ) при с'" = А"'). Здесь не существует равномерно наиболее
мощного критерия, поскольку коэффициент (Ао — АД в соотношении (8.5.7)
меняет знак при Ai = Aq.
■
230
Глава 8. Проверка статистических гипотез
8.6. Критерий отношения правдоподобий
Лемма Неймана-Пирсона дает условие для нахождения равномерно наиболее
мощного критерия. Такого критерия не существует, если в альтернативной ги
потезе содержатся значения параметров, которые могут быть одновременно
как больше, так и меньше соответствующих значений нулевой гипотезы; мы
столкнулись с этим в примере 8.4. Однако можно показать, что это справедли
во и в общем случае. Таким образом возникает вопрос: «какой критерий следу
ет использовать в случае, когда не существует равномерно наиболее мощного
критерия?» Безусловно этот вопрос сформулирован недостаточно строго для
того, чтобы допускать однозначный ответ. Далее будут описаны методы, кото
рые позволят нам строить критерии, обладающие необходимыми свойствами
и, как правило, являющиеся относительно простыми в использовании.
Рассмотрим сначала общий случай р параметров Л = (А], А2 :. • •, АД. Про
верка заданной гипотезы осуществляется по выборке, т. е. по точке X —
( x ^ J , x ^ , . . . , x ^ ) в ^-пространстве. Нулевая гипотеза (сложная) состоит в
задании некоторой области для каждого из параметров. Можно использовать
р-мерное пространство с Ai, Аг,. . . , Хр в качестве координатных осей и рассмо
треть допустимую область, соответствующую нулевой гипотезе, как область в
этом параметрическом пространстве, называемом и. Обозначим за Q область
этого пространства, отвечающую всем возможным значениям параметров. То
гда наиболее общей альтернативной гипотезой будет та, которая отвечает той
части области 12,_которая не содержит и. Обозначим се за (2 — ш. Вернемся
теперь к оценке А максимального правдоподобия из главы 7 для параметра
А. Она равна такому значению А, при котором функция правдоподобия до
стигает максимума. В главе 7 мы неявно предположили, что максимум ищет
ся внутри всего допустимого параметрического пространства. В дальнейшем
мы будем рассматривать максимум в ограниченной области (например, в ш).
В этом случае будем записывать А ^ . Критерий отношения правдоподобий1
определяется при помощи статистики критерия
Г (Я ).
, .. . , Лр ,
м
/(х(1),х(2),...,х(^);А(
1ш),А.У ,. . . , тЛр
( 8 .6 . 1 )
Здесь /(х^1),х^2),..., х<">;Ai, А2, ..., Ар) является совместной плотностью рас
пределения вероятностей для величин х ^ (j — 1 , 2 , . . . , TV), т. е. функцией
правдоподобия (7.1.5). Принцип критерия отношения правдоподобий заклю
чается в том, что мы отклоняем нулевую гипотезу, если
Т > T i_ a .
( 8 . 6 . 2)
Здесь T i_Q определяется из соотношения
г оо
Р (Т > T i - a \H0) = /
g(T\H 0) AT,
JTi-„
1 Этот критерий чаще называют крит ерием от нош ения м аксим ум ов
П рим . ред.
(8.6.3)
правдоподобий. —
8 .6 . Критерий отношения правдоподобий
231
где д(Т\Но) —условная плотность распределения для статистики критерия Т.
Следующая теорема, доказанная Уилксом [9], говорит о поведении функции
распределения величины Т (или на самом деле величины —21пТ) для выборок
большого объема:
Если данные X имеют непрерывную плотность распределения
А2, •. •, Ар), и если среди р параметров нулевой гипотезы
Но(Х\ — Аю, А2 = А20, ■■•, Аг = Аго),
г < р,
г параметров фиксированы, то для выборок большого объема, т. е. в пределе
при N —> оо, статистика ~21n Т имеет хи-квадрат распределение с р — г
степенями свободы. В случае простой нулевой гипотезы, т. е. при г — р,
число степени свободы равно единице.
Применим теперь этот метод к задаче из примеров 8.3 и 8.4, т. е^рассмотрим
критерии для выборок из нормально распределенной совокупности с известной
дисперсией и неизвестным средним.
Пример 8.5. Функция, мощности для критерия из примера 8.3. Для простой
гипотезы #о(А = А0) область из в параметрическом пространстве вырождается
в точку А = А0. Отсюда имеем
(8.6.4)
А(ы) = Ао.
Если рассмотреть альтернативную гипотезу наиболее общего вида: Н \(А —
Ai ф Ао), то в качестве оценки максимального правдоподобия для параметра
А получаем выборочное среднее х. Поэтому отношение правдоподобий (8.6.1)
принимает вид
f(x ^ l\ x ^ 2K ... , х ^ ; х )
(8.6.5)
7 (x(M)X( 2 ) ,..., xW ;A ^ )'
Согласно формуле (7.2.6) совместная плотность распределения равна
.. . , x {N}) = ( ” 7= - )
я*a
W SF-
exp
h X>(j)- A):
2 cr2
Следовательно,
T — exp
[
= exp
2ЛАУ_A
°)
— exp
N
? ( x - Ao)‘
2a2
3=1
( 8 .6 .6)
232
Глава 8. Проверка статистических гипотез
Теперь нужно вычислить Ti_a , тогда гипотеза Но будет отклонена, если бу
дет выполнено неравенство (8.6.2). Поскольку логарифм величины Т является
монотонной функцией по Т, то в качестве статистики критерия можно исполь
зовать
Т ' = 2 1 п Т = ^ ( х - Ао)2
(8.6.7)
и отклонять гипотезу Н 0 в случае, когда Т ' > Т[_а, где
г ОС;
/
h(T '\H 0) d r ' = a.
JT[-a
Для того чтобы вычислить плотность распределения вероятностей h(T'\Ho)
для статистики Т \ найдем сначала плотность f(x ) для выборочного среднего
при условии Л = Ао
№ н 0)
Для того чтобы выполнить преобразование переменных (3.7.1), нам потребу
ется производная
dx
dT 7
2V N
1
которую легко можно получить из соотношения (8.6.7). Тогда имеем:
#
dx
1
7 * -1 / 2 „ - Т 7 2
т н 0)
h(T '\H 0) =
dT 7
(8 .6 .8)
Это действительно плотность х и - к в а д р а т р а с п р е д е л е н и я с о д н о й с т е п е н ь ю сво
боды. Таким образом, в нашем примере теорема У и л к с а в ы п о л н е н а даже для
конечного N . Итак, мы видим, что критерий отношения правдоподобия сво
дится к несмещенному критерию на рис. 8.4 (Ь1). Критерий
m,
N,
Г ' = -5г(г
<7*
Ао)2 > Т[_а
эквивалентен критерию
1/2
|х —А0| < А',
N
—
<7
1/2
| х - А 0| > А " ,
(8.6.9)
где
- у = Л" = (Г(_ J 1/ 2 = (х?_ J 1/2 = Х1 - 0,Этот результат можно использовать для нахождения в явном виде функции
мощности нашего критерия. При фиксированном значении среднего А плот
ность распределения вероятностей для выборочного среднего равна
/ ( * ; Л)
N У /2
Wj 6ХР
Щ х - А)2'
2ст2
Фо
х —А \
сг/ у/ n
)
8 .6 . Критерий отношения правдоподобий
N /o 2 =
1,
2 .....
233
10
Р и с . 8 .6 . Ф ункци я м ощ н ости д л я к р и т ер и я и з п р и м ер а 8.5. С ам ая п р авая кривая
соотв етств ует зн ач ен и ю N /a 2 == 1.
Используя соотношения (8.4.9) и (8.6.9), получаем:
^л
Л
ПОО
/( x; A) cl 5+ / f ( x - \ ) d x
•оо
J В
А -А о У д /
— Фо ( x i - a
<Т/У Л ()+ Ч Х1_
/
(8.6 .10)
, А -А 0^
a /v ^ v j’
А = - X i - a ( r / '/ N - A0l
B = x i - a< r / V N - \ 0.
Здесь (/)0 и Ф0 —плотность и функция стандартного нормального распреде
ления. Функция мощности (8.6.10) представлена на рис. 8.6 для a — 0.05 и
различных значений N / a 2.
■
Пример 8 .6 . Проверка гипотезы о том, что выборка из нормального распре
деления с неизвестной дисперсией имеет среднее значение А — Aq. В рассма
триваемом случае нулевая гипотеза Но(Х = Ао) является сложной, поскольку
не содержит никакого утверждения относительно величины дисперсии а2. Из
примера 7.8 известна оценка максимального правдоподобия в полном параме
трическом пространстве
А<Л>
х,
а2(п )
=41>и|-*)2=^
В параметрическом пространстве, соответствующем нулевой гипотезе, получа
ем:
А(ш) = Ао,
5 'i M
U)
=wI>
з= 1
Ао)'
234
Глава 8.
Проверка статистических гипотез
Тогда отношение правдоподобий (8 .6 . 1 ) равно
т
^Е
^ - А
о П
" 72
V Е ( х (Я - х)2 )
( N E ( x ( j l - x ) 2 , Л^ ( ^ - А 0 ) 2 \
V 2 Е ( х Ш - х)2 + 2 £ ( х Ш - Л0 ) 2 J
= ^ ( х ^ - А о ) 2^ 72
V E (x ^ -x )2 ;
'
Снова перейдем к новой статистике Т ' нашего критерия, которая является
монотонной функцией по Т :
Т' = t 2/ n =
Г = 1+
E(x(j) ~ Ар) 2
Е ( х0) - х)2 + N (x - А,,)2
Е (х (» - х)2
Е(х№ - х)2
( 8 . 6 . 11)
N - Г
где
х - А0
= Vn
/ Е ( х ^ ) - х ) 2 -\ 1/ 2
х —Ап
5т
х — Ас
Sv
( 8 . 6 . 12)
является статистикой критерия Стьюдента из разд. 8.3. На#сновапии соотно
шения (8 .6 . 1 1 ) можно вычислить значение t для конкретной выборки, и тогда
нулевую гипотезу нужно будет отклонить, если
Применение метода отношения правдоподобий в самом общем виде свелось к
использованию критерия Стьюдента, который был построен изначально для
проверки гипотез, касающихся выборок из нормального распределения с из
вестным средним и неизвестной дисперсией.
■
8.7. Критерий согласия хи-квадрат
8.7.1. Критерий хи-квадрат с максимальным числом
степеней свободы
Предположим, у нас имеются TV результатов измерений щ, i = 1 ,2 ,..., TV, ка
ждый из которых получен с известной ошибкой стг. Ошибка измерений трак
туется следующим образом: д± является результатом измерения (неизвестного)
истинного значения hi некоторой величины. Тогда
9 i = hi +
i ~ 1, 2 , . . . . TV.
(8.7.1)
Здесь ошибка Si является случайной величиной, которая распределена нор
мально со средним нуль и известным стандартным отклонением аг.
Теперь проверим гипотезу о том, что истинные значения измеряемой ве
личины hi равны
hi — /г,
г — 1 , 2 , . . . , TV.
(8.7.2)
8.7. Критерий согласия хи-квадрат 235
Если эта гипотеза справедлива, то величины
Ui = iizA
г = 1,2,... ,N,
(8.7.3)
имеют стандартное гауссовское распределение. Следовательно, величина
дг
(8.7.4)
Т=Е
г=1
имеет хи-квадрат распределение с N степенями свободы. Если гипотеза (8.7.2)
неверна, то отклонения результатов измерений g* от значений Д, предсказан
ных согласно гипотезе и нормированных ошибками 03 , будут больше ожидае
мых (см. (8.7.3)). При заданном уровне значимости а гипотеза (8.7.2) должна
быть отклонена, если
Т >
(8-7-5)
т. е. если величина (8.7.4) больше, чем квантиль X i - a Для хи-квадрат распре
деления с N степенями свободы.
8.7.2. Критерий хи-квадрат с пониженным числом степеней свободы
Число степеней свободы понижается, если формулировка проверяемой гипо
тезы является более общей, нежели утверждение гипотезы (8.7.2). Для иллю
страции этого случая рассмотрим следующий пример. Допустим, что вели
чину g можно представить в виде функции от независимой контролируемой
переменной t, которая может быть измерена без ошибок: g = g(t). Отдельные
результаты измерений щ соответствуют заданным фиксированным значениям
независимой переменной, т. е. t*. Соответствующие истинные значения hi изме
ряемой величины задаются при помощи некоторой функции hi = h(ti). Одной
из простейших гипотез для поведения такой функции является гипотеза о ли
нейной зависимости:
f( t) = h(t) — at + b.
(8.7.6)
В действительности в этой гипотезе могут фигурировать конкретные чи
сленные значения параметров а и Ь. В этом случае известны точные значения
всех величии из соотношения (8.7.2), и, если гипотеза справедлива, величина
(8.7.4) будет иметь хи-квадрат распределение с N степенями свободы.
Однако подобная гипотеза может утверждать лишь, что «между контро
лируемой переменной t и величиной h существует линейная зависимость вида
(8.7.6)». При этом численные значения параметров а и b остаются неизвестны
ми. В этом случае для параметров строятся оценки а, 6, являющиеся функци
ями от результатов измерений
и ошибок <7*. Тогда гипотеза (8.7.2) прини
мает вид hi = h{ti) = fi = ati + 6. Однако теперь, поскольку а и b являются
функциями от результатов измерений сщ нормированные отклонения щ из со
отношения (8.7.3) перестают быть независимыми величинами. Поэтому число
236 Глава 8. П роверка статистических гипотез
степеней свободы для хи-квадрат распределения суммы квадратов (8.7.4) сни
жается на два 1 и становится равным ЛГ—2 , поскольку для определения величин
а, Ь необходимо ввести два уравнения связи между величинами щ.
8.7.3. Критерий хи-квадрат и эмпирическая плотность
распределения
Предположим, что имеются некоторая функция распределения F(x) и соответ
ствующая ей плотность распределения f(x ). Всю область значений случайной
величины х можно разделить на г интервалов
£l 5^2) • • * 1
•*• )
так, как показано на рис. 8.7. Путем интегрирования функции f(x) по ка
ждому отдельному отрезку получаем вероятность наблюдения величины х на
отрезке &
р, = Р ( х € & ) = / f(x )d x ;
= L
(8.7.7)
7-1
''ti
Возьмем теперь выборку объема п и обозначим за щ число элементов выборки,
которые попали на отрезок
Соответствующее графическое представление
выборки является гистограммой и описано в разд. 6.3.
Р и с . 8 .7 . Разбиение области зна
чений
ки ik-
переменной
х
на
отрез
Очевидно, что
г
пг = п.
(8.7.8)
г—1
Согласно (гипотетической) плотности распределения вероятностей для данной
совокупности, математические ожидания для величин щ равны п р г, а диспе1 Это утверждение верно не для любых оценок параметров о и Ь, а лишь для оценок метода
наименьших квадратов (см. гл. 9) — Прим. ред.
8.7. Критерий согласия хи-квадрат 237
рсия величины я* равна npi( 1 —pi). Если гипотеза справедлива, то распреде
ление величины г/,*, где
(щ - n p j )'2
(8.7.9)
Щ
стремится к гауссовскому распределению с дисперсией (1 —pi). Это также оста
нется верным, если вместо значений наблюдаемых величин щ в знаменателе
соотношения (8.7.9) использовать математическое ожидание дисперсий npi
2 (rij-n p i)2
Щ = -------------- •
Если теперь рассмотреть сумму квадратов величин
* 2 = 5>?,
(*
по всем отрезкам
(8.7.11)
1=1
то, если гипотеза справедлива, эта величина будет иметь хи-квадрат распреде
ление (при больших п). Число степеней свободы будет равно г —1 , поскольку щ
не являются независимыми в соответствии с соотношением (8.7.8). Кроме того,
число степеней свобод^снизится до г —1 —р, если по результатам наблюдений
определяются р параметров1 распределения.
Пример 8.7. Критерий хи-квадрат для проверки согласия эмпирической
плотности распределения, вероятностей с распределением Пуассона. В экс
перименте по изучению взаимодействия фотонов и протонов в водород
ную пузырьковую камеру проникает пучок фотонов большой мощности (7 квантов). Для того чтобы измерить интенсивность пучка фотонов, наблюдают
и замеряют процесс проникновения фотонов в камеру (изменение состояния
электоронно-позитрониых пар). Частота, с которой одновременно (т. е. на од
ном и том же снимке пузырьковой камеры) наблюдалось 0 ,1 ,2 ,... пар, имеет
распределение Пуассона (см. пример 5.3). Отклонения от распределения Пуас
сона дают информацию относительно погрешностей измерений, которые игра
ют важную роль для выявления систематических ошибок. Результаты изуче
ния п —355 снимков приведены во втором столбце таблицы 8.3 и па рис. 8 .8 .
1 Данное утверждение верно лишь для оценок неизвестных параметров, полученных ме
тодом максимального правдоподобия для группированных данных (пд ... , п Т■) или найден
ных на основе значений оценок, минимизирующих квадратичную форму (8.7.11). Методы
соответствующей минимизации изложены в гл. 10 (см., в частности, примеры 10.2 и 10.3).
Назовем такие оценки *правильны ми*.
Если в качестве оценок параметров взять оценки по методу максимального правдоподо
бия не группированных данных, то распределение формы (8.7.11) будет совпадать с распре
делением случайной величины
Xr- 1-Р + “1(А)*? + «2(A)zf,
где z\ и Z2 —независимые стандартные гауссовские случайные величины, 0 < сц(А) < 1.
Таким образом, если в результате приведенной рекомендации автора гипотеза не отверг
нута (как в примере 8.7), то ее можно принять. Если же гипотеза отвергнута «упрощенным»
критерием, то необходимо пересчитать значение квадратичной формы (8.7.11) для «пра
вильны х » оценок параметров. — Прим . рад.
238
Глава 8.
Проверка статистических гипотез
Т а б л и ц а 8 .3 . Данные для критерия хи-квадрат из приме
ра 8.7.
0
1
2
3
4
5
6
7
8
11
3
—
n ^ Y , n k ^ 355
Предсказания
по закону
Пуассона
прк
34.4
80.2
93.7
72.8
42.6
19.9
7.8
2.5
(0.7)
j
л]
го
к
Число
снимков с
к парами
Пк
47
69
84
76
49
16
-«j
Д'!
Число
электронных
пар на снимке
4.61
1.56
1.00
0.14
0.96
0.76
1.31
0.10
... X
Гг2......
"лТГГл—
й''=16744
В примере 7.4. показано, что оценка максимального правдоподобия для па
раметра распределения Пуассона равна. Л = YLk, ^ пк/ Y2k Пк- Д ля данных из
табл. 8.3. было установлено, что Л ~ 2.33. В третьем столбце приведены значе
ния ркУумноженные на п, для распределения Пуассона с таким параметром.
Путем сложения значений, стоящих в четвертом столбце, получаем величину
X 2 = 10.44. В данной задаче число степеней свободы равно шести, посколь
ку г = 8 и р = 1. Положим a = 1% и найдем, что
99 — 16.81 из таблицы
1.7. Следовательно, у нас нет оснований для того, чтобы отклонить гипотезу о
распределении Пуассона.
■
nk . прк
Р и с . 8 . 8 . Сравнение эмпирического распределения
величин Пк (гистограмма, представленная на графи
ке сплошной линией) из примера 8.7 с распределени
ем Пуассона величин прк (пунктирная линия).
8.8. Таблицы сопряженности признаков
239
8.8. Таблицы сопряженности признаков
Предположим, что было выполнено п испытаний, результатами которых явля
ются значения двух случайных величин х и у. Рассмотрим две дискретные
случайные величины, которые могут принимать значения яд, хг, • . х^; */ъ
?/2 « ■• Уе- Непрерывные случайные величины можно аппроксимировать дис
кретными путем разбиения их областей значений на интервалы таким образом,
как показано на рис. 8.7. Пусть результаты х = x-t и у = у3 наблюдались nXj
раз. Числа щ 3 можно записать в виде матрицы, которая называется таблицей
сопряженности признаков (см. табл. 8.4).
Таблица 8.4. Таблица
признаков.
сопряженности
Vi
У2
Уе
XI
пи
га 12
пи
Х'2
П21
П22
Tl2t
Хк
Пк\
Пк2
Пке
Обозначим через pi вероятность наблюдения значения х —х^, а через qj —
вероятность наблюдения значения у — у?. Если эти случайные величины не
зависимы, то вероятность одновременного наблюдения х — х* и у = у 7 равна
произведению pxq3, Оценки максимального правдоподобия для вероятностей
р и q равны
1 --V
/;‘ = - Х л ч / .
1 ^
Л
^ =
г—i
Поскольку
е
к
^ Q j = J2pi = ^ i 2 t l nii = h
3= 1
г—i
j — 1 i= 1
то получаем к 4- 7 —2 независимых оценок гд, qj. Теперь можно выписать эле
менты таблицы сопряженности признаков в одну строку
Пи 1П}2, ■■•
, П22) • • • , Tl2t, • • • ,
и применить критерий хи-квадрат. Для этого необходимо вычислить значение
{пг] - ПРгдр
г— 1 ] — \
( 8 .8 . 1)
п Pi Qj
и сравнить его с величиной
для хи-квадрат распределения, соответствуклцей заданному уровню значимости а. Число степеней свободы по-прежнему
240
Глава 8. Проверка статистических гипотез
равно числу отрезков разбиения минус число оцениваемых параметров минус
единица: f — k£ —l —(k + £—2) = (к —1)(£ —1). Если эти переменные не являются
независимыми, то пц, вообще говоря, нс будут близки к пр, 7ц, т. е. найдем, что
X 2 > х'Ро
(8-8.2)
и гипотеза будет отклонена.
8.9. Критерий для таблицы сопряженности 2 x 2
Простейшая отличная от тривиальной таблица имеет всего два столбца и две
строки и называется таблицей 2 x 2 (см. табл. 8.5). Такая таблица часто приме
няется в медицинских исследованиях. (Величины .ха и х 2 могут соответство
вать, например, двум различным методам лечения, а у { и у2 —успеху либо
неудаче в лечении. Необходимо определить, зависит ли успех лечения от ме
тода лечения.)
•
Вычислим значение величины X 2 либо согласно соотношению (8.8.1), либо
по формуле
У 2 _ ______ п(я.(/ - Ьс)2______
(а + b)(c + d)(a + c){b + <1) ’
которая получена путем преобразования выражения (8.8.1). Если величины
х н у независимы, то величина X 2 имеет хи-квадрат распределение с одной
степенью свободы. Поэтому при уровне значимости а гипотеза о независимости
должна быть отклонена, если X 2 > X] —a '
Для того чтобы величина X 2 действительно имела хи-квадрат распределе
ние, необходимо, чтобы отдельные значения п.ц были достаточно большими (и
была справедлива гипотеза о независимости).
8.10. Примеры программ
Все
п р о гр а м м н ы е ф а й л ы д о с т у п н ы в п о д д и р е к т о р и и \DATAN\EXASRC.
8.10.1. Головная программа E1TEST для моделирования выборок
и проверки равенства их дисперсий при помощи .F-критерия
Программа осуществляет моделирование пехр экспериментов. Каждый экспе
римент состоит в моделировании двух выборок объемов N \ и N 2 из нормаль
ны х распределений со стандартными отклонениями оу и а?. Дисперсия каждой
Т а б л и ц а 8.5. Таблица 2 x 2 .
У\
XI
Х2
П ц
— (1
п 2\ = с
У2
П12 “ Ь
7122 — d
8.10. Примеры программ
241
из выборок вычисляется при помощи программы SMMNVR. Выборочные диспе
рсии обозначаются через s2 и s£, при этом s2 > s^. По размерам выборок
вычисляются числа степеней свободы f g = N g —1 и Д —Nk — 1. В заключение
отношение s2 /s2k сравнивается с квантилыо Е \_а/ 2 (/д> fk) при заданном уровне
значимости [3 ~ 1 —а. Если это отношение больше соответствующей кванти
ли, то гипотеза о равенстве дисперсий должна быть отклонена. Программа
запрашивает значения величин nexp, N \, TV2, <33 , <т2 и (3. Для каждого смоде
лированного эксперимента на экран выводится одна строка с результатами.
У казание: Положить пехр = 20 и /3 = 0.9. (а) При <т\ = сг2 гипотеза бу
дет отклоняться в среднем в двух из 20 случаев, реализуя тем самым ошибку
первого рода. Обратите внимание па значительные статистические колебания,
которые, очевидно, зависят от N\ и TV2, и выберите для 03 = а 2 различные
пары значений N 1 , N2. (b) Проверьте мощность критерия при различных зна
чениях дисперсий <Т} ф (J2 •
8.10.2. Головная программа E2TEST для моделирования выборок
и проверки гипотезы о равенстве их средних
некоторому заданному значению при помощи критерия Стьюдента
Эта коротенькая программа осуществляет моделирование пехр экспериментов.
В каждом эксперименте получают выборку объема N из нормального распре
деления со средним .то и стандартным отклонением а. При помощи программы
SMMNVR вычисляются выборочное среднее х и выборочная дисперсия sx. Если
гипотеза утверждает, что выборочное среднее равно До, то для проверки этой
гипотезы можно использовать величину
При заданном уровне значимости (3 — 1 —а эта гипотеза отклоняется, если
|£| > ^х_ct/2 ■ Здесь t i - a /2 —квантиль распределения Стьюдента с / ~ N — 1
степенями свободы. Программа запрашивает значения величин nexp, N , то,
сг, До, и (3. Для каждого смоделированного эксперимента на экран выводится
одна строка с результатами.
У казание: Изменить содержание указаний из конца разд. 8.10.1 таким
образом, чтобы можно было применить критерий Стьюдента.
8.10.3. Головная программа E3TEST для моделирования выборок
и вычисления статистики критерия хи-квадрат для проверки
гипотезы о том, что выборка взята из нормального распределения с
известными параметрами
Для выборок объема N проверяется гипотеза Но о том, что эти выборки имеют
нормальное распределение со средним ао и стандартным отклонением сто. В
смоделированных экспериментах получают всего пехр выборок из нормально
242 Глава 8. Проверка статистических гипотез
распределенной совокупности со средним а и стандартным отклонением а. Для
каждой выборки вычисляется величина
( 8 . 10 . 1)
Здесь Xj являются элементами выборки. Если a = clq и и = а о , то величи
на X2 имеет хи-квадрат распределение с TV степенями свободы. Следователь
но, эту величину можно использовать при применении критерия хи-квадрат
для проверки гипотезы Но. Однако эта программа не осуществляет критерий
хи-квадрат, но зато выводит на экран гистограмму для величины X2 с нало
женной функцией плотности хи-квадрат распределения. Можно заметить, что
при a ~ ао и a = ао эта гистограмма действительно совпадает с плотностью
хи-квадрат распределения с точностью до незначительных статистических ко
лебаний. Однако, если а ф ао и/или а Ф од, то степень отклонения кривых
друг от друга возрастает. Это отклонение становится особенно заметным, если
вместо X2 выводить на экран величину
Р(Х2) = 1 - P ( X 2;TV).
( 8 . 10.2 )
Здесь F(X2, N) является функцией распределения (С.5.2) для хи-квадрат рас
пределения с N степенями свободы. Значение F(X2,TV) равно вероятности то
го, что случайная величина, полученная из хи-квадрат распределения, меньше,
чем X2. Таким образом Р является вероятностью того, что эта случайная ве
личина больше либо равна X2. Если гипотеза Но справедлива, то F, а следова
тельно, также и Р, равномерно распределены на отрезке между 0 и 1. Однако
если H q ложна, то распределение величины X2 не будет хи-квадрат распре
делением, а Р не будет равномерно распределена. Часто статистику X2 этого
критерия называют (не совсем корректно) просто «хи-квадрат», а величину
Р тогда называют «хи-квадрат вероятностью». Большие значения X2, очевид
но, означают, что слагаемые в сумме (8.10.1) в среднем больше единицы, т. е.
что значения х* сильно отличаются от величины ао- Тем не менее при боль
ших значениях X2 число Р остается маленьким (см. (8.10.2)). Следовательно,
большие значения величины «хи-квадрат» соответствуют малым значениям
«хи-квадрат вероятности». Наша гипотеза Но должна быть отвергнута с уров
нем значимости /3 = 1 —а, если X2 > Xi„a (TV). Это эквивалентно тому, что
F(X2,TV) > (3 или Р < а.
Программа запрашивает значения величин nexp, TV, а, ао, а, ао и число
(1 или 2), которое определяет, будет ли на экран выводиться гистограмма для
величины X2 или гистограмма для величины Р(Х2).
У казания: (а) П олож ^ь пехр = 1000; a = a0 = 0, a = a0 = 1 и для TV — 1,
TV = 2 и TV = 10 вывести на экран обе величины: X2 и Р(Х2). (Ь) Повторить
пункт (а), зафискировав а = 0 и положив ao = 1 и ао —5. Пояснить сдвиг ги
стограммы для Р(Х2). (с) Повторить пункт (а), зафиксировав a —1 и положив
сг0 = 0.5 и ао = 2. Прокомментировать полученные результаты, (d) Модифици
ровать программу таким образом, чтобы для вычисления величины X2 вместо
8.11. Задачи 243
чисел (iq и ctq использовались выборочное среднее х и выборочная дисперсия s2.
Величину X2 можно использовать в критерии хи-квадрат для проверки гипоте
зы о том, что выборка была получена из нормального распределения. Вывести
на экран гистограммы для X2 и для Р(Х2), показать, что величина X2 имеет
хи-квадрат распределение с N — 2 степенями свободы.
8Л1. Задачи
8.11.L JP-критерий
Даны две выборки:
(1)
(2)
21, 19, 14, 27, 25, 23, 22, 18, 21,
16, 24, 22. 21, 25, 21, 18,
(Nx = 9 ),
(N 2 = 7) .
Действительно ли дисперсия выборки (2) меньше, чем дисперсия выборки (1)
при уровне значимости a = 5 %?
8.11.2. Критерий Стьюдента
Проверить гипотезу о том, что 30 измерений из задачи 6.13.5 соответствуют
одной совокупности измерений со средним 25.5. Использовать уровень значи
мости а = 10%. Предположить, что совокупность имеет нормальное распре
деление.
8.11.3. Критерий хи-квадрат для дисперсии
Использовать метод отношения правдоподобия для построения критерия для
проверки гипотезы Я 0(сР = а^) о том, что выборка получена из нормального
распределения с неизвестным средним а и известной дисперсией (Jq. Параме
трами являются А — (а,<7). Для а;
= (х,сг0), а для Q - А ^ = (х, s).
(a) Выписать отношение правдоподобия Т.
(b) Показать, что вместо Т можно также использовать статистику критерия
Т = ;Ysr2 /V2.
(c) Показать, что Т ' имеет хи-квадрат распределение с iV - 1 степенями сво
боды и, таким образом, критерием можно воспользоваться, применив та
блицу 1.7.
8.11.4. Критерий согласия хи-квадрат
(а) Определить среднее а и дисперсию <т2 для гистограммы, изображенной на
рис. 6.lb, т. е. пи данным:
хк
Пк
193 195
1
197
9
199 201 203 205 207 209 211
9
6
2
12 23 25
11
244 Глава 8. Проверка статистических гшкпеч
Для построения оценок воспользоваться результатами примера 7.8. Пред
ставить оценки в явном виде как функции от п к и хд..
(Ь) При помощи критерия согласия хи-квадрат (при уровне значимости a —
10%) осуществить проверку гипотезы о том, что данные с гистограммы
соответствуют нормальному распределению со средним а и дисперсией а 2.
Использовать только те интервалы разбиения гистограммы, для которых
прк > 4. Определить рк па основании разности двух ячеек таблицы 1.2.
Выписать формулу для рк в виде функции от хд:, Ат, а, а 2 и Фо- Для вы
числения величины хи-квадрат построить таблицу, содержащую столбцы
X*, Пку прк и (rife - прк)2 /п р к.
8.11.5. Таблица сопряженности признаков
(а) В иммунологическом эксперименте [пример позаимствован у С оклла и
РОЛЬФА, Biometry (Freeman, San Francisco, 1969)] изучался эффект, ока
зываемый иммунной сывороткой па определенные типы бактерий. 57 мы
шей получили некоторую дозу бактерий и иммунной сыворотки, при этом
еще 54 мышам были введены только бактерии. По прошествии некоторо
го времени в обеих группах были пересчитаны мыши и была составлена
следующая таблица сопряженности признаков:
умершие
выжившие
итого
13
25
38
44
29
73
57
54
111
бактерии и
сыворотка
только бактерии
итого
всего
Проверить (при уровне значимости a — 10%) гипотезу о том, что иммун
ная сыворотка никаким образом не влияет па вероятность выживания.
(Ь) При нахождении величины хи-квадрат в пункте (а) необходимо помнить,
что все числители в соотношении (8.8.1) имеют одно и то же значение. По
казать что в общем случае для таблицы сопряженности признаков размера
2 x 2 выполнено следующее соотношение:
71,,- -
П р гТп
=
( - l ) l+ Jl(n n ?7 22
П
-
П Г2П-2 1 ) .
8.12. Указания и решения
Задача 8.11.1
xi =21.11,
х2 = 21.00,
T = s\/sl = 1.486,
S] = 14.86,
s| = 10.00,
F0.95(8,6) = 4.15.
Дисперсия для выборки (2) не является значительно мспыпей.
8.12.
У казания и реш ения
245
Задача 8.11.2
х = 25.142,
s2 = 82.69/29 = 2.85,
s = 1.69,
х - 25.5 _ 25.142 - 25.5 _ 0.358 _
s/v/30
1.69/5.48 — 0.309 ~
' ’
|Г| < W
/ = 29) = 1.70.
Следовательно, гипотезу нельзя отвергнуть.
Задача 8.11.3
(а)
/(х (1),х(2), . . . , х ( N)
J=1
(x<J> —х)2
2s^
(y/2 nsf) - N exp
/(x(1),x(2) , . . . , x W , A M ) = (v/2^CTo) - iVexр
I n т = N (Intro - In s') + i.V s "
\(J0
- /;
s
s'2
= TV(Incr0 - Ins') + ^ N — - 7}N.
ao
(b) Статистика T f — TVs'2/<Tq является монотонно возрастающей функцией по
s', если s' > (То, в противном случае она монотонно убывает. Следовательно,
критерий принимает следующий вид:
Г > г ; , 1а ,
Г < т[а для tf 0(s' - сто),
т! > Г/_а для # 0(s' <
(То),
Т' < Т га для tf 0(s' >
(То).
(c) Ответ следует напрямую из соотношения (6.7.2) и равенства
s/2 - (TV - l)s2/TV,
246 Глава 8. Проверка статистических гипотез
З а д а ч а 8 .1 1 .4
-
cl) 2
—\Л х —ал
f* k + 1 Ac
Ч'о (1* к
" aNl ---Фп
a
)
1
Xfc
Пк
Фо+
Фо-
прк
193
195
197
199
201
203
205
207
209
211
i
2
9
12
23
25
11
9
6
2
0.011
0.041
0.117
0.260
0.461
0.673
0.840
0.938
0.982
0.996
0.002
0.011
0.041
0.117
0.260
0.463
0.673
0.840
0.938
0.982
(0.9)
(3.0)
7.6
14.3
20.1
21.2
16.7
9.8
4.3
(1.4)
= 13.40, 5 = 3..66 .
0
1
(b) ^fc(xfc) = Ф0
Ejfe n k (x k
n
О
nk*k - 202.36, a 2
И
ф
+
1
Ф
(a) a = ~
n
(п к - прк)2/прк
—
—
0.271
0.362
0.411
0.679
1.948
0.071
0.647
—
X2 - 4.389
Число степеней свободы равно 7 —2 = 5. Поскольку Хо.эо(^) = 9.24, то на
основании этого критерия нельзя отвергнуть гипотезу.
З а д а ч а 8 .1 1 .5
(,>Й=Ш
<13+44)=Ш’
1
Р2
qg
?1 = Ш (13 + 25) = Ш ,
13
X2 =
57-38'
111
Ял
44
+
=
1 (25 + 2 9 )= 54
111
1
(44 + 29) =
Ш
57-73'
111
29
+
57-73
57-38
111
111
42.43 42.43 42.43 42.43
= 6.78.
+
+ ТГ-7Г +
19.51 37.49 18.49 ' 35.51
54-38
+
111
54 • 73'
111
54-73
111
Поскольку Хо.90 — 2 .71 при / = 1, то гипотезу о независимости нужно
отвергнуть.
(Ь )
Щз - ~(пц
ть ^
+
Щ2)(пц + n2j)
= -[п Д п п
+ П 1 2 + П21 + п 2 2 ) -
(Пц + Щ2)(пi j + n 2 j)].
Tl
Легко можно показать, что выражение в квадратных скобках равно
( - 1 )г+^(пцп 22 - П12 П2 1 ) Для всех г, j.
Глава 9
Метод наименьших квадратов
Метод наименьших квадратов впервые был предложен ЛЕЖАНДРОМ и ГАУС
СОМ. В простейшем случае он имеет следующую формулировку:
Результат у3 повторяющихся измерений можно рассматривать как сум
му (неизвестной) величины х и ошибки измерений £j
Уз
=
£ + £ *•
Величина х должна быть определена таким образом, чтобы была минималь
на сумма квадратов ошибок е3:
У;)2 = m i n 3
3
В дальнейшем мы увидим, что в ряде случаев метод наименьших квадратов
в такой формулировке можно получить как следствие из метода максималь
ного правдоподобия (который на самом деле был разработан гораздо позд
нее) , хотя и в ряде других случаев он также дает результаты с оптимальными
свойствами. Метод наименьших квадратов —наиболее широко используемый
статистический метод — можно применять также в случае, когда измеряемые
величины уj не связаны напрямую с некоторой неизвестной величиной х } а
когда между ними имеется более сложная зависимость, т. е. когда измеряемая
величина является линейной (или же нелинейной) комбинацией нескольких
неизвестных величин х \. Х2 , — Ввиду большого практического значения это
го метода, перед тем как перейти к общему случаю, мы сначала на примерах
рассмотрим различные частные случаи.
9.1. Прямые измерения с одинаковой или с различной
точностью
Выше уже рассматривался простейший случай прямых измерений с одинако
вой точностью. Предположим, было выполнено п измерений некоторой не
известной величины х. Результаты измерений уj были получены с ошибками
измерений Ej. Сделаем теперь дополнительное предположение о том, что эти
ошибки нормально распределены со средним нуль и одинаковой дисперсией:
Уз = х +
E(ej) = 0,
Е ( ф = а2.
(9 .1 .1 )
2 48
Глава 9.
Метод наименьших квадратов
Во многих случаях правомерность этого предположения подтверждается цен
тральной предельной теоремой. Тогда вероятность получения значения уу в
качестве результата отдельного измерения пропорциональна величине
Таким образом функция логарифмического правдоподбия для всех п изме
рений имеет вид (см. пример 7.2)
I=
1
п
У^(У1 ~ х)2 + const.
0
.7= 1
(9.1.2)
Тогда условие максимума функции правдоподбия i — шах эквивалентно усло
вию минимума величины
п
п
М —£ ( у , —х )2 =
3=1
e2j — т ^п •
(9.1.3)
3=1
Э то в точности формулировка метода наименьших квадратов. Как было по
казано в примерах 7.2 и 7.6, применяя этот метод, можно прийти к выводу,
что оптимальной оценкой для величины х будет среднее арифметическое ве
личин уj\
= У
(9.1.4)
гг2 (у) = сг2/ п ,
(9.1.5)
Дисперсия этой оценки равна
или, если считать величины ошибок измерений равными стандартным откло
нениям, то
А х — А у/л/п.
(9.1.6)
Более общий случай прямых измерений с различной точностью также уже
рассматривался в примере 7.6. Давайте вновь предположим, что ошибки из
мерений имеют нормальное распределение со средним нуль и с разными зна
чениями дисперсий, т. е. что
Уу
х ~Т£ j .
E (ej)
=
0,
Е{е)) -
сг2 - 1/gj.
(9.1.7)
Сравнение с выражением (7.2.7) дает условие метода максимального правдо
подобия:
м = -£
1=1
(У1 - х У
а•
Х>(у,_х)2=1= 1
1= 1
=min•
(9.1.8)
9Л. Прямые измерения с одинаковой или с различной точностью 249
Теперь отдельные слагаемые имеют весовые коэффициенты, равные величи
нам, обратно пропорциональным соответствующим дисперсиям. Тогда опти
мальной оценкой для величины х будет [см. (7.2.8)] отношение
п
j=1 9зУз
(9.1.9)
х—
П
5
j~\ ^3
т. е. взвешенное среднее результатов отдельных измерений. Видно, что мень
ший вклад в окончательный результат вносят те измерения, у которых боль
ше величина ошибки измерений. На основании выражения (7.3.20) мы можем
найти дисперсию величины х, она равна
/
\ -1
/
\ -1
Е
Е
п
(9.1.10)
Т ^9 з
и
Выражение (9.1.9) можно использовать для того, чтобы получить оптимальные
оценки £j для истинных значений ошибок измерения еу, задаваемых равенства
ми (9.1.1): £j — уj — х, Эти величины асимптотически при больших п будут
нормально распределены со средним нуль и дисперсией
Другими словами,
величины £j/crj имеют при больших п стандартное гауссовское распределение.
В соответствии с результатами, полученными в разд. 6.6, сумма квадратов
=
- z):
(9.1.11)
J-l
имеет хи-квадрат распределение с п —1 степенями свободы.
Теперь это свойство величины М можно использовать при проверке спра
ведливости предположения (9.1.7) с помощью критерия хи-квадрат. Если при
заданном уровне значимости а величина М превышает значение xf „ а , то необ
ходимо пересмотреть предположение (9.1.7). Обычно на практике отсутствуют
сомнения относительно того, действительно ли значения у3 являются резуль
татами измерений данной неизвестной величины х. Однако ошибки е3 могут
не быть нормально распределенными. В частности, также могут быть смещен
ными результаты измерений, т. е. математические ожидания ошибок е3 могут
быть отличны от нуля. Предположение о наличии подобных систематических
ошибок можно сделать на основании отрицательного результата критерия хиквадрат.
Пример 9.1. Взвешенное среднее результатов измерений с различной точно
стью. Обычно наилучшие значения различных постоянных, имеющих фунда
ментальное значение, таких как важнейшие физические постоянные, находят
с помощью взвешенного среднего результатов измерений, полученных различ
ными группами ученых. Что касается свойств элементарных частиц, го харак
теризующие их подобные средние значения вычисляются через равные проме
жутки времени и накапливаются в сводные таблицы. В качестве примера рас
смотрим результаты достаточно давно проводившихся измерений массы ней
трального К-мезона (К0), позаимствованных из сводки 1967 года [10]. Среднее
250 Глава 9. Метод наименьших квадратов
Т а б л и ц а 9 .1 . Н ахож дение взвеш енного среднего на основании
результатов четы рех измерений массы нейтрального К -м езона.
Значения yj соответствую т результатам измерений в мегаэлек
тронвольтах (М эВ ).
3
Уз
<Tj
1
2
3
4
498.1
497.44
498.9
497.44
0.4
0.33
0.5
0.5
X"
= 9i
6.3
10
4
4
24.3
X = ЛУз9з/Т,9з =
497.9,
УзЯз
Уз ~ х
(Уз - х)19з
3038.0
4974.4
1995.6
1989.8
11997.8
0.2
- 0 .4 6
1.0
- 0 .4 6
0.3
2.1
4,0
0.8
7.2
Ах = ( Е л - ) ' * = 0.20
было вычислено на основании результатов четырех экспериментов, при этом
все они были выполнены с использованием разных методик. Вычислить срелнее можно на основании данных таблицы 9.1. В результате получим, что М рав
но 7.2. Если положить уровень значимости равным 5 %, то по данным таблипк
1.7 найдем, что Хо.95 “ 7-82 при трех степенях свободы. Следовательно, выпол
нив усреднение данных, можно было предположить, что до проведения следу™
ющих экспериментов полученный результат ип-^о = (497.9 ±0.2) МэВ являете»
наилучшей оценкой массы К-мезона. Только через 20 с лишним лет взвешенное
среднее результатов всех измерений стало равным т к ° — (497.671 ±0.030) МэВ
[и]).
Давайте теперь рассмотрим случай, когда критерий хи-квадрат показы
вает несостоятельность сделанных предположений, т. е. дает отрицательны!
результат. Как упоминалось выше, обычно предполагают, что по меньшей ме
ре одно из измерений осуществляется при наличии систематических ошибок.
Анализируя результаты отдельных измерений, иногда можно столкнуться с
тем, что результаты одного или двух измерений значительно отличаются сп
всех остальных. Подобная ситуация показана на рис. 9.1а, на котором предста
влены результаты нескольких различных измерений и приведены их ошибки.
(Результаты измерений откладываются по вертикальной оси; а номера изме
рений —по горизонтальной.) При использовании результатов всех измерений,
приведенных на рис. 9.1а, критерий хи-квадрат показывает несостоятельность
сделанных предположений, а если исключить из рассмотрения измерения с но
мерами 4 и 6, то этот критерий будет давать уже положительный результат.
К сожалению, проблема не всегда бывает столь очевидной. На рис.9.lb при
веден еще один пример, соответствующий отрицательному результату крите
рия хи-квадрат. (В соответствии с главой 8 нужно было бы отклонить гипотезу
о том, что результаты соответствуют измерениям одной и той же величины.)
Тем не менее нет ни одного отдельно взятого измерения, которое бы являлось
причиной такого результата. Поэтому в данном случае с математической точ
ки зрения было бы неправильно вычислять среднее значение по результатам
всех измерений и делать какие-либо выводы относительно истинного значения
Прямые измерения с одинаковой или с различной точностью
9.1.
У)
У;
(а)
А
251
(Ь)
А
{
С1)
(2)
I
( 1)
( 2)
И
0 123Д5678910
О
0 123Л5678910
>
j
Р и с , 9 .1 . У среднение результатов 10 измерений в случае, когда критерий хи-квадрат
показывает несостоятельность предполож ений, (а) Н екорректны е результаты —- зн а
чительное отклонение результатов отдельны х измерений: (1) усреднение по результа
там всех измерений; (2) усреднение по всем результатам за исклю чением изм ерений
У а и уб- (Ь) Ошибки результатов отдельны х измерений, очевидно, слишком малы:
(1) ошибка дл я среднего, вычисленная по ф орм уле (9.1.10); (2) ошибка для среднего,
полученная согласно соотнош ению (9.1.13).
оцениваемого параметра, до тех пор пока не будут произведены дальнейшие
измерения. На практике такой подход, очевидно, является неприемлемым, РоЗЕНФЕЛЬД и др. [10] предположили, что ошибки отдельных измерений нужно
увеличить с помощью масштабного множителя yjM /{n —1), т. е. заменить
o-j величинами
(9.1.12)
Значение взвешенного среднего х, полученное на основании таких ошибок из
мерений, не отличается от значения выражения (9.1.9). Тем не менее величина
дисперсии отлична от значения выражения (9.1.10) и равна
(9.1.13)
Вычислим теперь величину, аналогичную сумме (9.1.11):
(9.1.14)
252 Глава 9. Метод наименьших квадратов
\
Это математическое ожидание величины хи-квадрат с п — 1 степенями свобо
ды. Уравнение (9.1.14) в некоторой степени объясняет выбор коэффициента
в соотношении (9.1.12). Повторим еще раз, что данное соотношение не име
ет под собой строгого математического обоснования. Его нужно использовать
осторожно, поскольку оно не дает возможности увидеть влияние систематиче
ских ошибок. С другой стороны, это соотношение дает допустимые значения
ошибок для среднего в случаях, подобных представленному на рис. 9.lb, ко
гда применение напрямую соотношения (9.1.10) приводит к ошибкам, которые
слишком малы для того, чтобы отразить действительный разброс результатов
отдельных измерений вокруг среднего. Оба результата для значения ошибки
среднего приведены на рис. 9.lb.
9.2. Косвенные измерения. Линейный случай
Давайте теперь рассмотрим более общий случай нескольких неизвестных вели
чин х г (г = 1, 2, . . . , г). Зачастую эти неизвестные величины невозможно изме
рить напрямую —измеримым является лишь набор линейных функций от ж*:
(9.2.1)
Vj = PjO + P j l X i + Pj 2X2 + ■• • + Pj r Xr .
Запишем теперь это соотношение в несколько другом виде
fj — 7}j 4" ajO + CLjlXi + Q>j2%2 + *■■4* CLjrXr = 0.
(9.2.2)
Определим вектор-столбец
/ dji \
aj2
(9.2.3;
a,j —
\ aJr
и перепишем уравнение (9.2.2) в более компактной форме:
fj = T}j + a,jo + a j x = 0,
j = 1,2, . . . , n.
(9.2.4
/ =
\ fn )
р
h \
/2
. *? =
;
m \
m
о
Если кроме этого определить векторы / , г), а и матрицу А как
G20
G 12
*** GL\r ^
G21
G22
*** &2Г
\ Gni
dn2
'** djir /
, А =
, а0 =
\ Vn )
( Gil
\ О"п0 )
(9.2.£
то систему уравнений (9.2.4) можно записать в виде матричного уравнения
/ = г/ + о 0 + А х = 0.
(9.2.(
9,2. Косвенные измерения. Линейный случай
253
Безусловно, измеряемые величины все еще имеют ошибки измерений e3J кото
рые, как мы предполагаем, подчиняются нормальному распределению. Тогда1
Уз = Уз + £з> е (£з ) =
Е ( ф = a2j = ^!Уз'
(9.2.7)
Поскольку величины yj являются результатами независимых измерений,
го дисперсии <т| можно представить с помощью диагональной ковариационной
матрицы для yj или для е3:
0 \
/ -т?
(9.2.8)
С£ =
9
0
/
По аналогии с выражением (9.1.7) назовем матрицу, обратную к ковариацион
ной. матрицей весовых коэффициентов
О \
(^
92
Gy = Ge = с ; 1 = С ~ 1 =
(9.2.9)
9п )
О
Если теперь представить результаты измерений и их ошибки в виде векторов,
го из соотношений (9.2.7) получим, что
(9.2.10)
У =
Тогда из равенства (9.2.6) получаем векторное уравнение
у - е + а 0 + А х — 0.
(9.2.11)
Давайте разрешим эту систему уравнений относительно неизвестного векто
ра х при помощи метода максимального правдоподобия. Согласно нашему
предположению (9.2.7), результаты измерений у 3 нормально распределены с
плотностью
П уз) =
Gjy/Ъх
ехр
(Уз ~ Уз)2 \ _
1
(7j\f2lT
ехр
(9.2.12)
Таким образом по результатам всех измерений можно построить функции
правдоподобия
L=ПЙУз) =
(27Г) in(П
ехр
1
2
)
(9.2.13)
3= 1
U =1
АДля простоты обозначений в дальнейшем случайные величины не будут записываться
специальным шрифтом. Из контекста всегда будет понятно, какая величина является слу
чайной.
254 Глава 9. Метод наименьших квадратов
(9.2.14)
I — InL = —| п Ь27 г 4- In
Это выражение достигает максимума, когда
d
А (г/j + a j x + a,jо)2
—m m .
(9.2.15;
j-1
,■=1
Используя соотношения (9.2.9) и (9.2.11), можно переписать это выражение
в виде
М = £TGv£ = min
(9.2.16
М = (у 4- а 0 4- А х у С у{у + а 0 + Ах) = min,
(9.2.17)
или
или в сокращенном виде:
С = у 4- а 0)
(9.2.IS;
М = (с 4- Aa?)TGy(c 4- Аж) = min.
(9.2.19)
Упростим это выражение при помощи разложения Холецкого (см. разд. А. 10}
для положительно-определенной симметричной матрицы весовых коэффици
ентов Gy, которую можно представить в виде произведения
Gy = Н ТН.
(9.2.20)
Для часто встречающегося случая некоррелируемых измерений (9.2.9) полу
чаем:
( 1 /сг,
0 \
1/сг2
Н = НТ =
(9.2.21)
\
о
1/<т„
С использованием обозначений
с' = Нс,
А! = Н А
(9.2.22)
выражение (9.2.19) принимает простой вид
М = (А 'х + с')2 = min.
(9.2.23)
Метод решения этого уравнения относительно х подробно описан в при
ложении А, а именно в разделах с А.6 по А.15. Полученное решение можно
записать в виде
х = - А!+с
(9.2.24)
9.2. Косвенные измерения. Линейный случай 255
[см. (А.11.3).] Здесь А + является псевдо-обратной матрицей к матрице А (см.
разд. А.11). При помощи программы А.36 из разд. А.15 решение в виде (9.2.24)
действительно было найдено на основании сингулярного разложения матрицы
А'. Этот метод дает численные результаты с высокой точностью.
Для вычислений вручную вместо соотношения (9.2.24) можно использовать
математически эквивалентное выражение для решения нормальных уравнений
[см. (А.6.17)]:
X = - ( А ^ А 'У 'А ^ с '
(9.2.25)
или, учитывая обозначения (9.2.22), в терминах величин с и А
х = - ( Л т Gy А )-1Ат Gy с.
(9.2.26)
Это решение включает в себя частный случай, рассмотренный в разд. 9.1. В
случае прямых измерений с различными точностями вектор х имеет всего
лишь один элемент, ао обнуляется, а матрица А является просто векторомстолбцом размерности п, все компоненты которого равны —1. Тогда имеем
с' =
2 /iM
2/2 М
-1/(Т 1 \
\
А =
2/п/СТп /
п 1
-1 /^ 2
^ -Е
i.
1 -1 "3
~У °п /
и решение (9.2.25) принимает вид
X—
Уз
что совпадает с формулой (9.1.9).
Решение вида (9.2.26) указывает на линейную зависимость между найден
ным вектором х и вектором результатов измерений у , поскольку с — у aQ.
Поэтому можно применять формулу преобразования ковариационных матриц
и дисперсий из разд. 3.8. Используя соотношения (3.8.2) и (3.8.4), сразу по
лучаем, что
с , = G * 1 = [(A^GyA)-'A*Gy]G-l [{ATG y A r l ATG y f .
Матрицы Gy, G y1 и (ATGyA) являются симметричными, т. е. они совпада
ют со своими транспонированными матрицами. Согласно правилу (А.1.8), это
выражение можно упростить
G- 1 = { A^GyA^A^Gy G^Gy Ai A^GyA ) - 1
= (ATGyA)- 1(ATGyA)(ATGyA)-1,
G~ 1 = {A^GyA)-1 = {An A ' ) - \
(9.2.27)
256 Глава 9. Метод наименьших квадратов
Таким обазом мы получили достаточно простое выражение для ковариацион
ной матрицы оценок х неизвестных величин х. Корень квадратный из диаго
нальных элементов этой матрицы можно рассматривать как «ошибки измере
ний», хотя прямого измерения величин х не проводилось.
Полученный результат (9.2.26) можно также использовать для уточнения
исходных результатов измерений у. Подставляя соотношение (9.2.26) в выра
жение (9.2.11), получаем вектор оценок ошибок измерений е
е = А х + с = - A ( A r GyA ) - 1 A TGyc + с.
(9.2.28)
Эти ошибки измерений можно использовать для вычисления уточненных зна
чений результатов измерений
fj - у - е = у + A {A £GyA) l ATGyc ~ c ,
fj —A(ATGyA)~ 1 ATGyc ~ а 0.
(9.2.29)
Вектор fj вновь линейно зависит от у. Поэтому мы опять можем использовать
формулу преобразования ковариационных матриц и дисперсий для вычисле
ния ковариационной матрицы уточненных значений результатов измерений
G - 1 = [.A{Ar GvA ) - 1 ATGy\G - 1 {A(ArrGvA ) - 1 A r Gvf ,
G~l = A(Ar GyA y 1 Ar = A G ~ l Ar .
(9.2.30)
Уточненные значения результатов измерений fj удовлетворяют уравнению
(9.2.1), если неизвестные величины заменить на их оценки х.
9.3. Подбор прямой
Подробно рассмотрим простую, однако часто встречающуюся на практике за
дачу подбора прямой по результатам измерений yj при различных значениях
t j — так называемой контролируемой переменной t. Предполагается, что зна
чения этой переменной точно известны, т. е. не содержат ошибок. Значение
переменной t% может быть, например, моментом времени, в который сделано
измерение у^ температурой или напряжением, т. е. величиной, которая уста
навливается согласно условиям эксперимента. (Если t также содержит ошибку,
то задача подбора прямой на плоскости (£, у) становится нелинейной задачей.
Она будет рассмотрена в разд. 9.10, пример 9.11.)
В данном случае соотношение (9.2.1) имеет простой вид
Vj ~ Уз ~
—x i
х2tj
или, используя векторные обозначения, rj —х\ —
= 0. Попытаемся опреде
лить неизвестные параметры х — (**) на основании результатов измерений,
приведенных в табл. 9.2.
9,3, Подбор прямой 257
Т а б л и ц а 9 .2 . Д анны е дл я подбора прямой.
3
ь
Уз
1
0.0
2
1.0
2.0
1.4
0.5
1.5
3.7
0.2
1.0
4
3.0
4.1
0.5
3
Сравнивая нашу постановку задачи с соотношениями (9.2.2) —(9.2.6), по
лучаем, что ао = О,
( i
1
А =1
\ 1
( 1
1
1
1
h \
t2
t3
u )
0 \
1
,
2
з )
( 1.4 \
1.5
у - с=
3.7
4.1 У
Матрицы Gy и Н можно найти путем подстановки значений из последней стро
ки таблицы 9.2 в соотношения (9.2.9) и (9.2.21):
4
2
\
25
1
,
Н =
\
5
1
4У
2 у
Таким образом имеем
/2
(А ^А Т 1 =
0 \
5 5
1 2
2 6 )
f
,
34 39 V
39 65 )
С
=
28 \
7.5
3.7
8.2 У
65
689 V -3 9
1
(
-
0.0943
-0.0566
-0.0556
0.0493
Для обращения матрицы размера 2 x 2 воспользуемся соотношением (А.7.8).
Тогда решение уравнения (9.2.25) будет иметь вид
0.0943
-0.0566
0.636\
1.066/'
-0.0566 \ /63.2
0.0493 ) V94.1
Ковариационная матрица для вектора х будет равна
Cs = G~l = ( А '^ А 'Г 1
0.0943
0.0566
-0.0566
0.0494
Ее диагональные элементы являются дисперсиями величин
и а?2 , а их ква
дратные корни —соответствующими ошибками А х\ = 0.307. Лхо = 0.222. Ко
эффициент корреляции между х\ и х 2 равен
-0.0566
-0.830.
0.307 • 0.222
2 58
Глава 9.
Метод наименьших квадратов
Уточненные результаты измерений составляют
( 1
1
г] = —А х =
1
1
/ 0.636 \
о \
/0.636\ _
1
1.702
2
2.768
Vi.066/ “
3.834 /
з )
Они лежат на прямой, задаваемой уравнением fj = —Ах, которое в общем виде
безусловно отличается от «истинного» решения. «Остаточную ошибку» для fj
можно вычислить на основании формулы (9.2.30):
/ 1 0 \
1 1 1
0.0943 -0.0566
1 1
-0.0566
0.0493
0 1 2
1 2
\ 1 3 /
0.0943 0.0377 -0.0189 -0.0755
0.0232
0.0160
0.0377 0.0305
0.0653
0.1074
-0.0189 0.0232
0.1074
0.1988 )
-0.0755 0.0160
Корни квадратные из диагональных элементов равны
Ащ = 0.31,
Ащ = 0.17,
А цз = 0.26,
Ащ = 0.45.
Этот метод подбора, в котором использовалось большее количество измерений
(четыре), нежели было необходимо для определения двух неизвестных, зна
чительно уменьшил значения отдельных ошибок измерений по сравнению с
исходными значениями aj.
В заключение вычислим значение минимума функции (9.2.16):
М = £TGy£ = (у - fj)T Gy(y - f j ) =
= 4-507'
На основании полученного результата при помощи критерия согласия хиквадрат можно осуществить проверку степени согласия найденной прямой с
исходными данными. Поскольку мы отталкивались от п = 4 результатов из
мерений и затем определили г = 2 неизвестных параметра, то в нашем рас
поряжении все еще остается п —г = 2 степеней свободы (см. разд. 9.7). Если
положить уровень значимости равным 5%, то из табл. 1.7 можно найти, что
Хо.95 — 3-99 при двух степенях свободы. Таким образом нет оснований для
отклонения гипотезы относительно правильности подбора прямой.
Результаты подбора приведены на рис. 9.2. Результаты измерений у3 пред
ставлены в виде функции от переменной t. Вертикальные отрезки соответ
ствуют ошибкам измерений. Они охватывают интервалы в пределах у3 ± (т3.
Эмпирическая кривая соответствует полученным результатам х\, жг. На этой
прямой лежат уточненные результаты измерений. Они приведены на рис. 9.2Ъ
вместе с остаточными ошибками Ащ . Для того чтобы продемонстрировать
9.4. Программы для аппроксимации линейными функциями 259
Рис. 9.2. Подбор прямой по данным из табл. 9.2. (а) Исходные результаты измере
ний и их ошибки; (Ь) уточненные результаты измерений и остаточные ошибки: (с)
эллипс равных вероятностей для подобранных величин х \ , Х2\ (d) различные прямые,
соответствующие отдельным точкам эллипса равных вероятностей.
точность оценок ац,
рассмотрим ковариационную матрицу
Она зада
ет эллипс равных вероятностей (см. разд. 5-10) на плоскости, натянутой на
оси, соответствующие переменным
х2- Этот эллипс изображен на рис. 9.2с.
Точки, лежащие на границе эллипса, соответствуют подобранным значениям,
отвечающим равной вероятности. Каждая из этих точек задает прямую на
плоскости (£,у). Некоторые из этих точек выделены на рис. 9.2с, а соответ
ствующие им прямые приведены на рис. 9.2d. Таким образом точки, лежащие
на эллипсе равных вероятностей, соответствуют пучку прямых. Прямая, отве
чающая «истинным» значениям неизвестных параметров, лежит в этом пучке
с вероятностью 1 —е-1 ^2; (см. (5.10.18)).
9.4. Программы для аппроксимации неизвестных
величин линейными функциями
Отправной точкой для рассуждений из разд. 9.2 послужило предположение
(9.2.6) о линейной зависимости между «истинными» значениями г] измеряемых
величин у и неизвестными х. Запишем эту зависимость в виде
г] = h(x) = —а 0 - А х ,
(9.4.1)
или в покомпонентной записи:
уj
—
—
a 0j
A j^ x i
Aj^oc^
*** A^Xr'
(9.4.2)
260
Глава. 9. Метод наименьших квадратов
Зачастую удобно рассматривать индекс у в качестве указателя на то, что ре
зультат измерения yj соответствует значению tj контролируемой переменной,
которая предполагается известной без ошибок. Тогда соотношение (9.4.2) мож
но записать в виде
rjj ~ h(x. tj).
(9.4.3)
Это уравнение задает кривую на плоскости (£, ц), зависящую от параметров х.
Таким образом определение параметров эквивалентно построению кривой по
результатам измерений yj = y(£j). Обычно отдельные измерения %jj являют
ся некоррелированными. Матрица весовых коэффициентов Gy является диа
гональной; к ней применимо разложение Холецкого (9.2.20). Тогда получаем
просто, что A jfk = Aj k/(jj. o'- — c/cTj [см. (9.2.22)].
9.4.1. Аппроксимация полиномами
В качестве достаточно простого, однако полезного примера функции (9.4.3)
рассмотрим зависимость вида
T];j - hj —х\ + x 2tj + xetj + • ■■+ x rtJj~l .
(9.4.4)
Эта функция является полиномом по переменной t j , однако остается линейной
относительно неизвестных ж. Частный случай г —2 подробно рассматривался
в разд. 9.3.
Сравнение соотсшений (9.4.4) и (9.4.2) приводит к выводу о том, что ао3 — 0,
Ajt — —tlj ~x или более подробно:
а0 =
0 ^
0
s
;
0 )
А = -
1
1
;
h
t\
...
t\~ l \
t2
t2
...
tT
2 1
1
tn
ti
...
ГгД
/
Программа 9.1. Подпрограмма LSQPQL для аппроксимации результатов изме
рений полиномом
К оманда ВЫЗОВА: CALL LSQPOL(T,Y,DELTAY,N,NR,X,CX,R,
A,SCRAT,0K)
Входные
параметры: Т —n-мерный вектор значений контролируемой
переменной tj
Y—n-мерный вектор с. соответствующими результатами измерений yj
DELTAY—n-мерный вектор ошибок измерений оу
N—количество результатов измерений п
NR—количество г неизвестных (г ~ 1 для полинома нулевого порядка,
г — 2 для полинома первого порядка, ...)
А—рабочий массив, минимальный размер которого п х г
SCRAT —рабочий массив, минимальный размер которого г х г
9.4. Программы для аппроксимации линейными функциями
261
Выходные параметры: X—r-мерный вектор неизвестных
СХ—ковариационная матрица для неизвестных размера г х г
R—значение минимума функции М
ОК—логическая переменная (она принимает значение .TRUE, (истина) в
случае сходимости и .FALSE, (ложь), если метод не сходится)
С
С
С
С
С
SUBROUTINE LSQP0L(Т, Y, DELTAY, N, NR, X, СХ, R, А, SCRAT, ОК)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
PARAMETER(NMAX=1000)
DIMENSION A(N,NR),T(N),Y(N), DELTAY(N),X(NR),CX(NR,NR)
DIMENSION SCRAT(NR,NR),C(NMAX)
COMMON /DASV04/ C
LOGICAL OK
PARAMETER(0NE=1. DO)
Заполнение значениями матрицы A3
DO 20 1=1,N
DO 10 K=1,NR
IF(K.EQ.l) THEN
A(I,K)=-ONE/DELTAY(I)
ELSE
A (I,K )= -(T (I)**(K -l)) /DELTAY(I)
END IF
10
CONTINUE
20 CONTINUE
Заполнение значениями вектора С’
DO 30 1=1,N
С( I ) =-Y( I ) /DELTAY( I )
30 CONTINUE
Заполнение значениями матрицы GX
CALL MTXMAT(A, A, CX, NR,N,NR)
Вычисление вектора неизвестных X
CALL MTXSVD(A,C,X,R,N,NR,1,DBLE(0. ) , OK)
IF(OK) THEN
Вычисление ковариационной матрицы СХ путем обращения матрицы GX
CALL МТХСНКСХ,SCRAT,NR)
END IF
END
Пример 9.2. Аппроксимация различными полиномами. Зачастую бывает по
лезно до тех пор осуществлять аппроксимацию полиномами различных по
рядков по результатам измерений, пока число степеней свободы все еще будет
превышать единицу, т. е. пока п > £ + 1. В качестве численного примера приве
дем результаты измерений, полученных в ходе эксперимента в области физики
элементарных частиц. Рассмотрим исследования упругого расссеивания отри
цательно заряженных К-мезонов на протонах при фиксированном значении
262
Глава 9. Метод наименьших квадратов
энергии К-мезона. В системе отсчета, связанной с центром масс соударяемых
частиц, распределение косинуса угла рассеяния 0 является характеристикой
углового момента возможных промежуточных состояний процесса соударений.
В частности, если рассматривать это распределение как полином относитель
но cos 0 , то порядок данного полинома можно использовать для определения
спина квантовых чисел таких промежуточных состояний.
Результаты измерений yj(j = 1,2, ...Д О ) представляют собой количества
соударений, при которых наблюдаемое значение cos0 попадало в малый ин
тервал около значения tj = cosOj. В качестве ошибок измерений выступали
статистические ошибки, т. е. корни квадратные из числа наблюдений. Полу
ченные данные приведены в табл. 9.3. Результаты аппроксимации полиномами
различных порядков обобщены в табл. 9.4 и представлены на рис. 9.3. При
помощи критерия хи-квадрат можно последовательно проверить, согласуется
ли найденный путем аппроксимации полином нулевого, первого, ... порядка с
исходными данными.
Т аблица 9.3. Данные для примера 9.2.
Здесь (jj = y/Vj.
3
tj = cos Oj
Уз
1
2
3
4
5
6
7
8
9
10
-0.9
-0.7
-0.5
-0.3
-0.1
0.1
0.3
0.5
0.7
0.9
81
50
35
27
26
60
106
189
318
520
Т аблица 9.4. Таблица результатов для примера 9.2 (п = 10—ко
личество результатов измерений, г —число параметров, / —п —г —число степеней свободы).
г
1
2
3
4
5
6
Xi
57.85
82.66
47.27
37.94
39.62
39.88
Х2
99.10
185.96
126.55
119.10
121.39
Хз
273.61
312.02
276.49
273.19
Х4
137.59
151.91
136.58
х ъ
52.60
56.90
х 6
16.72
/
9
8
7
6
5
4
М
833.55
585.45
36.41
2.85
1.68
1.66
Мы видим, что первые две гипотезы (константа и прямая линия) не согла
суются с эмпирическими данными. Это видно из рис. 9.3, а также отражается
в значениях минимума функции. Гипотеза г = 3 о полиноме второго порядка
9.4. Программы для аппроксимации линейными функциями
263
Рис. 9.3. Аппроксимация полиномами различных порядков (0 ,1 .... ,5) данных из
примера 9.2.
согласуется с данными на качественном уровне. Однако при этом большинство
результатов измерений не попадает на подобранную параболу, даже соответ
ствующие отрезки ошибок не пересекают ее. Критерий хи-квадрат отверга
ет данную гипотезу на уровне значимости 0.0001. Несмотря на это, гипотезы
г —4, 5 и 6 обладают высокой степенью согласия. Соответствующие подобран
ные кривые проходят через все отрезки ошибок и практически совпадают ме
жду собой. При этом критерий хи-квадрат не свидетельствует о необходимости
отклонения этих гипотез даже на уровне значимости a — 0.5. Следовательно,
можно сделать вывод о том, что для описания поведения данных достаточно
полинома третьего порядка. Для получения ответа на вопрос о том, какого
порядка полиномы должны использоваться для описания поведения данных,
можно осуществить более углубленное исследование, воспользовавшись поня
тием ортогональных многочленов (см. разд. 12.1).
■
264
Глава 9. Метод наименьших квадратов
9.4.2. Аппроксимация произвольной линейной функцией
В выражение для решения задачи из разд. 9.2 входят матрица А и вектор
с. Они зависят от вида подбираемой функции и, следовательно, должны быть
вычислены пользователем. (В разд. 9.4.1 эта функция была известна, а поэтому
пользователю не приходилось самому вычислять А и с.)
Программа 9.2. Подпрограмма LSQLIN для аппроксимации неизвестных изме
ряемых величин некоторой линейной функцией
К оманда
вызова: call lsqlin (t , c , deltay, n , nr, x, cx, r ,
A,SCRAT,OK)
Входные
параметры: Т —n -мерный вектор значений контролируемой
переменной tj
С — ?г-мерный вектор с = у + ао
DELTAY-—n -мерный вектор ошибок измерений оу
N - количество измерений п
NR — количество неизвестных г
А— матрица А размера п х г
, SCRAT — рабочий массив, минимальный размер которого г х г
Выходные
параметры: X —?'-мерный ветор неизвестных
СХ —ковариационная матрица для неизвестных размера г х г
R —значение минимума функции М
ОК —логическая переменная (она принимает значение .TRUE, (истина) в
случае сходимости, .FALSE, (ложь), если метод не сходится)
С
С
С
С
SUBROUTINE LSQLIN(Т , С, DELTAY, N, NR, X, СХ, R, А, SCRAT, ОК)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION A (N ,N R ),T(N ),C (N ), DELTAY(N),X(NR),CX(NR,NR)
DIMENSION SCRAT(NR,NR)
LOGICAL OK
вычисление матрицы A? по матрице A
DO 20 1=1,N
DO 10 K=1,NR
A(I.K)=A(I,K)/DELTAY(I)
10
CONTINUE
20 CONTINUE
Заполнение значениями вектора C?
DO 30 1=1,N
C(I)=C(I)/DELTAY(I)
30 CONTINUE
Заполнение значениями матрицы GX
CALL MTXMAT(A, A, CX, NR,N ,NR)
Вычисление вектора неизвестных X
CALL MTXSVD(A, C,X,R,N,NR,1,DBLE( 0 . ) , OK)
IF(OK) THEN
9.4. Программы для аппроксимации линейными функциями
265
С Вычисление ковариационной матрицы СХ путем обращения матрицы GX
CALL MTXCHI(СХ, SCRAT, NR)
END IF
END
Пример 9.3. Аппроксилтция пропорциональной зависимостью. Допустим,
что из условий эксперимента известно, что истинное значение г)0 результата
измерений yj прямо пропорционально значению контролируемой переменной
t j : rjj = x\tj. Коэффициент пропорциональности х\ необходимо определить
на основании измерений. Такая зависимость проще, нежели полином первого
порядка., который содержит две константы. Сравнение с соотношением (9.4.2)
приводит к выводу о том, что aoj —0. Ад — — t j и поэтому
На рис. 9.4 представлены результаты аппроксимации данных прямой, про
ходящей через начало координат, т. е. пропорциональной зависимостью, и ап-
266
Глава 9. Метод наименьших квадратов
проксимация полиномом первого порядка. Очевидно, что значение минимума
функции меньше в случае прямой более общего вида, а качество аппроксима
ции заметно выше. Однако при этом число степеней свободы будет меньше, а
искомый коэффициент пропорциональности не определен.
■
9.5. Косвенные измерения. Нелинейный случай
Если зависимость между п-мерным вектором г] истинных значений измеряе
мых величин у и г-мерным вектором неизвестных задается некоторой функ
цией у = h(x), которая не является —как в соотношении (9.4.1) —линейной по
х, то предыдущий метод не дает возможности определить неизвестные.
В этом случае вместо соотношения (9.2.2) имеем уравнение
fj{x,rj) = J]j - hj{x) = О,
(9.5.1)
или в векторных обозначениях
(9.5.2)
/(*!»?) =0-
Тем не менее если разложить функцию fj в ряд Тейлора и взять от него
только первое слагаемое, то можно свести эту задачу к линейной. Выполним
разложение в окрестности точки xq — (:cio«£2(h ■*• , £го)> являющейся началь
ным приближением для неизвестных и полученной произвольным способом;
/л®.»?) = /Л®0,»7) +
'dfi
дх\
Ы - 1ю) + • ■• + ( | ^ - )
(хг - х г0). (9.5.3)
азо
Если теперь определить
£ = Ж- х 0 =
( x x - Xio \
X2 - x20
X rQ J
\ Xr
' dfl
aj£ — дхр
Xq
dhj
дх,
(9.5.4)
( 0-11
Й12
' ••
air \
a 21
0,22
'
02r
A =
'
■
(9.5.5)
Ж0
\ OnX
Cj = f j { xQ, y) = Vj - hj ( xo) ,
On2 *' ■ Onr J
c=
( Cl \
C2
(9.5.6)
\ °n /
и использовать соотношение (9.2.10), то получим, что
fj(xo,rj) = f j { x0, y - е) = f j ( x0,y) - е.
(9.5.7)
9.6. Программы д ля аппроксимации нелинейными функциями
267
Таким образом систему уравнений (9.5.2) теперь можно записать в виде
/ = А£ 4- с —£ = 0,
£ ~ А£ -f с.
(9.5.8)
Тогда условие (9.2.16) метода наименьших квадратов имеет вид
М = (с + А£)тGy (с + А, £) = min,
(9.5.9)
что полностью совпадает с условием (9.2.19). Используя обозначения, введен
ные в формулах (9.2.20) — (9.2.22), можно найти решение напрямую из выра
жения (9.2.24)
€ = -А ,+ с'.
(9.5.10)
В соответствии с соотношением (9.5.4) для нахождения лучшего прибли
жения можно использовать вектор £:
Xi = х 0 4- £
(9.5.11)
и вычислить новые значения А и с в точке Х\. Решение £ (9.5.10) для условия
(9.5.9) при этих значениях дает величину х^ ~ х\ 4- £ и др. Данный итера
ционный процесс можно завершить тогда, когда значение минимума функции,
полученное на последнем шаге, не сильно отличается (меньше его несуществен
но) от результата, полученного на предыдущем шаге.
Тем не менее в общем случае нельзя обеспечить сходимость такого итера
ционного процесса. С эвристической точки зрения очевидно, что сходимость
более вероятна в том случае, когда ряд Тейлора, усеченный после первого сла
гаемого, будет являться достаточно хорошим приближением в той окрестности,
в которой во время итерационного процесса изменяется ж. (По меньшей мере
в области значений между х$ и решением х . Результаты промежуточных ша
гов могут лежать и вне этой области.) Поэтому важно (особенно в сложных
нелинейный задачах) в качестве начальной итерации использовать достаточно
точное приближение.
_
Если решение х — х п = х п- \ + £ получено за п итераций, то его можно
выразить в виде линейной функции от £. Используя формулу преобразования
ковариационных матриц и дисперсий, можно установить, что тогда ковариа
ционные матрицы для х и £ совпадают и что
С* = G - 1 = (ATGyA ) - 1 = U 'TA T 1■
(9.5.12)
Тем не менее эта ковариационная матрица не имеет смысла, если линейная ап
проксимация (9.5.3) не является достаточно хорошим приближением в окрест
ности х %± A x i, г = 1 ,..., г. (Здесь Ах{ — л/С^-)
9.6. Программы для аппроксимации нелинейными
функциями
Иногда бывает полезно зафиксировать один или несколько параметров сре
ди г неизвестных, т. е. рассматривать их в качестве констант, а не в качестве
268
Глава 9. Метод наименьших квадратов
параметров, подлежащих определению. Очевидно, что это можно сделать пу
тем соответствующей модификации определения / в соотношении (9.5.1). Тем
не менее для пользователя было бы удобнее написать подпрограмму, которая
вычисляла бы функцию / для г исходных параметров, а затем в соответству
ющем месте в программе указать, что количество определяемых параметров
снижено с г до г'. Безусловно, нужно также создать список из г элементов ^ ,
при помощи которого пользователь будет указывать, какие из параметров Xi
нужно зафиксировать
—0), а какие необходимо оставить для определения
(U
=
1 ).
При реализации в качестве программы метода, представленного в преды
дущем разделе, возникают еще две проблемы.
С одной стороны, элементы матрицы А нужно находить путем построения
функции, которую нужно аппроксимировать, и последующего дифференциро
вания ее по параметрам. Безусловно, для пользователя было бы легче, если бы
ему не нужно было самому писать программу для взятия этих производных,
а точнее, если бы можно было выполнить эту задачу при помощи подпрограм
мы, выполняющей численное дифференцирование. В разд. Е.1 приведена та
кая подпрограмма, и она будет вызываться представленной ниже программой.
Однако процедура численного дифференцирования влечет за собой снижение
точности и увеличение времени вычислений. Кроме того, метод может не сой
тись. Если это происходит, то в данной программе об этом сообщает параметр
на выходе. Поэтому в некоторых случаях пользователю придется самому пи
сать программу для взятия производных.
Вторая трудность связана с тем, что в отличие от соотношений (9.2.17) и
(9.2.23) минимизируемая функция
м = (у -
h(x))TGv{y - h(x))
(9.6.1)
уже не является простой квадратичной формой относительно неизвестных. Од
но из последствий этого заключается в том, что значения х уминимизирующего
эту функцию, невозможно достичь за одну итерацию. Кроме того, сходимость
нашего итерационного процесса будет сильно зависеть от того, действительно
ли начальное приближение х$ лежит в окрестности, в которой минимизируе
мая функция достаточно близка к квадратичному виду. Определение хороше
го начального приближения должно осуществляться на основании конкретной
задачи. Ниже будут приведены некоторые примеры такого определения. Если
в соответствии с указаниями из предыдущего раздела попытаться построить
итерационный процесс, то может случиться, что минимизируемая функция не
будет убывать при переходе к каждой следующей итерации. Для того чтобы,
несмотря на это, была обеспечена сходимость метода, можно применить один
из двух методов, описанных в разделах 9.6.1 и 9.6.2. Первый из них (уменьше
ние длины итерационного шага) проще и быстрее работает, хотя второй (ме
тод Маркардта) имеет большую область сходимости. Далее будут приведены
программы для этих двух методов, однако в сомнительных случаях мы реко
мендуем пользоваться методом Маркардта.
9.6. Программы для аппроксимации нелинейными ф у н к ц и я м и
269
9.6.1. Итерация с уменьшением длины шага
Как уже упоминалось, неравенство
М ( х г) ^ М
( х -*- £) < М ( х г^ )
(9.6.2)
имеет место не для всех итераций г. соответствующих результатам
Следу
ющий метод поможет нам обойти такие итерационные шаги. Давайте рассмо
трим выражение M ( x i ~ i 4- s£) как функцию от переменной а\ где 0 < s < 1.
Если в соотношении (9.5.9) заменить £ на з£, то получим, что
М = (с + sA£)TGy(c + sAt) = (с' + sA'()2.
Дифференцирование этой функции по $ дает
М ’ = 2 {с + s A ’t f A ' i
или, если d — —Д/£ (см. (9.5Д0)),
M f = 2 { s - X ) £ £A a A f£
и, следовательно, M' ( s — 0) < 0. если матрица A tT А* ~ A r GyA является по
ложительно определенной. (Эго всегда выполнено в окрестности минимума.)
Матрица A fTА ‘ выражает собой кривизну функции М в пространстве, натяну
том на оси, соответствующие неизвестным x i , ... . х г . Только для одной из этих
неизвестных область положительной кривизны совпадает с областью между
точками перегиба в окрестности минимума (см. рис. 10 1). Поскольку ф унк
ция М непрерывна по д то существует такая величина \ л 0, что M'{s) < О,
0 < .$ < Л.
После (г 4- 1)-го итерационного шага, для которого неравенство (9.6.2) не
выполнено, £ нужно умножить на некоторое число s, например на с — 1/2, и
проверить, действительно ли M (x^_i 4з£ ) < М (хг_ ] ). Если это верно, то нужно
положить х г — Xi-i 4- s£. Если же это неверно, то следует вновь домножи-ть
£ на s и т. д.
В следующей программе реализован представленный итерационный про
цесс с уменьшением длины итерационного шага. Так же как и в линейном
случае, будем рассматривать результаты измерений как функцию от контро
лируемой переменной t, т. е. yj —
Д ля истинных значений г/^, соответ
ствующих измеряемым величинам, щ — h(x*tj) иди |см. (9.6.1)] ц -- h ( x J ) .
Значения этой функции можно вычислить сои помощи подпрограммы, напи
санной пользователем. Имя такой пользовательской функции может быть вы
брано произвольно, но при этом должно быть объявлено как EXTERNAL (внеш
няя переменная) в вызывающей программе.
Программа 9.3. Подпрограмма LSQN0N аппроксимирует результаты измерений
нелинейной функцией, используя итерационный процесс с уменьшением длины
шага итерации
270
Глава 9. Метод наименьших квадратов
КОМАНДА вызова: CALL LSQNON(USERFN, Т, Y,DELTAY,N,NR,
NRED, LIST, X, СХ, R, А, SCRAT, NSTEP)
Входные параметры: USERFN — и м я подпрограммы, написанной
пользователем (см. также комментарии ниже)
Т —n -мерный вектор значений контролируемой переменной tj
У— n -мерный вектор результатов измерений у$
DELTAY — n-мерный вектор ошибок измерений сг3
N — количество измерений п
NR —количество неизвестных г
NRED — уменьшенное количество нефиксированных параметров г'
LIST — r -мерный вектор, элементы которого указывают, какие из г
неизвестных фиксированы (элемент вектора = 0) или изменяются
(элемент вектора = 1)
X —r -мерный вектор, являющийся начальным приближением для
неизвестных
А—рабочий массив, минимальный размер которого составляет п х г'
SCRAT — рабочий массив, минимальный размер которого составляет г х г'
NSTEP — максимальное количество итерационных шагов. Если оно
отрицательно, то ковариационная матрица СХ не вычисляется.
Выходные
параметры: X —r -мерный вектор неизвестных
СХ —ковариационая матрица для неизвестных размера г' х г'
R — значение минимизируемой функции М
NSTEP — количество проведенных итерационных шагов. Если произошла
ошибка, то значение NSTEP будет отрицательным (—2: метод не сходится,
—3: невозможно осуществить численное дифференцирование, —4: метод
уменьшения длины итерационного шага не дал результата).
Величины
по умолчанию: Если на входе значение параметра NSTEP
полагается равным нулю, то максимальное количество выполненных
итераций будет равно 100, В двух наиболее часто встречающихся случаях,
когда NRED = NR и когда NRED = 0, не требуется задавать в явном виде
вектор LIST. Тем не менее в любом случае r -мерный вектор LIST должен
выступать в качестве рабочего массива.
К омментарии: Пользователь должен написать подпрограмму, которая
выше названа USERFN. У нее должно быть три аргумента на входе: X—
г-мерный вектор неизвестных ж, NR — количество неизвестных г и Т —
значение контролируемой переменной. Подпрограмма долж на вычислять
значение функции ц = h{x,t).
SUBROUTINE LSQNON(USERFN, T , Y, DELTAY,N ,NR, NRED, LIST, X, CX, R, A,
+SCRAT,NSTEP)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
PARAMETER(NMAX=1000)
DIMENSION A(N,NRED),T(N),Y(N), DELTAY(N),X(NR)
DIMENSION SCRAT(NRED,NRED), CX(NRED, NRED),C(NMAX)
9.6. Программы для аппроксимации нелинейными функциями
С
С
С
С
С
271
DIMENSION X2CNMAX).XIRED(NMAX)
DIMENSION LIST(NR)
COMMON /DASV02/ C,X2,X1RED
PARAMETER(MAXSTP=100,EPSILN=1. D-8,TT=1. D-15 ,FACT=0. 5D0)
PARAMETER(ZER0=O. 0D0)
LOGICAL 0K,C0VMAT
EXTERNAL USERFN
C0VMAT=. TRUE.
IF(NSTEP.LT.O) THEN
C0VMAT=.FALSE.
NSTEP=ABS(NSTEP)
END IF
IF(NSTEP. LT.1 ) NSTEP=MAXSTP
Начальное значение минимизируемой функции
R=ZER0
DO 10 1=1,N
R=R+((Y(I)-USERFN(X,NR,T(I)))/DELTAY(I))**2
10 CONTINUE
Случай NRED=0: полагаем NSTEP=1 и переходим на строку с номером 130
IF(NRED.LE.O) THEN
NSTEP=1
GO TO 130
END IF
Случай NR=NRED: заполняем значениями вектор LIST
IF(NR.EQ.NRED) THEN
DO 20 1= 1,NR
L IST (I)=1
20
CONTINUE
END IF
Начало итерационного процесса
DO 120 ISTEP=1,NSTEP
Численное дифференцирование
CALL AUXDRI(USERFN, X, T , N, NR, NRED, LIST, A, OK)
IF(.NOT.OK) THEN
NSTEP=-3
GO TO 130
END IF
DO 40 1=1,N
DO 30 K=1,NRED
A(I,K)=A(I,K)/DELTAY(I)
30
CONTINUE
40
CONTINUE
DO 50 1=1,N
C (I)=(Y (I)-U SER FN (X ,N R ,T(I)) ) /DELTAY(I)
50
CONTINUE
272
Глава 9. Метод наименьших квадратов
CALL MTXSVD(А, С Д 1RED, R1, N, NRED, 1 , DBLE( 0 . ) , ОК)
I F ( .NOT.OK) THEN
NSTEP=-1
GO TO 130
END IF
CALL MTXZRV(X2,NR)
CALL MTXPSV(X2, XIRED, NR, NRED, LIST)
CALL MTXADV(X Д 2 Д 2 , NR)
R1=ZER0
DO 60 1=1,N
R1=R1 + ((Y( I ) -USERFN(X2, NR, T( I ) ) ) /DELTAY(I))**2
60
CONTINUE
DO 80 K =l,30
I F ( R l. GT. R*(DBLE( 1 . ) +EPSILN)+TT) THEN
С Минимизируемая функция возросла: длина итерационного
С шага уменьшается вдвое
CALL MTXMSV(XIREDД 1RED, FACT, NRED)
CALL MTXZRV(X2,NR)
CALL MTXPSV(X2Д 1RED. NR, NRED, LIST)
CALL MTXADV(X,X2,X2,NR)
R1=ZER0
DO 70 1=1,N
Rl=Rl+((Y(I)-USERFN(X 2,NR,T(I)) ) /DELTAY(I))**2
70
CONTINUE
ELSE
GO TO 90
END IF
80
CONTINUE
NSTEP=-4
GO TO 130
90
CONTINUE
CALL MTXZRV(X2.NR)
CALL MTXPSV(X2Д 1RED, NR, NRED.LIST)
CALL MTXADV( Х Д 2 Д .NR)
С Проверка условия завершения итерационного процесса
IF(ABS(R-Rl) -LT. EPSILN*ABS(R)+TT) THEN
R=R1
С Вычисление CX
ковариационной матрицы для неизвестных
IF(COVMAT) THEN
CALL AUXDRI(USERFN Д , T,N ,NR, NRED, LIST, A, OK)
IF(.NOT.OK) THEN
NSTEP=~3
GO TO 130
END IF
DO 110 1=1,N
9.6. Программы для аппроксимации нелинейными функциями 273
100
110
120
130
DO 100 К=1,NRED
А( I,K)=A(I,K)/DELTAY(I)
CONTINUE
CONTINUE
CALL MTXMAT(A,A,CX,NRED,N,NRED)
CALL MTXCHI(CX, SCRAT, NRED)
NSTEP=ISTEP
END IF
GO TO 130
ELSE
R=Ri
END IF
CONTINUE
NSTEP=-2
RETURN
END
Пример 9.4. Аппроксимация гауссовским распределением. Во многих экспе
риментах полученный в результате наблюдений сигнал y(t) имеет вид гауссов
ской кривой
y(t) = Х\ exp(~(t - х2)2/2 хз).
(9.6.3)
Требуется определить параметры ад, Х2 , хз, задающие амплитуду, значение,
соответствующее максимуму, и частоту этого сигнала. Д ля решения этой за
дачи при помощи программы LSQN0N пользователю необходимо написать ко
роткую подпрограмму — функцию, имя которой будет первым аргументом для
программы LSQN0N. Назовем эту функцию LSQGSS.
Программа 9.4. Функция LSQGSS вычисляет гауссовскую функцию для трех
заданных параметров
К оманда вызова: f =l s q g s s < % n r ,t )
Входные параметры: X—г-мерный вектор параметров х\,
хз
NR-- количество параметров г (должно быть положено равным трем перед
вызовом функции)
Т —значение контролируемой переменной t
В ыходные параметры: значение функции LSQGSS, вычисленное согласно
формуле (9.6.3)
К омментарии: Обратите внимание на то, что значения аргумента
экспоненциальной функции ограничены. При больших положительных (а
также при больших отрицательных) значениях аргумента в некоторых
компиляторах вычисление экспоненциальной функции не сможет быть
осуществлено.
DOUBLE PRECISION FUNCTION LSQGSS(X,NR,T)
274
Глава 9. Метод наименьших квадратов
1.5
1
У
t
0,5
I
0
-0.5
0
0.5
1
1.5
2
1.5
2
----- > t
0
(п У
А
-2
-3
-4
0
0.5
1
----- > |
Рис. 9.5. Результаты измерений и аппроксимация гауссовским распределением (на
верху); логарифм результатов измерений (внизу).
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION X(NR)
PARAMETER (ZERO=O.DO,BIG=700.D0)
ARG=(X(2)-T)**2/(DBLE(2. )*X (3)**2)
IF (ARG.GT.BIG) THEN
LSQGSS=ZERO
ELSE
LSQGSS=X(1)*EXP(-ARG)
END IF
END
На рис. 9.5 приведены результаты аппроксимации по данным эксперимен
та. В качестве начального приближения были использованы значения х\ = 0 .5 ,
9.6. Программы для аппроксимации нелинейными функциями 275
Х2 — 1.5, х 3 = 0.2. На самом деле на основании графика результатов измере
ний мы могли бы получить существенно более точные оценки параметров и
использовать их в качестве начального приближения, а именно од ^ 1 для
амплитуды, Х2 ~ 1.25 для значения, соответствующего максимуму, и
^ 0.4
для параметра, отвечающего частоте.
Выше мы только что привели чрезвычайно удобный метод нахождения на
чального приближения: визуальный анализ графика данных. Однако можно
также поступить более формально и рассмотреть логарифм от функции (9 .6 .3 ):
Это выражение является линейным полиномом по
равны членам, стоящим в скобках:
коэффициенты которого
1
а\ — In зд -
Однако при взятии логарифма может измениться закон распределения оши
бок измерения, который изначально был гауссовским законом, таким образом,
строго говоря, невозможно подобрать полином для определения коэффициен
тов <2 i , <22 и аз. Для того чтобы найти начальное приближение, можно прене
бречь этой проблемой и положить ошибки измерения величин 1пу(^) равными
единице. Затем найти величины ai, a 2 , аз, а уже зная их —значения ад, £ 2 , £ 3 ,
которые впоследствии будут использоваться в качестве начального приближе
ния.
На нижнем графике на рис. 9.5 приведены значения логарифма результа
тов измерений у*. Видно, что область, в которой данные аппроксимируются
параболой, не должна выходить за пределы области колоколообразной формы
кривой, поскольку точки на хвостах подвержены большим флуктуациям.
■
Пример 9.5. Аппроксимация экспоненциальной функцией. При изучении ра
диоактивности, к примеру, для аппроксимации результатов измерений yi(U)
должна использоваться функция вида
y(t) — х\ ехр(—Xot).
(9.6.4)
Программа, которая должна быть написана пользователем, может иметь сле
дующий вид.
Программа 9.5. Функция L3QEXP вычисляет значения экспоненциальной
функции при двух заданных параметрах
К оманда вызова: f =lsqexp(X,nr л )
Входные ПАРАМЕТРЫ: X—r-мерный вектор параметров ад, тд
NR—количество параметров г (перед вызовом функции нужно положить
равным двум)
Т —значение контролируемой переменной t
276 Глава 9. Метод наименьших квадратов
Рис. 9.6. Результаты измерений и аппроксимация экспоненциальной функцией (на
верху); логарифм результатов измерений (внизу).
Выходные ПАРАМЕТРЫ: значение
ф у н к ц и и LSQEXP,
о сн о в а н и и ф о р м у л ы (9 .6 .4 )
DOUBLE PRECISION FUNCTION LSQEXP( X , N R ,Т)
IMPLICIT DOUBLE PRECISION (A -H .O -Z )
DIMENSION X(NR)
PARAMETER (B IG = 7 0 0 .D 0 ,Z E R 0 = 0 .D 0 )
ARG =X(2)*T
IF(A R G .G T .B IG ) THEN
LSQEXP=ZERO
ELSE
LSQEXP=X(1)*EXP(-ARG)
END IF
END
вычисленное на
9.6. Программы для аппроксимации нелинейными функциями
277
На рис. 9.6 представлены результаты аппроксимации данных. Нахождение
начального приближения для неизвестных вновь можно осуществить путем
аппроксимации прямой (графически или численно) логарифма функции y(t):
lny(£) = In xi —х 2 1. При этом обычно используются значения функции только
при малых значениях £, поскольку флуктуации в этих точках имеют меньший
размер.
■
Пример 9.6. Аппроксимация суммой экспоненциальных функций. Зачастую
радиоактивное вещество является смесью, состоящей из нескольких компо
нент с различными периодами распада. Поэтому необходимо аппроксимиро
вать данные суммой нескольких экспоненциальных функций. Рассмотрим слу
чай двух функций
y(t) = х\ exp {—x 2 t) + жз ехр(—я 4£).
(9.6.5)
Тогда функция, которая должна быть написана пользователем, имеет следую
щий вид.
Программа 9.6. Функция LSQ2EX вычисляет значения суммы двух экспонен
циальных функций при четырех заданных параметрах
К о м а н д а в ы з о в а : F=LSQ2EX(X,n r , t )
В х о д н ы е п а р а м е т р ы : X —r -мерный вектор параметров х\, х2, хз, х4
NR—количество параметров г (перед вызовом функции нужно положить
равным четырем)
Т — значение контролируемой переменной i
В ы х о д н ы е п а р а м е т р ы : значение функции LSQ2EX, вычисленное на
основании формулы (9.6.5)
DOUBLE PRECISION FUNCTION LSQ2EX(X,NR,T)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
DIMENSION X(NR)
PARAMETER (BIG=700.D0,ZER0=0.D0)
ARG=X(2)*T
IF(ARG.GT.BIG) THEN
E1=ZER0
ELSE
E1=X(i)*EXP(-ARG)
END IF
ARG=X(4)*T
IF(ARG.GT.BIG) THEN
E2=ZER0
ELSE
E2=X(3)*EXP(-ARG)
END IF
LSQ2EX=E1+E2
END
278 Глава 9. Метод наименьших квадратов
50
40
У
а
30
20
10
0
О
0.5
О
0.5
1
1.5
2
1
1.5
2
-----> t
U
3.5
In у
д
з
2.5
2
1.5
1
-----> t
Рис. 9.7. Результаты измерений и аппроксимация суммой двух экспоненциальных
функций (вверху); логарифм результатов измерений (внизу).
На рис. 9.7 представлены результаты аппроксимации данных суммой двух
экспоненциальных функций. Начальное приближение можно найти путем ап
проксимации величин In
двумя различными прямыми: первой —для обла
сти малых значений £*, а второй —для области больших значений.
■
9.6.2. Итерационный процесс Маркардта
Итерационный процесс с уменьшением длины шага итерации, описанный в
разд. 9.6.1, приводит к нахождению минимума в случае, когда х уже находит
ся в области, где матрица A fTA f является положительно определенной, т. е. в
области, являющейся окрестностью минимума, в которой функция М(х) имеет
положительную кривизну. (В одномерном случае, представленном на рис. 10.1,
эта область является отрезком между двумя точками перегиба, находящимися
с разных сторон относительно точки минимума.) Однако нужно иметь воз
можность расширения области сходимости до области между двумя точками
9.6. Программы для аппроксимации нелинейными функциями
279
максимума, ближайшими к минимуму. Такая возможность обеспечивается ме
тодом Маркардта, в более общем виде описанном в разд. 10.15. Поэтому чи
тателям, желающим понять, каким образом работает следующая программа,
рекомендуется прочитать не только данный раздел, но также введение к главе
10 и разд. А .18.
Программа 9.7, Подпрограмма LSQMAR для аппроксимации данных нелиней
ной функцией с неизвестными параметрами при помощи метода М аркардта
К оманда
вызова*
, call lsqmar( u serfn , t 3y , deltay , n , n rs
NRED,LIST,X,CX,R,A,SCRAT,NSTEP)
Входные
параметры: те же, что и в программе LSQN0N (см. программу 9.3)
Выходные
параметры:
те же, что и в программе LSQN0N
Величины по умолчанию: те же, что и в программе LSQN0N
К омментарии: М атрица А находится методом численного
дифференцирования при помощи программы Е.2. Если метод численного
дифференцирования не работает, то пользователю следует написать
программу с названием AUXDRI и с теми же аргументами, что и в
программе Е.2, которая бы вычисляла матрицу А путем
дифференцирования аналитическими методами. Это также рекомендуется
сделать в случае, когда задачу нужно решить несколько раз для
различных исходных данных, поскольку производные можно быстрее
найти аналитическими методами, нежели численными.
SUBROUTINE LSQMAR(USERFN, 7 , Y, DELTAY,N ,NR, NRED, LIST, X, CX,R, A,
+SCRAT,NSTEP)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
PARAMETER(NMAX=1000)
DIMENSION A(N,NRED),T(N),Y(N), DELTAY(N),X(NR)
DIMENSION SCRAT(NRED, NRED), CX(NRED, NRED)
DIMENSION C(NMAX),X1(NMAX),X2(NMAX),X1RED(NMAX),X2RED(NMAX)
DIMENSION LIST(NR)
COMMON /DASV02/ C,X1,X2,X1RED,X2RED
PARAMETER(MAXSTP=1 0 0 ,EPSILN=1. D -8, TT=1. D-15, ALAMS=1.D-3)
LOGICAL NEW, OK, FINAL, COVMAT
EXTERNAL USERFN
C0VMAT=. TRUE,
IF(NSTEP.LT.O) THEN
C0VMAT=. FALSE.
NSTEP=ABS(NSTEP)
END IF
IF(NSTEP. LT.1) NSTEP=MAXSTP
ALAM=ALAMS
280 Глава 9. Метод наименьших квадратов
С Начальное значение минимизируемой функции
R=DBLE(0.)
DO 10 1= 1,N
R=R+СCYCl)-USERFN(X, NR, T ( I ) ) ) /DELTAY(I))**2
10 CONTINUE
IF(NRED.LE.O) THEN
NSTEP=1
GO TO 100
END IF
С Случай NR=NRED: заполнение значениями вектора LIST
IF(NR.EQ.NRED) THEN
DO 20 1= 1,NR
L IST (I)=1
20
CONTINUE
END IF
С Начало итерационного процесса
FINAL=.FALSE.
DO 90 ISTEP=1,NSTEP
С Численное дифференцирование
CALL AUXDRI(USERFN, X, T,N ,NR, NRED, LIST, A, OK)
IF(.NOT.OK) THEN
NSTEP=-3
GO TO 100
END IF
DO 40 1=1,N
DO 30 K=1,NRED
A(I,K)=A(I,K)/DELTAY(I)
30
CONTINUE
40
CONTINUE
DO 50 1=1,N
C (I)=(Y (I)-U SER FN (X ,N R ,T(I)) ) /DELTAY(I)
50
CONTINUE
IF(FINAL) THEN
С Заключительный этап
CALL MTXSVD(A, C, X1RED, R,N ,NRED, 1 , DBLE( 0 . ) , OK)
IF(.NOT.OK) THEN
NSTEP=-1
GO TO 100
END IF
CALL MTXZRV(XI,NR)
CALL MTXPSV(XI, X1RED, NR, NRED, LIST)
CALL MTXADV(X, X I, X, NR)
С Вычисление CX — ковариационной матрицы для неизвестных
IF(COVMAT) THEN
CALL AUXDRI(USERFN, X ,T,N ,NR, NRED, LIST, A, OK)
9.6. Программы для аппроксимации нелинейными функциями
IF (.N O T .O K ) THEN
N STEP=-3
GO TO 1 0 0
END IF
DO 7 0 1 = 1 ,N
DO 6 0 K=1,NRED
A (I ,K ) = A ( I ,K ) /D E L T A Y ( I )
CONTINUE
60
70
CONTINUE
CALL MTXMAT( A, A, CX, NRED, N , NRED)
CALL MTXCHI(CX, SCRAT, NRED)
END IF
NSTEP=ISTEP
GO TO 1 0 0
END IF
С Вы числение з н а ч е н и я м и н и м и зи руем ой функции при д в у х
С з н а ч е н и я х л я м б д а (ALAM)
CALL MTXMARCА , С , ALAM, X1RED, X2RED, N , NRED, DBLE( 0 . ) , ОК)
IF (.N O T .O K ) THEN
NSTEP=-1
GO TO 100
END IF
CALL MTXZRV(X1,NR)
CALL MTXZRV(X2, NR)
CALL M TXPSV(X1,X1RED,NR,NRED,LIST)
CALL MTXPSV(X2, X2RED, NR, NRED.LIST)
CALL MTXADV(X1 , X , X1 , NR)
CALL MTXADV(X2, X , X 2 , NR)
R 1= D B L E (0.)
R 2= D B L E (0.)
DO 8 0 1 = 1 ,N
R 1=R 1+( ( Y ( I ) -USERFN(X1 , NR, T ( I ) ) ) /DELTAY( I ) ) * *2
80
R 2=R 2+( ( Y ( I ) -U SE R FN (X 2, NR, T ( I ) ) ) /D E L T A Y (I))* * 2
CONTINUE
IF (.N O T .O K ) THEN
NSTEP=-1
GO TO 100
END IF
С О ценка з н а ч е н и я п о л у ч е н н о г о р е з у л ь т а т а
IF (R 2 .L E .R + T T ) THEN
С Уменьш ение з н а ч е н и я л я м б д а и п е р е х о д к н о в о й т о ч к е
ALAM=ALAM*DBLE(0.1)
CALL МТХСРV( Х 2 , X, NR)
RMIN=R2
NEW=. TRUE.
281
282
Глава 9. Метод наименьших квадратов
ELSE IF (R2.GT.R+TT .AND. Rl.LE.R+TT) THEN
С Сохранение текущего значения лямбда и переход к новой точке
CALL MTXCPV(X1,X,NR)
RMIN=R1
NEW=. TRUE.
ELSE
С Увеличение значения лямбда и отклонение новой точки
ALAM=ALAM*DBLE(1 0 .)
NEW=.FALSE.
END IF
IF(NEW) THEN
С Проверка условия завершения итерационного процесса
IF(ABS(R-RMIN) .LT. EPSILN*ABS(RMIN)+TT) THEN
FINAL=.TRUE.
ELSE
R=RMIN
END IF
END IF
90 CONTINUE
NSTEP="2
100 RETURN
END
Пример 9.7. Аппроксимация суммой двух гауссовских функций и полиномом.
На практике обычно достаточно трудно найти амплитуду, положение максиму
ма и частоту сигналов таким способом, который был представлен в примере 9.4.
Зачастую имеется несколько сигналов, образующих шум (они незначительно
меняются при изменении контролируемой переменной t). Поскольку в общем
случае параметры этого щума не известны, то его аппроксимируют прямой или
же полиномом второго порядка. Рассмотрим сумму такого полинома и двух
гауссовских распределений, т. е. функцию от девяти неизвестных параметров:
h{x,t) = xi + Х21 + £ 312 + Х4 ех р{-(х 5 - t) 2 / 2 x 1 } + £ 7 ехр{ - ( £ 8 ” i)2/ ^ } (9.6.6)
Производные (9.5.5) имеют вид
dhj
дх\ = i,
dhj
= tj,
-dj2 дх2
-а , 1 =
dhj
~ 12
дх3 ъdhj
СГ|'4 —
= exp{-(ar5 —1})2/2x1}
СЕуЗ —
дхл
9.6. Программы для аппроксимации нелинейными функциями 283
Рис. 9.8. Результаты измерений и аппроксимация суммой полинома второго поряд
ка и двух гауссовских функций.
~<Чь = Ъ Д = 2а:4 ехр { ~ ( ЖВ - Ь ) 2/ 2 х 26 } ^- ~ ~,
- a j6 =
C/OCq
= х4 ехр{-(х5 - t j ) 2 / 2 x 1 }— —
Если методы численного дифференцирования не работают, то производные
следует вычислять при помощи сделанной специально для этого случая мо
дификации программы AUXDRI.
Однако для численного примера, представленного на рис. 9.8, это не явля
ется обязательным. Безусловно, для вычисления функции (9.6.6) пользователь
должен написать программу, текст которой приводится ниже.
Программа 9.8. Функция LSQP2G вычисляет сумму полинома и двух гауссов
ских функций
К оманда
в ы зо в а : f =l s q p 2G(x ,n r ,t )
В ходны е п а р а м е т р ы : X— г-мерный вектор параметров х\, Х2 , . . хд
NR — количество параметров г (перед вызовом функции нужно положить
равным девяти)
Т —значение контролируемой переменной t
ВЫХОДНОЙ ПАРАМЕТР: значение функции LSQP2G, вычисленное на
основании формулы (9.6.6)
DOUBLE PRECISION FUNCTION LSQP2G(X,NR,T)
284
Глава 9. Метод наименьших квадратов
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION X(NR)
PARAMETER (BIG=700. D O , TW0=2. D O , ZER0=0. D O )
BACK=X( 1 ) +X( 2 ) *T+X( 3 ) *T**2
ARG1=(X(5)-T)**2/(TW0*X(6)**2)
ARG2=(X(8)-T)**2/(TW0*X(9)**2)
IF(ARG1.GT.BIG) THEN
GAUSS1=ZER0
ELSE
GAUSS1=X(4)*EXP(-ARG1)
END IF
IF(ARG2.GT.BIG) THEN
GAUSS2-ZER0
ELSE
GAUSS2=X(7)*EXP(-ARG2)
END IF
LSQP2G=BACK+GAUSS1+GAUSS2
END
На рис. 9.8 представлены результаты аппроксимации по 50 измерениям,
Наверняка, читателю будет интересно взглянуть на результаты промежуточ
ных шагов итерационного процесса, изображенных на рис. 9.9. В качестве
начального приближения был взят полином, параметры в котором были по
ложены равными нулю (х\ — х 2 — ад — 0). В качестве начальных значений
амплитуды, положения точки максимума и частоты для обоих легко визуаль
но различимых сигналов были найдены достаточно грубые оценки. На первом
графике (STEP 0) представлена функция (9.6.6), параметры которой отвечают
начальному приближению. На следующих графиках изображены изменения
вида функции после 2, 4, 6 и 8 шагов итерационного процесса. В итоге про
грамма LSQMAR заканчивает работу после сходимости итерационного процесса
на 9 шаге.
■
9.7. Свойства оценок, полученных методом наименьших
квадратов. Критерий хи-квадрат
До сих пор метод наименьших квадратов рассматривался нами лишь в каче
стве приложения метода максимального правдоподобия к решению линейной
задачи. Формула (9.2.15) для метода наименьших квадратов была получена не
посредственно путем максимизации функции правдоподобия (9.2.14), Для того
чтобы иметь возможность найти данную функцию правдоподобия, прежде все
го было необходимо знать распределение ошибок измерений. Мы предположи
ли, что это распределение является нормальным. Однако даже в случае, когда
распределение ошибок неизвестно, соотношение (9.2.15) все еще можно исполь
зовать, а вместе с ним и все остальные формулы из предыдущих разделов. С
первого взгляда кажется, что такой подход не имеет под собой теоретическо
го обоснования. Тем не менее в теореме Гаусса—Маркова утверждается, что в
9.7. Свойства оценок, полученных методом наименьших квадратов 285
Рис. 9.9. Процесс последовательного приближения функции по результатам изме
рений.
данном случае метод наименьших квадратов также дает оценки с достаточно
хорошими свойствами. Перед тем как приступить к ее формулировке, давайте
еще раз перечислим свойства оценок максимального правдоподобия.
(a) Оценка х является асимптотически несмещенной, т. е. для выборок боль
шого объема E(xi) = ж»,
г = 1 ,2 ,..., г.
(b) Она является оценкой с асимптотически минимальной дисперсией, т. е.
a 2 (xi) = E{(xi —Xi)2} - m in.
(c) Величина (9.2.16) М = £TGye имеет хи-квадрат распределение с п —г
степенями свободы.
286
Глава 9. Метод наименьших квадратов
Свойства (а) и (Ь) были рассмотрены в главе 7. Докажем справедливость
утверждения (с) для простейшего случая прямых измерений (г = 1), для ко
торых матрица Gy является диагональной:
О
V <тт
\
i/^ 2
G,
0
/
Тогда величина М будет просто суммой квадратов
J=1
Поскольку все Sj взяты из нормально распределенной совокупности со средним
нуль и дисперсией <т|, то величины г^/сг| имеют стандартное гауссовское рас
пределение. Таким образом сумма квадратов имеет хи-квадрат распределение
с п — 1 степенями свободы.
Если распределение ошибок Ej неизвестно, то оценка., полученная методом
наименьших квадратов, обладает следующими свойствами:
(a) Оценка является несмещенной.
(b ) Среди всех ж*-несмещенных оценок для величины ж, являющихся линей
ными комбинациями результатов измерений у , оценка наименьших ква
дратов обладает минимальной дисперсией. (Это утверждение является те
оремой Гаусса-М аркова.)
(c) Математическое ожидание величины М = £TGy£ равно Е( М) = п —г.
(Это в точности математическое ожидание случайной величины, имеющей
хи-квадрат распределение с п - г степенями свободы.)
Часто величину М называют просто хи-квадрат, хотя она не обязатель
но имеет хи-квадрат распределение. Эта величина, а также матрицы С% и
Сщ представляют собой удобное средство для определения качества аппрок
симации, полученной по методу наименьших квадратов. Если полученное на
основании результатов измерений значение величины М сильно превосходит
значение п —г, то необходимо проверить предположения, сделанные при вычи
слениях. В этом случае результат нельзя считать достоверным, не сделав его
строгого обоснования.
Величина f — п — г называется числом степеней свободы аппроксимации
или количеством уравнений связи апрроксимации. Очевидно (см. приложе
ние А), что задача может быть разрешена при помощи метода наименьших
квадратов только в случае, когда / > 0. Однако лишь при / > 0 определе
ние величины М имеет смысл, а саму эту величину можно использовать для
проверки качества построенной аппроксимации.
9,7. Свойства оценок, полученных методом наименьших квадратов
287
Если известно, что ошибки измерения нормально распределены, то одно
временно с построением аппроксимации можно осуществить проверку ее ка
чества при помощи критерия хи-квадрат. Результаты аппроксимации нужно
отвергнуть в случае, когда
М = £TGy£ > x l - a{ n - r ) ,
(9.7.2)
т. е. если величина М превышает значение квантили хи-квадрат распределе
ния с п —г степенями свободы при уровне значимости а 1. Большие значения
величины М могут быть получены в результате следующих причин:
(a) Ошибочным является предположение относительно вида функциональной
зависимости f(x, rj ) = 0 между результатами измерений г) и неизвестными
параметрами х . Либо в целом неверным является вид функции
либо неверны некоторые параметры, которые полагаются известными.
(b) Вид функции f ( x , г}) является правильным, однако разложение в ряд и
отбрасывание в нем всех слагаемых кроме первого не дает достаточно точ
ного приближения в той области параметрического пространства, которая
задействована при вычислениях.
(c) Начальное приближение Xq лежит слишком далеко от истинного значения
х. Более точные значения ссо могли бы привести к лучшим результатам
для М. Этот пункт напрямую связан с пунктом (Ь).
(d) Неверной является ковариационная матрица для результатов измерений
Су, вычисления которой зачастую базируются на достаточно грубых пред
положениях и оценках.
Для того чтобы успешно применять метод наименьших квадратов, необхо
димо принимать во внимание четыре перечисленные проблемы. В ряде случаев
приходится многократно повторять вычисления по методу наименьших ква
дратов для различных наборов данных. На основании полученных результа
тов можно построить гистограмму (эмпирическую плотность распределения)
для величины М и сравнить ее с хи-квадрат распределением с соответству
ющим числом степеней свободы. Такое сравнение особенно эффективно при
достаточно точных оценках для матрицы Су. Обычно перед тем как начать
проведение нового эксперимента прибор, при помощи которого будут получе
ны результаты измерения у , проверяется путем измерения известных величин.
Таким образом для нескольких наборов данных находят параметры х . После
этого ковариационную матрицу для результатов измерений можно будет опре
делить из условия, чтобы распределение величины М (т. е. гистограмма) как
можно лучше согласовывалось с плотностью хи-квадрат распределения. Такой
подход является особенно наглядным в случаях, когда вместо распределения
1 Если матрица Gy оценивается, т. е. если значения а? точно не известны, то соотношение
(9.7.2) надо считать лишь приближенным. — (Прим, ред*)
288
Глава 9. Метод наименьших квадратов
величины М рассматривается распределение величины F(M), где F —функ
ция, обратная к функции хи-квадрат распределения (6.6.11). Если величина М
имеет хи-квадрат распределение, то величина F( M) распределена равномерно.
9.8. Доверительные области и несимметричные ошибки
в нелинейном случае
Начнем данный раздел с пояснения смысла ковариационной матрицы C j неиз
вестных параметров при использовании метода наименьших квадратов в линейной случае. Вероятность того, что истинные значения неизвестных совпа
дают с компонентами вектора ж, задается нормальным распределением вида
(5.10.1):
ф(х) = hexр { - ~ ( х - х ) тВ ( х - ж)},
(9.8.1)
где В = С - 1. Выражение под знаком экспоненты (умноженное на —2)
д(х) = (х —х ) тВ( х —х),
(9.8.2)
при 0 = 1 = const задает эллипсоид равных вероятностей (см. разд. 5.10). При
других значениях д(х) = const, получаем эллипсоиды равных вероятностей, от
вечающие заданной вероятности W [см. (5.10.19)]. Таким образом легко можно
построить доверительный эллипсоид равных вероятностей, имеющий центр в
точке х — х и содержащий истинное значение неизвестного вектора х с веро
ятностью W = 0.95.
Теперь мы можем найти взаимосвязь между эллипсоидом равных вероят
ностей и минимизируемой функцией. Для этого воспользуемся выражением
(9.2.19). которое справедливо в линейном случае, и вычислим разность между
значением минимизируемой функции М( х) в точке х и значением функции
М(х) в той точке ад где она достигает минимума:
М( х ) - М( х) = (х - x) TATGyA( x — х).
(9.8.3)
В соответствии с формулой (9.2.27) получаем:
В = С - 1 = Gx = A TGyA.
(9.8.4)
Таким образом разность (9.8.3) в точности совпадает с определенной выше
функцией д(х).
Следовательно, эллипсоид равных вероятностей является гиперповерхно
стью в r-мерном пространстве, натянутом на оси, соответствующие пере
менным
на которой функция М( х) принимает значение М( х) =
М( х) +1. Эллипсоид равных вероятностей, отвечающий вероятности W, явля
ется соответственно гиперповерхностью, на которой
М( х) — М( х) +
(9.8.5)
9.8. Доверительные области и несимметричные ошибки 289
где константа д является квантилью хи-квадрат распределения с / — п — г
степенями свободы, определяемого в соответствии с формулой (5.10.21):
9 = X w ( f )■
(9-8-6)
Для использования метода наименьших квадратов в нелинейном случае
приведенные рассуждения остаются справедливыми практически без измене
ний. Аппроксимация будет тем более точной, чем меньше будут разности соот
ветствующих нелинейных слагаемых в выражении (9.5.3) в пределах области,
в которой изменяются неизвестные параметры. Разности этих слагаемых ма
лы не только в случае, когда производные близки к константам, т. е. когда
функция практически линейна, но также, когда мал размах возможных ко
лебаний неизвестных параметров. При этом дисперсия является также мерой
ошибки при определении параметров. Из формулы преобразования ковариа
ционных матриц и дисперсий следует, что ошибки оценки неизвестных малы
тогда, когда малы ошибки самих измерений. Поэтому, пока ошибки измерений
остаются малыми, в нелинейном случае ковариационная матрица имеет ту же
интерпретацию, что и в линейном.
Если же ошибки измерений велики, то оставим в силе соотношение (9.8.5),
т. е. определим гиперповерхность, соответствующую условию (9.8.5), и усло
вимся считать, что истинное значение величины х с вероятностью W лежит в
доверительной области, окружающей точку х -- х.
В случае одномерного параметра х легко можно построить график кри
вой М — М(х). При этом доверительная область является просто отрезком на
оси х. Для двух параметров хх, х<± граница доверительной области —это кри
вая на плоскости (хх,Х2 ). Это линия уровня (9.8.5) для функции М — М(х).
Графическое представление соответствующих линий уровня можно получить с
помощью программы F.15. При наличии более двух параметров получить гра
фическое представление этих линий можно только в виде сечений доверитель
ной области плоскостями (х*, Xj) в пространстве (хх, Х2 , . . . , хг), проходящими
через точку х = (хх, х2, . . . , хг), где х», Xj — произвольно выбранная пара па
раметров. Графики таких линий уровня построены соответствующим образом
при помощи представленного ниже метода, который реализован в программе
F.15. Метод заключается в следующем: необходимо вычислить значения функ
ции М( х) во многих точках описанной выше плоскости. Поскольку в каждой
из этих точек все параметры х фиксированы, то нет необходимости выполнять
итерации, а нужно только вычислить значение М(х).
Программа 9.9. Подпрограмма LSQC0N строит сечение доверительной области
плоскостью, натянутой на оси, соответствующие двум параметрам, значения
которых были определены для нелинейного случая методом наименьших ква
дратов
К оманда
вызова: call lsqcon ( i x , j x , x io , x jo , d x i , d x j ,
NXI, NXJ, FCONTД О , T , Y, DELTAY,N ,NR, USERFN)
290 Глава 9. Метод наименьших квадратов
В х о дн ы е п а р а м е т р ы : IX, JX —индексы г, j компонент
Xj п-мерного
вектора х , которые порождают плоскость сечения доверительной области
XI0,DXI,NXI — начальное значение
длина интервала А х %и количество
интервалов nXi для параметра х г
XJO, DXJ, NXJ — то ж е самое для х3
FC0NT — значение минимизируемой функции на границе доверительной
области
ХО — п ~мерный вектор параметров в точке минимума х
Т , Y, DELTAY, N, NR, USERFN — те же. что и в программе LSQN0N
SUBROUTINE LSQC0N( IX , JX, ХЮ, XJO, DXI, DXJ, NXI, NXJ, FC0NT, ХО, Т , У,
+DELTAY,N,NR,USERFN)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
DIMENSION XO(NR),T(N),Y(N), DELTAY(N)
DIMENSION X I( 2 ) ,X J(2),F (2,2),X 0S A V (100)
EXTERNAL USERFN
CALL MTXCPV(XO, XOSAV, NR)
DO 50 I=0,N XI-1
XI(1)=XI0+I*DXI
XI(2)=XI(1)+DXI
DO 40 J=0,NXJ-1
XJ(1)=XJ0+J*DXJ
XJ(2)=XJ(1)+DXJ
DO 30 IS = 1,2
DO 20 JS = 1,2
CALL MTXCPV(XOSAV,X0,NR)
X 0(IX )=X I(IS)
X0(JX)=XJ(JS)
R=0. DO
DO 10 L=1,N
R=R+( (Y(L)-USERFN(XO, NR, T (L )) ) /DELTAY(L))**2
10
CONTINUE
F (IS ,JS )= R
20
CONTINUE
30
CONTINUE
CALL GRPXCT(XKl) ,X I(2 ) ,X J(1) ,X J(2) ,F ( 1 ,1 ) ,F (1 ,2 ) , F ( 2 , 1 ) ,
+
F(2,2),FC 0N T)
40
CONTINUE
50 CONTINUE
END
Пример 9.8. Влияние больших ошибок измерений на доверительную область
для параметров при аппроксимации данных экспоненциальной функцией. Ре
зультаты аппроксимации данных экспоненциальной функцией (см. пример 9.5)
при различных значениях ошибок измерений представлены на рис. 9.10. Два
9.8.
Доверительные области и несимметричные ошибки
291
Рис. 9.10. Аппроксимация экспоненциальной функцией 77 = ari ехр(—Х21) результа
тов измерений при различных значениях ошибок измерений.
х \ и Х2 , а т а к ж е и х о ш и б к и и
к о э ф ф и ц и е н т к о р р е л я ц и и т а к ж е п р и в ед ен ы н а р и с у н к е. В е л и ч и н ы Д х \ , Д х 2 и
р бы ли в ы ч и сл ен ы н е п о с р е д с т в е н н о н а о с н о в а н и и эл е м е н т о в к о в а р и а ц и о н н о й
м атр и ц ы С%. К а к и п р е д п о л а г а л о с ь , ош и бк и э т и х в ел и ч и н в о зр а с т а ю т с р о с т о м
п одобр ан н ы х п утем ап пр оксим аци и п а р а м ет р а
о ш и б о к и зм е р е н и й .
Э л л и п сы р а в н ы х в е р о я т н о с т е й д л я р е зу л ь т а т о в а п п р о к с и м а ц и и и з о б р а ж е
ны н а р а з л и ч н ы х г р а ф и к а х р и с. 9 .1 1 п р и п о м о щ и т о н к и х л и н и й , о б р а з у ю щ и х
к о н т у р ы . М а л е н ь к и е к р у ж о ч к и в ц е н т р а х эл л и п со в о б о з н а ч а ю т н а й д е н н у ю
х . П р и эт о м в ер т и к а л ь н ы е о т р е з к и , п р о х о д я щ и е ч е р е з т о ч к у ж, с о о т
в е т с т в у ю т о б л а с т я м х\ ± Дх\ и Х2 ± Д х 2 . Б о л е е т о л с т ы м и л и н и я м и н а р и со в а н ы
к о н т у р ы , о г р а н и ч и в а ю щ и е д о в е р и т е л ь н у ю о б л а с т ь М (ж ) = М (х ) + 1. В и д н о ,
оценку
ч т о п р и м а л ы х з н а ч е н и я х о ш и б о к и зм е р е н и й д о в е р и т е л ь н а я о б л а с т ь и эл л и п с
р а в н ы х в е р о я т н о ст ей п р а к т и ч е с к и с о в п а д а ю т , в т о в р е м я как п р и б о л ь ш и х
ош ибках и зм ерен и й они явно отл и ч аю тся д р у г от др уга.
К о н т у р н ы е л и н и и и д о в е р и т е л ь н ы е о б л а с т и бы л и н а й д е н ы и г р а ф и ч е с к и п о
с т р о ен ы п р и п о м о щ и п р о г р а м м ы 9 .9 . П р и э т о м о ц ен к а , н а й д е н н а я п р о г р а м м о й
LSQN0N, б ы л а и с п о л ь з о в а н а в к а ч е с т в е а р г у м е н т а ХО п р и за п у с к е п р о г р а м м ы
LSQC0N. В к а ч ест в е ф у н к ц и и п о л ь з о в а т е л я в ы с т у п а л а ф у н к ц и я LSQEXP.
■
292 Глава 9. Метод наименьших квадратов
Рис. 9.11. Результаты аппроксимации, соответствующие рис. 9.10 в параметриче
ском пространстве ац,
■Найденная оценка х (маленький кружочек), симметрич
ные ошибки (отрезки ошибок), эллипс равных вероятностей, границы несимметрич
ных ошибок (горизонтальные и вертикальные линии), доверительная область, соот
ветствующая вероятности попадания в эллипс равных вероятностей (толстая линия
контура).
Н а х о ж д е н и е и п о с т р о е н и е д о в е р и т е л ь н ы х о б л а с т е й в с л у ч а я х , к о г д а он и о т
л и ч а ю т с я о т э л л и п с о и д о в р а в н ы х в е р о я т н о с т е й , т р е б у е т зн а ч и т е л ь н ы х уси л и й .
П о э т о м у в а ж н о у м е т ь о п р е д е л я т ь , и м е е т с я л и м е ж д у н и м и с у щ ес т в е н н о е о т л и
ч ие. Д л я п р о с т о т ы о с т а н о в и м ся н а с л у ч а е д в у х п а р а м е т р о в и вн овь р а с с м о т р и м
п р и м ер 9 .8 и, в ч а с т н о с т и , р и с. 9 .1 1 . О ш и б к и A x i = а* = л / С Д м ) , н а й д ен н ы е
н а о с н о в а н и и к о в а р и а ц и о н н о й м а т р и ц ы С #, о б л а д а ю т с л е д у ю щ и м св ой ств ом :
прямы е
Xi = Xi d= A x i я в л я ю т ся к а с а т е л ь н ы м и к э л л и п с у р а в н ы х в е р о я т н о с т е й .
Е сл и эл л и п с р а в н ы х в е р о я т н о с т е й за м е н и т ь д о в е р и т е л ь н о й о б л а с т ь ю , и м е ю
щ ей м ен ее п р а в и л ь н у ю ф о р м у , т о н е с м о т р я н а э т о все ж е м о ж н о б у д е т н а й т и к
н ей г о р и зо н т а л ь н ы е и в ер т и к а л ь н ы е к а са т ел ь н ы е. Т о г д а в м е с т о к а с а т е л ь н ы х ,
и з о б р а ж е н н ы х н а р и с. 9 .1 1 п о л у ч и м к а с а т е л ь н ы е
X i ~ X i + A x i+ ,
Xi = X i - A x i „ .
А х + и А х - , вообщ е
несим м ет ричны х ошибках. Д л я с л у ч а я
(9 .8 .7 )
И з -з а о т с у т с т в и я с и м м е т р и и о ш и б к и
говоря, б у д у т р а з
личны . Р ечь и дет о
г п а р а м е т р о в р ол ь
к а са т ел ь н ы х п р я м ы х б у д у т и г р а т ь к а с а т е л ь н ы е г и п е р п о в е р х н о с т и р а з м е р н о
сти г — 1.
9.8.
Доверительные области и несимметричные ошибки
2 93
Сформулируем теперь метод нахождения несимметричных ошибок Аг*±.
Если несимметричные ошибки существенно отличаются от симметричных, то
интерес представляют только несимметричные доверительные области. Вели
чины Xi± = Xi ± Axi± обладают свойством, что при фиксированном значении
Xi = Xi± минимум функции М равен
min {М(х; Xi = х*±)} = М(х) + д,
д — 1. П р и д р у г и х з н а ч е н и я х д
ные доверительные границы. Е с л и
гд е
получаем соответствую щ ие
(9 .8 .8 )
несимметрич
в в ы р а ж е н и и (9 .8 .8 ) п е р е н е с т и все сл а га е
м ы е в л е в у ю часть:
m in {М {х; х* =
%i±)} - М {х) - д = 0,
(9 .8 .9 )
то мы у в и д и м , ч т о р е ш а е м а я з а д а ч а с в о д и т с я к о б ъ е д и н е н и ю м и н и м и за ц и и и
н а х о ж д е н и я н у л ей ф у н к ц и и . Н у л и ф у н к ц и и м о ж н о н а й т и п р и п о м о щ и и т е р а
ц и о н н о го м е т о д а , п р е д с т а в л е н н о г о в р а з д . Е .2 . В о -п е р в ы х , н ул ь ф у н к ц и и (т. е.
то ч к а
Xi, у д о в л е т в о р я ю щ а я с о о т н о ш е н и ю (9 .8 .9 )) л е ж и т в п р е д е л а х м е ж д у ве
л и ч и н а м и j:smaii и Xbig , с о о т в е т с т в у ю щ и м и о т р и ц а т е л ь н о м у и п о л о ж и т е л ь н о м у
зн а ч е н и я м в ы р а ж е н и я ( 9 .8 .9 ). В о -в т о р ы х , э т о т и н т ер в а л м о ж н о с у зи т ь п у т е м
п о с л е д о в а т е л ь н о г о д е л е н и я п о п о л а м д о т е х п о р , п ок а в ы р а ж е н и е (9 .8 .9 ) н е б у
д е т о т л и ч а т ь с я о т н у л я н е б о л е е ч ем н а
д / 100. М и н и м у м ф у н к ц и и в в ы р а
ж е н и и (9 .8 .9 ) м о ж н о н а й т и п у т е м за п у с к а п р о г р а м м ы LSQN0N и л и п р о г р а м м ы
LSQMAR, ф и к с и р о в а в п р и э т о м х*. П р и в е д е н н у ю н и ж е п р о г р а м м у LSQASN м о ж н о
за п у ст и т ь н е п о с р е д с т в е н н о п о с л е в ы п о л н ен и я п р о г р а м м ы LSQN0N, п р и п о м о щ и
к о т о р о й б у д у т н а й д е н ы в ел и ч и н ы
х , С% и М (х ). Б о л ь ш и н с т в о в х о д н ы х п а р а
м етр о в д а н н о й п р о г р а м м ы с о о т в е т с т в у ю т п а р а м е т р а м н а в ы х о д е п р о г р а м м ы
LSQN0N.
Н е с и м м е т р и ч н ы е о ш и б к и д л я п р и м е р а 9 .8 п р е д с т а в л е н ы н а р и с. 9 .1 1 .
Программа 9.10.
П о д п р о г р а м м а LSQASN в ы ч и сл я ет н е с и м м е т р и ч н ы е о ш и б к и
(или д о в е р и т е л ь н ы е гр а н и ц ы ) д л я н е л и н ей н о г о с л у ч а я м е т о д а н а и м ен ь ш и х
к в а д р а т о в , и с п о л ь з у я п р о г р а м м у LSQN0N
КОМАНДА ВЫЗОВА: CALL LSQASN(USERFN,T,Y,DELT a y , n , n r ,
NRED, L I S T , X , CX, R , W, DXPLUS, DXMINS, A , SCRAT, NSTEP)
В х о д н ы е п а р а м е т р ы : u s e r f n , t , y , deltay, n , n r, nred, l i s t , x ,
C X ,R ,A ,SC R A T — т е ж е , ч т о и в п р о г р а м м е 9 .3 , LSQN0N
W— в е р о я т н о ст ь W , в с о о т в е т с т в и и с к о т о р о й в ы ч и сл ен ы д о в е р и т е л ь н ы е
гр ан и ц ы (см . ( 9 .8 .8 ) ) . Е с л и в в е д е н н о е зн а ч е н и е W < 0 , т о в ы ч и сл я ю т ся
н е си м м ет р и ч н ы е о ш и б к и (а н е д о в е р и т е л ь н ы е г р а н и ц ы ).
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а го в
В ы х о д н ы е п а р а м е т р ы : DXPLUS — r '-м е р н ы й в е к т о р о ш и б о к и л и
довер и тел ьн ы х гр ан и ц
Axi+
DXMINS — r '-м ер н ы й в е к т о р о ш и б о к и л и д о в е р и т е л ь н ы х г р а н и ц
A x i-
294 Глава 9. Метод н а и м ен ьш и х квадратов
NSTEP — к о л и ч е с т в о п о т р е б о в а в ш и х с я и т е р а ц и й . Е с л и п р о и зо ш л а о ш и бк а,
т о в е л и ч и н а NSTEP п о л а г а е т с я р а в н о й о т р и ц а т е л ь н о м у зн а ч е н и ю ( —1, если
не у д а л о с ь о с у щ е с т в и т ь м и н и м и за ц и ю , —2, есл и не у д а л о с ь н ай т и н ул ь
ф у н к ц и и ).
В е л и ч и н ы п о у м о л ч а н и ю : Е сли в в е д е н н о е зн а ч е н и е NSTEP < 0, т о б е р е т с я
NSTEP = 1 0 0 .
К о м м е н т а р и и : К в а д р а т н ы е к ор н и и з д и а г о н а л ь н ы х эл ем ен т о в м а т р и ц ы СХ
и с п о л ь зу ю т ся в к а ч ест в е н а ч а л ь н о г о п р и б л и ж е н и я д л я н е с и м м е т р и ч н ы х
ош и бок .
SUBROUTINE LSQASN(USERFN, Т , Y , DELTAY, N , NR, NRED, LIST Д О , СХ, R , W,
+DXPLUS, DXMINS, А , SCRAT, NSTEP)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
PARAMETER(NMAX=1000)
DIMENSION A ( N ,N R E D ) ,T ( N ) ,Y ( N ) , D ELTAY(N ),X 0(N R)
DIMENSION DXPLUS(NRED), DXMINS(NRED)
DIMENSION SCRAT(NRED, NRED),CX(NRED,NRED)
DIMENSION X(NM AX),LIST(NR),DX(NM AX)
COMMON /D A S V 0 3 / X,DX
PARAMETER(MAXSTP=100, E P S = 1 . D - 2 , E P S IL N = 1. D - 4 , T T = 1. D - 6 ,
+F A C T =1.5D 0)
PARAMETER(ZER0=0. 0 D 0 , 0N E = 1. DO, HALF=0. 5 D 0 , TW0=2. DO)
LOGICAL LENCLS
EXTERNAL USERFN
IF (N S T E P .L E .O ) NSTEP=MAXSTP
IF(N R .E Q .N R E D ) THEN
DO 10 1 = 1 , NR
L IS T (I)= 1
10
CONTINUE
END IF
IF (W .L E .E P S IL N ) THEN
G=0NE
ELSE
G=SQCHI2(W,NRED)
END IF
RTARG=R+G
DO 2 0 1 = 1 , NRED
D X (I)= S Q R T (C X (I, I ) )
2 0 CONTINUE
NRED1=NRED-1
DO 6 0 IVAR=1,NR
IF (L I S T (I V A R ).E Q .O ) GO TO 6 0
С ф и к си р о в а н и е з н а ч е н и я п е р е м е н н о й IVAR
L IS T (IV A R )= 0
DO 5 0 I S I G N = -1 , 1 , 2
9.8.
Доверительные области и несимметричные ошибки
SIGNUM=DBLE( ISIG N )
DEL=DX(IVAR)
LENCLS=.FALSE.
С п о л а г а е т XSMALL равным зн а ч ен и ю х в т о ч к е минимума
XSMALL=X0( IVAR)
XIVAR=X0(IVAR)+SIGNUM*DEL
DO 3 0 1 = 1 ,NSTEP
NSTEPL=-NSTEP
CALL MTXCPV(X0, X , NR)
X(IVAR)=XIVAR
CALL LSQNON(USERFN, T , Y , DELTAY, N , NR, NRED1, L IS T , X , CX,
+
R 1 , A , SCRAT, NSTEPL)
IF (N S T E P L . LT . 1 ) THEN
N STEP=-1
GO TO 7 0
END IF
С проверка усл ов и я сходи м ости
IF (A B S (R 1~R T A R G ). L T .EPS*G ) THEN
I F ( I S I G N .L T .0 ) THEN
DXMINS( IV A R )=X 0( IV A R )-X ( IVAR)
ELSE
DXPLUS( IV A R )= X (IV A R )-X 0 ( IVAR)
END IF
GO TO 4 0
ELSE
I F ( . NOT. LENCLS) THEN
С н а преды дущ ем и т е р а ц и о н н о м ш аге мы еще н е п р и б л и зи л и с ь к нулю
IF (R l.G T .R T A R G ) THEN
С н а текущ ем ш аге мы п р и б л и з и л и с ь к н ул ю , о с у щ е с т в л е н и е п е р в о г о
С д е л е н и я и н т е р в а л а п о п ол ам
LENCLS=. TRUE.
XBIG=X(IVAR)
X (IVAR)=HALF*(XBIG+XSMALL)
ELSE
С н а текущ ем ш аге мы в н о в ь н е п р и б л и з и л и с ь к нулю , у в е л и ч е н и е ш ага
DEL=DEL*TWO
X ( IVAR)=XSMALL+SIGNUM*DEL
END IF
ELSE
С п р о д о л ж ен и е д е л е н и я и н т е р в а л а п оп ол ам
IF (R l.G T .R T A R G ) THEN
XBIG=X(IVAR)
ELSE
XSMALL=X(IVAR)
END IF
295
296 Глава 9. Метод наименьших квадратов
X ( IVAR)=HALF*(XBIG+XSMALL)
END IF
XIVAR=X(IVAR)
END IF
CONTINUE
30
N STEP=-2
GO TO 7 0
40
CONTINUE
50
CONTINUE
С п е р е м е н н а я IVAR б о л е е н е я в л я е т с я ф и к си р о в а н н о й
L IS T (IV A R )= 1
6 0 CONTINUE
7 0 RETURN
END
Е сл и в м е с т о п р о г р а м м ы LSQN0N и с п о л ь з о в а т ь м о д у л ь LSQMAR, т о н е с и м
м етр и ч н ы е о ш и б к и м о ж н о в ы ч и сл и т ь п р и п о м о щ и п р о г р а м м ы LSQASM. Н и ж е
п р е д с т а в л е н а т о л ь к о к о м а н д н а я с т р о к а , за п у с к а ю щ а я п р о г р а м м у , п о с к о л ь к у
с а м а п р о г р а м м а п р а к т и ч е с к и и д е н т и ч н а п р о г р а м м е LSQASN.
Программа 9.11.
П о д п р о г р а м м а LSQASM р е ш а е т т у ж е за д а ч у , ч т о и м о д у л ь
LSQASN, н о и с п о л ь з у е т п р и э т о м п р о г р а м м у LSQMAR
К о м ан д а в ы з о в а : call l sq a sm ( u s e r f n , t , y , d e l t a y , n , n r ,
NRED,LIST,X ,CX,R ,W ,DXPLUS,DXMINS,A ,SCRAT,NSTEP)
В х о д н ы е п а р а м е т р ы : т е ж е , ч т о и в п р о г р а м м е LSQASN
В ы х о д н ы е п а р а м е т р ы : т е ж е , ч т о и в п р о г р а м м е LSQASN
В е л и ч и н ы по у м о л ч а н и ю : те же, что и в программе LSQASN
9.9. Измерения с ограничениями
Вернемся теперь к случаю, рассмотренному в разд. 9.1, когда проводились
прямые измерения интересующих нас величин. Однако пусть теперь N изме
рений не будут полностью независимыми, а будут связаны между собой при
помощи q уравнений ограничения. К примеру, можно было бы измерять три
угла треугольника. Тогда уравнение ограничения состояло бы в равенстве их
суммы 180°. Вновь попытаемся найти наилучшие оценки rjj для величин rjj.
Результаты измерений вместо этих величин дают значения
2/7 = »
7
j 3
=
1 ,2 ,..., п.
(9.9.1)
Как и раньше, давайте предположим, что ошибки измерений Ej имеют нор
мальное распределение со средним нуль: E{sj) = 0, Е(е?) = о Пусть q урав
нений ограничения имеют вид:
/*(»?) = 0,
fc = 1 ,2 ,...,д .
(9 .9 .2 )
9.9. Измерения с ограничениями 297
Давайте для начала рассмотрим простейший случай линейных уравнений
ограничения. Тогда уравнения (9.9.2) выглядят следующим образом:
^10 + ЬцТ]1 + bi2 T]2 +
^20 +
Ь21Г}1 +
ЬдО +
£>22??2 +
+ bq2 T]2 +
•‘ *+ Ь1 п7]п—О,
'“ +
b2nfHn —
*■■+ bqnr)n
0,
(9 .9 .3 )
= 0,
или в матричной записи:
Вт) + Ь0 —0.
(9.9.4)
9.9.1. Метод факторов
Несмотря на свою малую пригодность для автоматической обработки данных,
метод факторов является достаточно наглядным. Можно воспользоваться q
уравнениями вида (9.9.3) для исключения q величин г] из всех п величин.
Оставшиеся п —q величин
(г — 1. 2 ,..., п —q) будем называть факторами.
Среди исходных величин ц их можно выбирать произвольно, а можно соста
влять линейные комбинации. Тогда вектор 7? можно представить как набор
линейных комбинаций таких факторов:
V3
~
Л ‘0 +
fjlal
+ Л ‘2 ^ 2 +
•' ‘ +
fj,n -q a n-qi
j
~~
1,2, . . . , П,
(9 .9 .5 )
ИЛИ
г) — Fa. + /о-
(9.9.6)
Уравнение (9.9.6) имеет тот же вид, что и уравнение (9.2.2). Поэтому его ре
шение должно иметь вид (9.2.26), другими словами, вектор
S = (FTGyF ) ~ 1 F TGy(y - /о )
(9.9.7)
представляет собой оценку для факторов а , полученную методом наименьших
квадратов. Соответствующая ковариационная матрица имеет вид
G -1 = (FTGyF ) - 1
(9.9.8)
(см. (9.2.27)). Уточненные результаты измерений можно найти путем подста
вления оценки (9.9.7) в выражение (9.9.6):
V = F a + /о = F ( F TGyF ) ~ 1 F TGy(y - / 0) + /о-
(9.9.9)
Согласно формуле преобразования ковариационных матриц и дисперсий най
денная ковариационная матрица равна
G-
1
= F ( F TGyF)~ 1 F T = FG ~1F T.
(9.9.10)
298 Глава 9.
М ет од н а и м е н ь ш и х ква д р а т о в
Ограничение на сумму углов треугольника. Предположим, что
в результате измерений углов треугольника были получены значения у\ = 89°.
у2 = 31°, уз = 61°, т. е.
89
31
У=
62
П р и м е р 9 .9 .
Линейное уравнение ограничения имеет вид
»7i + т + т = iso.
Его можно переписать как Brj + 6о = 0 , где В = (1,1,1), 6о = Ьо = —180.
В качестве факторов выберем углы 771 и щ. Тогда система уравнений (9.9.5)
принимает вид
т
= & i,
т
=
а
2,
7?з = 180 - 0£i -
а 2
или
Предположим, что ошибка при измерении угла составляет 1 °, т. е. что
Gv = С ;1 = I.
Подставляя полученные значения в выражение (9.9.7), находим, что
/2
1 \ -1 /2 0 7 \
1/
2
V1 2 ) ушу _ 3 V-1
- 1 \ /207\
2
) ушу
В итоге, воспользовавшись соотношением (9.9.9), получаем, что
_
_
Г)= Fa + fn =
[
I
1
0
V -i
0
88i
1
- 1
■30J
+
о
о
180
9.9.
И зм ер ен и я с о гр а н и чен и ям и
299
Очевидно, что можно было ожидать получение такого результата. «Превыше
ние» на 2° суммой результатов измерений реальной суммы углов треугольника
поровну поделено между тремя результатами измерений. Однако это было бы
не так, если бы ошибки отдельных измерений имели разные величины. Чита
тель легко может провести подобные вычисления для такого случая. Остаточ
ные ошибки для уточненных наблюдений можно найти, используя соотношение
(9.9.10)
Таким образом остаточная ошибка для каждого угла равна у Ц Ъ ^0.82.
■
Сделаем теперь утверждение общего характера относительно измерений,
на которые наложены уравнения ограничения. Несмотря на то, что в исполь
зованных до настоящего момента статистических методах мы так и не нашли
способа учета систематических ошибок, во многих случаях возможность это
сделать возникает при наличии уравнений ограничения. Если к примеру при
многократных измерениях углов треугольника полученное в результате значе
ние их суммы чаще превышает 180°, нежели уступает ему, то тогда можно сде
лать вывод о том, что измерительный прибор имеет систематическую ошибку.
9.9.2. Метод множителей Лагранжа
На практике чаще используется не метод факторов, а метод множителей Ла
гранжа. Несмотря на то, что оба этих метода дают одинаковые результаты,
второй из них имеет преимущество: в нем все неизвестные обрабатываются оди
наковым образом и поэтому пользователь избавлен от необходимости выбора
факторов. Метод множителей Лагранжа широко применяется в дифференци
альном исчислении при нахождении экстремумов функционалов в задачах с
дополнительными ограничениями.
Начнем изложение этого метода с линейной системы уравнений ограниче
ния (9.9.4)
B y + 6q —0
и напомним, что измеряемые величины являются суммой истинных значений
г} и ошибок измерений е: у = у + е. Таким образом имеем систему:
B y —B e + 6q —0.
(9.9.11)
300 Глава 9.
М ет од н а и м е н ь ш и х ква д р а т о в
Поскольку значения у известны из измерений, а вектор 6о и матрица В также
выражаются через известные величины, то можно построить вектор-столбец
размерности q\
с = B y 4- Ь0,
(9.9.12)
который не будет содержать никаких неизвестных. Тогда соотношение (9.9.11)
можно переписать в виде
с - Be = 0.
(9.9.13)
Введем теперь еще один дополнительный вектор-столбец размерности q, эле
менты которого, пока еще неизвестные, назовем множителями Лагранжа:
( Mi \
М2
№=
(9.9.14)
Мд /
Используя эти обозначения, дополним минимизируемую функцию (9.2.16) М =
£TGy£ до функции
L = £TGy£ + 2цт (с —Be).
(9.9.15)
Функция L называется функцией Лагранжа. Тогда условие М = min при огра
ничении с — В £ = 0 выполнено тогда, когда полный дифференциал функции
Лагранжа равен нулю, т. е. когда
dL = 2 eTGy de - 2/хт Б de = 0.
Это эквивалентно равенству
eTGv - fjbTВ = 0.
(9.9.16)
Система (9.9.16) состоит из п уравнений и имеет п + q неизвестных: £i, £2 , . ■
£п и цх, Ц2 , . . fiq. Кроме того, еще имеются q уравнений ограничения (9.9.13).
Транспонируем уравнение (9.9.16) и получим, что
Gye = B Tii,
e = G yl B Tn .
(9.9.17)
Подставляя это соотношение в выражение (9.9.13), получим уравнение
с - B G ~l B Tn = О,
которое легко можно разрешить относительно рь:
Д = (BG~ 1 B T)~ 1 c.
(9.9.18)
9.9. Измерения с ограничениями
301
Воспользовавшись соотношением (9.9.17), соответственно получаем оценки
наименьших квадратов для ошибок измерений:
£ = G - 1B t ( B G ~ 1B t ) - 1c .
(9.9.19)
Тогда оценки для неизвестных можно получить их формулы (9.9.1):
П = у - ё = у - Gy1Вт(BGy1Вг)~1с.
(9.9.20)
Если обозначить G b = {BG y 1 S T)_1, то оценка будет иметь вид
fj= y - G - 1B TG Bc.
(9.9.21)
Ковариационные матрицы векторов Д и fj легко можно найти путем примене
ния к системам линейных уравнений (9.9.18) и (9.9.19) формулы преобразова
ния ковариационных матриц и дисперсий:
G - 1 = ( B G y 1B T ) ~ l = G B ,
(9.9.22)
G - 1 = G y 1 - G y 1B T G B B G - 1.
(9.9.23)
Пример 9.10. Применение метода множителей Лагранжа к задаче из при
мера 9.9. Применим метод множителей Лагранжа к задаче из примера 9.9.
Тогда
с = Ву
89
+ Ь0 = (1,1,1) | 31
| - 180 = 182 - 180 = 2,
62
GB = (BG yB T r ' = (1.1,1)7
- З -1 = \
Г
GyB r = I
Теперь можно вычислить оценку (9.9.21)
1
1
1
1
1
1
1 >
1
1 1
'
И(
2
-1
-1
11
!—
Тогда ковариационные матрицы равны
1
т-1
= з1
1
Сщ1 = 1 - 1
1 |5 ( 1 , 1 , и /
2
-1
-1
-1
2
302 Глава 9.
М ет од н а и м е н ь ш и х к ва д р а т о в
Обобщим теперь метод множителей Лагранжа на случай нелинейных урав
нений ограничения в общем виде (9.9.2):
f k (7j)
= 0,
к
= 1,2,
Эти уравнения можно разложить в ряды в окрестности точки щ
Здесь т]о —начальное приближение для истинных значений г). Воспользовав
шись обозначениями
( Ьц Ьх2
bln \
&21 Ь22 **’ Ь2п
\ bqi
bq2
*‘' bqn J
/ Cl \
с=
Ск = л 07о),
$к — fa*
Лко)',
&—
\ ся /
( 6г \
^2
V 5п
можно переписать соотношение (9.9.24) в виде
BS + c = 0.
(9.9.25)
В данном случае нетрудно найти начальное приближение щ , поскольку значе
ния у являются результатами измерений величин г) и их можно использовать
в качестве начального приближения, т. е. положить
i?o = У-
(9.9.26)
8 = V - г)о = г] - у - - е .
(9.9.27)
Тогда вектор S равен
Поэтому уравнение (9.9.25) принимает вид
с —B e — 0,
совпадающий с равенством (9.9.13). Его решение е задается формулой (9.9.19).
В нелинейном случае обычно не достаточно одной итерации, а требуется про
должать итерационный процесс. Начиная со второго шага, простое соотноше
ние S = —е уже не будет иметь места. Решим эту задачу тем же способом, что
и в линейном случае, минимизировав выражение
M f = STGyS
(9.9.28)
9.10.
Обобщенная формулировка метода наименьших квадратов
303
при ограничении (9.9.25). Это условие эквивалентно тому, что нужно миними
зировать взвешенную сумму квадратов разностей между двумя приближени
ями вектора г]. По аналогии с равенством (9.9.19) получаем, что эта разность
равна
_
<5 = —G~ 1 B r (BG~ 1 B T)~l c.
(9.9.29)
Результаты, полученные на конкретном шаге итерации в дальнейшем исполь
зуются для нахождения лучшего приближения для вектора г]. Если итераци
онный процесс заканчивается после выполнения s итераций, то имеем:
fj = Vs = V s-\ + 8 .
(9.9.30)
Соответствующая ковариационная матрица по-прежнему задается формулой
(9.9.23), т. е.
G~l = G~l - GyB r GBB G y \
(9.9.31)
при этом в качестве элементов матрицы В выступают значения, вычисленные
на последнем шаге итерационного процесса. Тогда оптимальные оценки для
ошибок измерений можно вычислить на основании соотношения
I —у — fj.
(9.9.32)
В итоге, используя эти оценки, получаем, что минимизируемая функция имеет
значение
М = е 1 G уе.
Эта величина может быть использована в дальнейшем при применении крите
рия хи-квадрат с q степенями свободы.
Несмотря на то, что метод множителей Лагранжа имеет красивое мате
матическое изложение, в приведенных ниже программах использован метод
ортогональных преобразований (см. разд. А.19). Мы не будем здесь приво
дить никаких программ, поскольку задачи из этого раздела можно решить
путем запуска программы более общего вида (LSQGEN), которая будет описана
в разд. 9.11 (см. также пример 9.11).
9.10. Обобщенная формулировка метода наименьших
квадратов
Разобрав частные случаи в предыдущих разделах, теперь можно перейти к
обсуждению метода наименьших квадратов в обобщенной формулировке.
Для начала напомним обозначения. Пусть г неизвестных параметров обра
зуют вектор х. Измеряемые величины представлют собой n-мерный вектор г/.
Полученные в действительности результаты измерений у отличаются от значе
ний г] на вектор ошибок в. Будем предполагать, что ошибки £j (j — 1,2, . . . , п)
отдельных измерений имеют нормальное распределение, а точнее, что величи
ны £j имеют n-мерное нормальное распределение с нулевым вектором средних
304 Глава 9.
М ет од н а и м е н ь ш и х ква д р а т о в
и ковариационной матрицей Су — Gy 1. Векторы х и т/ связаны между собой
m функциями
h (n ,r)) = fk ( x ,y - е) = 0,
k = 1,2,...,т.
(9.10.1)
Далее будем предполагать, что каким-то способом уже найдено начальное при
ближение для неизвестных xq . В качестве начального приближения для г] ис
пользуем 770 = у (то же, что и в разд. 9.9). И наконец, потребуем, чтобы функ
ции fk можно было аппроксимировать линейными функциями в пределах обла
сти допустимых значений параметров нашей задачи, т. е. в окрестности точки
(®о^о)) задаваемой разностями х — Xq и 77 —
Тогда можно записать, что
fk(x,r]) = /fc(sc0li7o) + ' d h \
(хг - avo)
(Xi - X10 ) H------ 1- ( ^ )
V
/
X0tV0
ч9*1/*о,Чо
'dfk
(9.10.2)
+
(m - mo) + ■■■ + (f-—)
(Vn-Vno)\dr)n J X0!V0
dm. &o,Vo
При обозначениях
(
( df k \
а ы = \Ш -е) &o,Vo
«11
« 12
« lr
« 21
« 22
«2r-
A =
«m r
\
(9.10.3)
/
«m l
«m 2
/ 6ц
i>21
612
bin \
&22
b‘2n
^ml
^rn2
bmn )
\
В
(9.10.4)
®сь*7о
c—
с*; —fk (x 0 ,m ),
/ «1 \
«2
(9.10.5)
\ «m /
£ = Ж- *0.
(9.10.6)
<5 = V “ ?7o
систему уравнений (9.10.2) можно переписать следующим образом:
Л£ + £<5 + с = 0.
(9.10.7)
Функция Лагранжа равна
L
= S ^ G y S + 2 ц г ( А £ + B S + с).
(9.10.8)
Здесь рь —т-мерный вектор множителей Лагранжа. Потребуем, чтобы полный
дифференциал функции (9.10.8) по <5 был равен нулю. Это требование экви
валентно условию
GyS 4 В^ jjb
-
—
0
9.10. Обобщенная формулировка метода наименьших квадратов 305
или
ё = - С р В тц,
(9.10.9)
Подставляя это выражение в соотношение (9.10.7), получаем
А£ - B G p В ту, + с = 0,
(9.10.10)
М = GB(A£ + с),
(9.10.11)
откуда
где
gb
= {b g - 1 b t ) - \
(9.10.12)
Воспользовавшись равенством (9.10.9), можем теперь записать
6 = - G ^ 1 B TGB ( M + c).
(9.10.13)
Поскольку функцию Лагранжа L нужно также минимизировать по £. то пол
ный дифференциал функции (9.10.8) по £ также должен быть равен нулю, т. е.
2Д
а
=
о.
Транспонируя это равенство и подставляя в него соотношение (9.10.11), полу
чаем, что
2ATGB(A£
+ с) = 0
ИЛИ
£ = - ( A TGBA )~ 1 ATGBC.
(9.10.14)
Подставляя выражение (9.10.14) в соотношения (9.10.13) и (9.10.11), сразу же
получаем оценки для отклонений S и для множителей Лагранжа рь:
ё = - G ~ 1 B t G b (c - A (A t G b A)~ 1 A t G b c),
(9.10.15)
Д = GBA(c - A{ATGBA ) - 1 ATGBc).
(9.10.16)
Оценки для параметров х и для уточненных измерений величин г] равны
х =
+
rj — щ + S.
(9.10.17)
(9.10.18)
Из соотношений (9.10.14), (9.10.4) и (9.10.5) находим матрицу, состоящую из
производных компонент вектора £ по компонентам вектора у:
ду
= - ( A TGBA ) - 1 ATGB ~ = ~ (А Т G в А)~г АтG в В .
ду
Используя формулу преобразования ковариационных матриц и дисперсий, получаем ковариационную матрицу
G31 = G~1 = (ATGBA ) - 1.
(9.10.19)
306
Глава 9. М етод
наименьших квадратов
Аналогично находим
G z 1 = G - 1- G - 1B TG B B G y 1+ G - 1B TGBA(ATG B A ) - 1ATGBB G ; 1. (9.10.20)
Можно показать, что при сделанных предположениях, т. е. при линеаризуемости функции (9.10.2) и нормальной распределенности ошибок измерений,
минимизируемая функция М, которую можно также записать в виде
М = (Be)TGB( B e ),
(9.10.21)
имеет хи-квадрат распределение с m —г степенями свободы.
Если уравнения (9.10.1) линейны, то соотношения (9.10.17)-(9.10.20) уже
являются окончательным решением. В нелинейном случае их рассматривают
как первую уточненную оценку, т. е. заменяют асо,
на х, fj и заново вычисля
ют матрицы (9.10.3)-(9.10.5) и, используя их, получают следующие уточнен
ные оценки (9.10.14)—(9.10.18). Итерационный процесс может продолжаться до
тех пор, пока не будет найдено достаточно хорошее решение. Вообще говоря,
определить, какое решение является достаточно хорошим, нелегко. Простей
ший способ определения этого заключается в анализе значения М после ка
ждого итерационного шага. Итерационный процесс завершается тогда, когда
при переходе к следующей итерации значение М изменяется меньше, чем на
заданную малую величину. Естественно, может случиться, так, что величина
М совсем не убывает, т. е. итерационный процесс не сходится. В этом случае
необходимо выявить причины этого, проанализировав пункты (a)-(d), приве
денные в конце разд. 9.7. Более строгие условия для определения достаточной
точности решения будут зависеть от конкретной решаемой задачи.
9.11. Программа для метода наименьших квадратов в
обобщенной формулировке
В программе, реализующей метод наименьших квадратов в обобщенной фор
мулировке, не используется метод множителей Лагранжа. Вместо него приме
няется метод из разд. А. 19, основывающийся на ортогональных преобразова
ниях.
На каждом итерационном шаге необходимо найти г-мерный вектор £ и
n-мерный вектор 8 . Объединим оба этих вектора в (г + п)-мерный вектор и
(9.11.1)
Матрицу А размера m х г и матрицу В размера m х п также объединим в
матрицу Е размера m х (г + п)
Е = (А, В),
(9.11,2)
Вектор решения и должен удовлетворять ограничениям (9.10.7), т. е.
Е й ~ d,
d —-с.
(9.11.3)
9.11. Программа для метода наименьших квадратов 307
Рассмотрим теперь функцию, минимизируемую на г-м итерационном шаге.
Она зависит от вектора
i
i —1
Tl = y + ' ^ 2 s e = z y + ^ 2 S e + Si = y + s + S,
£=1
S
= S it
(9.11.4)
£~l
где
i —1
s = Y ,S e
(9.11.5)
£=1
является результатом уточнения вектора у на всех предыдущих итерациях.
Тогда имеем
М = (г) ~ y)TGy(7] - у) = (S + s)TGy(S + s) = m in .
(9.11.6)
Дополним теперь матрицу Gy размера п х п д о матрицы размера (г+тг) х (г + тг)
g= ( ogJ } » '
и в соответствии с методами разд. А. 10 найдем для нее разложение Холецкого
G = F r F.
Тогда соотношение (9.11.6) принимает вид
(9.11.8)
М = (u + t)TG(u + t) = (F u 4- F t )2 = min
или
(F u —b)2 = min,
(9.11.9)
где
b = - F t.
(9.11.10)
Теперь остается только решить задачу (9.11.9) при ограничении (9.11.3), на
пример, методом из разд. А. 19. Решение
а также найденные векторы £ и 8 дают уточненные значения для векторов х
[см. (9.10.17)], г] [см. (9.10.18)] и 5, а также для t [см. (9.11.5) и (9.11.10)], на
основании которых выполняется следующий шаг итерационного процесса.
Этот процесс можно считать сходящимся и завершить его тогда, когда при
двух последовательных итерациях значение минимизируемой функции (9.11.9)
будет изменяется лишь на незначительную величину, или же его можно счи
тать расходящимся и завершить при отсутствии результата (если после задан
ного числа итераций процесс так и не сошелся). В случае сходимости кова
риации между неизвестными можно вычислить по формуле (9.10.19). Можно
также по формуле (9.10.20) найти ковариационную матрицу для «уточненных»
результатов измерений rj. Однако она редко представляет интерес.
В заключение полученное на последнем шаге итерационного процесса зна
чение величины М можно использовать при осуществлении критерия согласия
хи-квадрат с m — г степенями свободы.
308 Глава 9.
М ет од н а и м е н ь ш и х ква д р а т о в
Программа 9.12.
П о д п р о г р а м м а LSQGEN р е а л и з у е т м е т о д н а и м ен ь ш и х к в а д р а
тов в о б о б щ е н н о й ф о р м у л и р о в к е
КОМАНДА ВЫЗОВА: CALL L SQ G E N (Y ,C Y ,F Y ,F ,E ,M ,N ,N R ,N R E D ,
L I S T , X , CX, R , A 2 , NSTEP)
В х о д н ы е п а р а м е т р ы : Y — n -м е р н ы й в ек т о р р е зу л ь т а т о в и зм е р е н и й у
CY — к о в а р и а ц и о н н а я м а т р и ц а
Су р а з м е р а п х п д л я р е зу л ь т а т о в
и зм е р е н и й
FY — р а б о ч и й м а сси в , м и н и м а л ь н ы й р а з м е р к о т о р о г о п х п
F — р а б о ч и й м а сси в , м и н и м а л ь н ы й р а з м е р к о т о р о г о
Е — р а б о ч и й м а сси в , м и н и м а л ь н ы й р а з м е р к о т о р о г о
М— к о л и ч ест в о у р а в н е н и й о г р а н и ч е н и я
N — к о л и ч ест в о и зм е р е н и й п
(п + г) х (п + г)
m х (n -F г)
m
NR — к о л и ч е с т в о н е и з в е с т н ы х г
NRED — у м е н ь ш е н н о е ч и с л о н е ф и к с и р о в а н н ы х н е и зв ес т н ы х rf
L I S T — r-м ер н ы й в е к т о р , эл ем ен т ы к о т о р о г о у к азы в аю т, к ак и е и з г
н е и зв ес т н ы х ф и к с и р о в а н ы (эл е м е н т в е к т о р а — 0) и л и и зм е н я ю т с я
(эл ем ен т в е к т о р а — 1)
X — r-м ер н ы й в е к т о р н а ч а л ь н о г о п р и б л и ж е н и я (и л и ф и к с и р о в а н н ы х
к о м п о н ен т ) д л я х
А2 — р а б о ч и й м а сси в , м и н и м а л ь н ы й р а з м е р к о т о р о г о (n -Р г) х (п 4- г — гп)
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а г о в . Е с л и о н о
о т р и ц а т е л ь н о , то к о в а р и а ц и о н н а я м а т р и ц а СХ или CY н е в ы ч и сл я ет ся .
В ы х о д н ы е п а р а м е т р ы : X — r -м е р н ы й в ек т о р н е и зв е с т н ы х х
Y — n -м ер н ы й в ек т о р у т о ч н е н н ы х р е зу л ь т а т о в и зм е р е н и й fj
СХ — к о в а р и а ц и о н н а я м а т р и ц а С% д л я н е и зв е с т н ы х р а з м е р а г' х г' (п р и
г' > 0)
CY — к о в а р и а ц и о н н а я м а т р и ц а Сщ д л я у т о ч н е н н ы х р е зу л ь т а т о в и з м е р е н и й
р а з м е р а п х п (п р и rf > 0)
R — зн а ч е н и е м и н и м и зи р у е м о й ф у н к ц и и М
NSTEP — к о л и ч е с т в о п р о в е д е н н ы х и т е р а ц и о н н ы х ш агов . Е сл и п р о и зо ш л а
ош и бк а, т о зн а ч е н и е NSTEP б у д е т о т р и ц а т е л ь н ы м ( —1: н е с х о д и т с я
а л г о р и т м MTXLSC, —2: з а з а д а н н о е к о л и ч е с т в о и т е р а ц и й сам м е т о д н е
с х о д и т с я , —3: н е в о з м о ж н о о с у щ е с т в и т ь ч и с л е н н о е д и ф ф е р е н ц и р о в а н и е ).
В е л и ч и н ы п о у м о л ч а н и ю : Е сли н а в х о д е зн а ч е н и е п а р а м е т р а NSTEP
п о л а га ется р ав н ы м н у л ю , т о м а к с и м а л ь н о е к о л и ч е с т в о в ы п ол н ен н ы х
и т ер а ц и й б у д е т р а в н о 100. В д в у х н а и б о л е е ч а с т о в с т р е ч а ю щ и х ся с л у ч а я х ,
к о г д а NRED = NR и к о г д а NRED = 0 , н е т р е б у е т с я з а д а в а т ь в я в н о м в и д е
в ек т о р LIST. Т ем н е м е н е е в л ю б о м с л у ч а е r -м е р н ы й в ек т о р LIST д о л ж е н
в ы ст у п а т ь в к а ч ест в е р а б о ч е г о м а с с и в а .
К о м м е н т а р и и : П о л ь зо в а т е л ь д о л ж е н н а п и са т ь п о д п р о г р а м м у с и м ен ем
LSQGFN, с о о т в е т с т в у ю щ у ю о п и с а н и ю ф у н к ц и и 9 .1 3 . Е сл и м а т р и ц у
Е
м о ж н о (и л и н у ж н о ) в ы ч и сл и т ь а н а л и т и ч е с к и м и м е т о д а м и , т о к р о м е э т о г о
н е о б х о д и м о з а м е н и т ь п р о г р а м м у Е .З (AUXDRG) н а п р о г р а м м у , н а п и са н н у ю
9.11.
Программа д л я метода наименьших квадратов
309
пользователем. Эта программа должна иметь то же имя и тот же набор
аргументов, и должна производить дифференцирование.
SUBROUTINE LSqGEN(Y,CY,FY,F,E,M,N,NR,NRED,L I S T ,X ,C X ,R ,
+
А 2 , NSTEP)
IMPLICIT DOUBLE PRECISION ( A -H .O -Z )
DOUBLE PRECISION LSQGFN
PARAMETER(LMAX=1050)
DIMENSION Y ( N ) , C Y ( N , N ) , X ( N R ) , CX(NRED, NRED), LIST(NR)
DIMENSION E ( M ,N + N R E D ),F Y (N ,N ), F(N+NRED, N+NRED), A2(N+NRED,* )
DIMENSION D(LMAX),T(LMAX),B(LMAX),U(LMAX)
COMMON /D A S V 0 3 / D , T , B , U
PARAMETER(MAXSTP=1 0 0 , E P S IL N = 1 . D - 8 , T T = 1 . D - 1 5 , ZER0=0. DO)
LOGICAL OK, COVMAT
С м е т о д наименьших к в а д р а т о в в об о б щ е н н о й ф о р м у л и р о в к е
0 К = . TRUE.
C0VMAT=. TRUE.
IF (N S T E P .L T .O ) THEN
C0VMAT=.FALSE.
NSTEP=ABS(NSTEP)
END I F
I F (N S T E P . LT . 1 ) NSTEP=MAXSTP
IF (N R .G T .O ) THEN
С Случай NR=NRED:
з а п о л н е н и е з н а ч е н и я м и в е к т о р а LIST
IF(NR.EQ.NRED) THEN
DO 10 1 = 1 , NR
10
L IS T (I)= 1
CONTINUE
END IF
END IF
L=N+NRED
CALL MTXZRV(T,L)
CALL MTXTRA(CY, F , N , N)
CALL MTXCHI(CY,FY,N)
CALL MTXCHL( CY, F Y , N)
CALL MTXTRA(F,CY,N,N)
С начало итерационного п р о ц есса
R=ZER0
DO 5 0 ISTEP=1,NSTEP
RLST=R
CALL MTXZER(F,L,L)
CALL M T X P S M (F ,F Y ,L ,L ,N ,N ,N R E D +1, NRED+1)
DO 2 0 K=1,M
D(K)=-LSQGFN( Y , X , N , NR,K)
20
CONTINUE
С Численное дифференцирование
310 Глава 9. Метод наименьших квадратов
CALL AUXDRG (X,Y,M ,N,NR,NRED,LIST,E,O K)
IF (.N O T .O K ) THEN
NSTEP=-3
GO TO 6 0
END I F
CALL MTXCHM( F , T , В , L , 1 )
CALL M T X M S V (B ,B ,D B L E (-1.) ,L )
CALL M T X L S C ( F ,B ,E ,D ,U ,R ,A 2 ,L ,L ,M ,D B L E ( 0 .) ,0K )
IF (.N O T .O K ) THEN
NSTEP=-1
GO TO 6 0
END I F
IF(NRE D.G T.O ) THEN
IRED=0
DO 3 0 1 = 1 , NR
I F ( L I S T ( I ) . N E . O ) THEN
IRED=IRED+1
30
X (I)= X (I)+ U (IR E D )
END I F
CONTINUE
END I F
DO 4 0 1 = 1 , N
Y (I)= Y (I)+ U (I+ N R E D )
T ( I+NR ED)=T(I+NR ED )+U( I+NRED)
40
CONTINUE
С проверка условия сходим ости
I F ( I S T E P .G T . 1 . AND. A B S (R -R L S T ). LT. EPSiLN*R+TT) THEN
NSTEP=ISTEP
IF(COVMAT) THEN
С в ы ч и с л е н и е матрицы GB
CALL AUXDRG(X, Y , M, N , NR, NRED, L I S T , E , OK)
IF (.N O T .O K ) THEN
NSTEP=-3
GO TO 6 0
END IF
CALL M TX G SM (E,A 2,M ,L,M ,N,1,NR ED +1)
CALL M TXMBT(CY,A2,F,N,N,M )
CALL MTXMLT( A 2 , F , FY , M, N , M)
CALL MTXCHI(FY,F,M)
С т е п е р ь в м а с с и в е FY с о д е р ж и т с я м атр и ц а GB
IF(N R E D .G T.O ) THEN
CALL MTXGSM(E,A2,M,L,M,NRED,1 , 1 )
CALL MTXMAT( A 2 , F Y , F , NRED, M, M)
CALL MTXMLT(F,A2,CX,NRED,M,NR)
CALL MTXCHI(CX, F , NRED)
9.11. Программа для метода наименьших квадратов 311
С т е п е р ь в м а с с и в е СХ с о д е р ж и т с я к о в а р и а ц и о н н а я м атр и ц а д л я
С н еи зв естн ы х
ELSE
CALL MTXMLT( А 2 , CY, F , М, N , N)
CALL M TXM LT(FY,F,A2,M ,M ,N)
CALL MTXMAT(F, A 2 , FY , N , M, N)
CALL MTXSUB(CY, FY , CY, N , N)
С т е п е р ь в м а с с и в е CY с о д е р ж и т с я к о в а р и а ц и о и н а я м а т р и ц а д л я
С ’уточ н ен н ы х’ р е зу л ь т а т о в и зм ер ен и й
END IF
END IF
GO TO 6 0
END IF
5 0 CONTINUE
NSTEP=-2
6 0 RETURN
END
Аппроксимация прямой результатов измерений, имеющих
ошибку как по оси абсцисс, так и по оси ординат. Допустим, задана по
следовательность результатов измерений координат (£*, s») точек на плоскости
(t,s). Все измерения имеют ошибки А и , Asi, которые, вообще говоря, могут
коррелировать между собой. Ковариация между ошибками измерений AU и
Asi равна с*. Поставим в соответствие величинам U и s* n-мерный вектор ре
зультатов измерений у :
П р и м е р 9 .1 1 .
V l - t u У2 =
Ковариационная матрица равна
уп_1 = £n/2,
Ш г )2
Cl
Cl
(A s i )2
0
0
0
0
0
0
(A t 2 ?
C2
y n = S nj2'
0
0
\
C2
( 4 s 2)2
V
/
Прямая на плоскости (£, s) описывается уравнением s = х\ + Хчt. В пред
положении, что заданная таким образом прямая проходит через точки, явля
ющиеся результатами измерений, уравнения ограничения (9.10.1) принимают
вид
f k { x , Г)) = Г)2к - X I - Х 2 Г )2 к -1
= 0 ,
к = 1 , 2 , . . . , п / 2.
Ввиду наличия слагаемого вида ХчЩк- i это уравнение не является линейным.
Производные по гучк~\ зависят от хч, а производные по хч зависят от Щк-х- То
гда программа LSQGFN, написанная пользователем, для данного примера будет
иметь приведенный ниже вид. Описание программы сходно с описанием всех
остальных программ, в которых реализован метод наименьших квадратов в
обобщенной формулировке.
312
Глава 9. Метод наименьших квадратов
Программа 9.13. Функция LSQGFN вычисляет значения функции Д(гс, ту) ме
тодом наименьших квадратов в обобщенной формулировке
К оманда вы зо в а :
f =LSQGFN( e t a , x , n , n r , k )
В х о д н ы е п а р а м е т р ы : ЕТА — n -м е р н ы й в е к т о р р е зу л ь т а т о в и зм е р е н и й ту
X — r -м ер н ы й в е к т о р н е и з в е с т н ы х
х
N, NR — р а з м е р н о с т и п , г
К — и н д ек с
Выходной
к
парам етр:
Значение функции LSQGFN — Д(ж, ту)
К о м м е н т а р и и : Ф у н к ц и ю с и м е н е м LSQGFN с п е р е ч и с л е н н ы м вы ш е сп и ск о м
а р г у м е н т о в д о л ж е н н а п и са т ь сам п о л ь зо в а т е л ь . П р и в е д е н н а я н и ж е
п рогр ам м а н ап и сан а д л я ч астн ого сл уч ая. С ее пом ощ ью р еш ается за д а ч а
а п п р о к си м а ц и и п р я м о й р е зу л ь т а т о в и зм е р е н и й к о о р д и н а т т о ч е к п р и
н ал и ч и и о ш и б о к как п о о с и а б с ц и с с , так и п о о с и о р д и н а т (см . п р и м ер 9 .1 1 ).
DOUBLE PRECISION FUNCTION L SQ G FN (E T A ,X ,N ,N R ,К)
IMPLICIT DOUBLE PRECISION (A -H .O -Z )
DIMENSION X (N R ),E T A (N )
С в ы ч и сл ен и е у р а в н е н и й о г р а н и ч е н и я д л я а п п р ок си м ац и и прям ой
С р езул ь т атов
С и зм е р е н и й с ошибками к ак п о о с и а б с ц и с с , т а к и п о о с и о р д и н а т
L S Q G F N = E T A (2 * K )-X (1 )-X (2 )* E T A (2 * K -1 )
END
Аппроксимация прямой результатов измерений координат четырех точек
представлена на рис. 9.12. Примеры, изображенные на разных рисунках, отли
чаются только значением коэффициента корреляции для результата измерения
координат третьей точки: р3 = 0.5 и р3 = —0.5. Взглянув на графики, можно
увидеть значительное влияние знака коэффициента р3 на результат аппрокси
мации и, в частности, на значение минимизируемой функции.
■
Пример 9.12. Фиксирование отдельных параметров. На рис. 9.13 представле
ны результаты аппроксимации прямой результатов измерений координат точек
при наличии ошибок как по оси абсцисс, так и по оси ординат. На разных гра
фиках фиксирован один из параметров прямой. На верхнем графике это х\ —
свободный член (координата пересечения с вертикальной осью), а на нижнем
графике это Х2 —угол наклона прямой.
■
9.12. Использование программы для метода
наименьших квадратов в обобщенной формулировке при
измерениях с ограничениями
Если фиксировать все параметры х \ , . . . , жг, то в задаче наименьших квадратов
не останется неизвестных.
В уравнениях ограничения (9.10.2) переменными будут только величины
ту. Таким образом, во всех формулах из предыдущих разделов те слагаемые, в
л н
та пересечения с вертикальной осью ),
является
угол наклона прямой,
Л с\3
И в
рений (но осям t и s ), а так ж е соответствую щ ие эллипсы равны х
вероятностей. Н а к аж дом граф и ке представлены результаты аппроксимации, ош ибки и к оэф ф ф и ц и ен ты корреляции.
CM
о
в
’К
314
Глава 9.
Метод наименьших квадратов
которых участвует матрица А , будут равны нулю. Тем не менее в этом случае,
как и раньше можно вычислить уточненные значения результатов измерений
fj. Кроме того, величину М можно использовать при реализации критерия хиквадрат с m степенями свободы при проверке того, в какой мере результаты
измерений согласуются с уравнениями ограничения. И наконец, можно вы
числить ковариационную матрицу
для уточненных значений результатов
измерений.
С математической точки зрения (а также при использовании программы
LSQGEN) задача будет вырожденной либо в случае, когда все переменные фик
сированы (г ф 0, т! — 0), либо когда с самого начала уравнения ограничения,
а следовательно, и программа LSQGFN, не зависят от переменных х (г = 0). В
обоих случаях программа LSQGEN будет выдавать одно и то же решение.
Пример 9.13. Критерий согласил хи-квадрат заданной прямой с результата
ми измерения координат точек при наличии ошибок как по оси абсцисс, так
и по оси ординат. Будем использовать те же данные, что и в примерах 9.11
и 9.12. Результаты анализа этих данных при помощи программы LSQGEN при
фиксированных параметрах приведены на рис. 9.14. На верхнем графике бы
ли фиксированы параметры х\ и х^ - Они были положены равными значениям,
полученным в примере 9.11 при аппроксимации данных прямой с двумя из
меняемыми параметрами (см. рис. 9.12). Очевидно, что в данном случае мы
получили то же самое значение М, что и раньше. При построении нижнего
графика были использованы произвольные достаточно грубые оценки (х\ = 0,
x*i = 0.5). В результате полученное значение величины М существенно увели
чилось. Согласно этому значению, нужно было бы при уровне значимости 99 %
отвергнуть гипотезу о том, что данные описываются линейной зависимостью
с данными параметрами (Хо.99 ~ 13.28 при четырех степенях свободы).
Интересно также рассмотреть уточненные значения результатов измерений
fj и их ошибки, которые изображены на рис. 9.14. Естественно, уточненные ре
зультаты измерений лежат на прямой. Ошибки измерений равны квадратным
корням из диагональных элементов матрицы Сц. Коэффициенты корреляции
между ошибками измерений по s и по t получены на основании соответству
ющих элементов матрицы С^, лежащих вне диагонали. Они в точности равны
единице. Эллипсы равных вероятностей для отдельных уточненных измере
ний вырождаются в отрезки, лежащие на прямой, заданной коэффициентами
х и х 2.
л
9.13. Доверительная область и несимметричные ошибки
в общем случае
Результаты, полученные в разд. 9.8 для доверительной области и несимметрич
ных ошибок, остаются верными и в общем случае. Поэтому можно ограничить
ся описанием программы и обсуждением одного примера.
9.13.
Доверительная область и несимметричные ошибки
Xrs 0.067, xj= 0.643, М= 3.108, NSTEP=
3 15
2
t
х^= 0.000, xj= 0.500, M=16.417, NSTEP=
2
t
Р и с . 9 .1 4 . И зм ерения с ограничениями. П роверялась ги п отеза о том, действительно
ли истинные значения координат изм еряем ы х точек, изображ енны е на рисунке как
центры эллипсов равны х вероятностей, л еж ат на прямой з = х\ + X2 t. Воспользовав
шись найденны м численны м значением М . м ож но осущ ествить проверку гипотезы
на основании критерия хи -к вадрат с четы рьмя степеням и свободы. Н а граф ике так
ж е представлены уточненны е результаты измерений, леж ащ ие на данной прямой, и
их ошибки.
Программа 9.14.
П о д п р о г р а м м а LSQASG в ы ч и сл я ет н е с и м м е т р и ч н ы е о ш и б к и
(и л и д о в е р и т е л ь н ы е гр а н и ц ы ) д л я м е т о д а н а и м ен ь ш и х к в а д р а т о в в о б о б щ е н
н ой ф о р м у л и р о в к е , и с п о л ь з у я п р о г р а м м у LSQGEN
КОМАНДА в ы з о в а : CALL LSQASG( Y, CY, FY, F , Е , М, N, NR, NRED,
L IS T , X , CX, R , W, DXPLUS, DXMINS, A 2 , NSTEP)
В х о д н ы е п а р а м е т р ы : Y,CY — в х о д н ы е п а р а м ет р ы п р о г р а м м ы LSQGEN
М, N , NR, NRED, L I S T }X , CX, R , FY , F — п а р а м е т р ы н а в ы х о д е п р о г р а м м ы
LSQGEN
А2-— р а б о ч и й м а с с и в , м и н и м а л ь н ы й р а з м е р к о т о р о г о (п 4- г) х (п + г — т )
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и й п р и к а ж д о м за п у с к е
п р о г р а м м ы LSQGEN
316
Глава 9.
Метод наименьших квадратов
V — в е р о я т н о ст ь
W , д л я к о т о р о й в ы ч и с л я ю т с я д о в е р и т е л ь н ы е гр ан и ц ы
[см. (9 .8 .6 )]. Е с л и в в е д е н н о е зн а ч е н и е V < 0 , т о в ы ч и сл я ю т ся
н е си м м ет р и ч н ы е о ш и б к и . В п р о т и в н о м с л у ч а е в ы д а ю т с я н е с и м м е т р и ч н ы е
д о в е р и т е л ь н ы е гр ан и ц ы .
В ы х о д н ы е п а р а м е т р ы : DXPLUS — г '-м е р н ы й в е к т о р о ш и б о к (и л и
довер и тел ьн ы х грани ц)
A x i+
DXMINS— / - м е р н ы й в е к т о р о ш и б о к (и л и д о в е р и т е л ь н ы х г р а н и ц ) А х { NSTEP — к о л и ч е с т в о и т е р а ц и о н н ы х ш а г о в , п о т р е б о в а в ш и х с я п р и п о с л е д н е м
за п у ск е п р о г р а м м ы LSQGEN. Е с л и п р о и з о ш л а ош и б к а , т о зн а ч е н и е NSTEP
б у д е т о т р и ц а т е л ь н ы м ( —1: н е в о з м о ж н о о с у щ е с т в и т ь м и н и м и за ц и ю , —2: не
у д а л о с ь н а й т и н у л ь ф у н к ц и и ).
В е л и ч и н ы п о у м о л ч а н и ю : Е с л и в в е д е н н о е зн а ч е н и е NSTEP < 0, т о п о
у м о л ч а н и ю п о л а г а е т с я NSTEP = 1 0 0 .
SUBROUTINE L S Q A S G (Y ,C Y ,F Y ,F ,E ,M ,N ,N R ,N R E D ,L IS T ,X O ,C X ,R ,W ,
+DXPLUS, DXMINS, A 2 , NSTEP)
IMPLICIT DOUBLE PRECISION (A -H .O -Z )
PARAMETER(NMAX=1000)
DIMENSION Y (N ),C Y (N ,N ),X 0 (N R ),C X (N R E D ,N R E D ), LIST (N R )
DIMENSION E (M ,N + N R E D ),F Y (N ,N ), F(N+NRED, N+NRED),A2(N+NRED,* )
DIMENSION X(NMAX), DXPLUS(NRED), DXMINS(NRED),DX(NMAX)
DIMENSION YSAV(NMAX)
COMMON /D A S V 0 4 / X,DX,YSAV
PARAMETER(MAXSTP=100, E P S = 1 . D - 2 , E P SIL N =1. D - 4 , T T = 1. D - 6 ,
+ F A C T -1. 5D 0)
PARAMETER( Z E R 0=0. 0 D 0 , 0N E = 1. DO, HALF=0. 5 D 0 , T V 0= 2. DO)
LOGICAL LENCLS
IF (N S T E P .L E .O ) NSTEP=MAXSTP
IF(N R .E Q .N R E D ) THEN
DO 10 1 = 1 , NR
L IS T (I)= 1
10
CONTINUE
END IF
IF (W .L E .E P S IL N ) THEN
G=0NE
ELSE
G =SQCHI2(V, NRED)
END IF
RTARG=R+G
DO 2 0 1 = 1 , NRED
D X (I)= S Q R T (C X (I, I ) )
2 0 CONTINUE
NRED1=NRED-1
CALL MTXCPV( Y , YSAV, N)
DO 6 0 IVAR=1,NR
9,13.
Доверительная область и несимметричные ошибки
317
IF (L I S T (I V A R ).E Q .O ) GO ТО 6 0
С т е п е р ь п е р е м е н н а я IVAR з а ф и к с и р о в а н а
L IS T (IV A R )= 0
DO 5 0 I S I G N = -1 , 1 , 2
SIGNUM=DBLE( ISIG N )
DEL=DX(IVAR)
LENCLS=.FALSE.
С
п е р е м е н н а я XSMALL п о л а г а е т с я р а в н о й зн а ч ен и ю x в т о ч к е минимума
XSMALL=X0(IVAR)
XIVAR=X0( IVAR)+SIGNUM*DEL
DO 30 1 = 1 ,NSTEP
NSTEPL=NSTEP
CALL MTXCPV(XO, X , NR)
X(IVAR)=XIVAR
CALL MTXCPV(YSAV, Y , N)
+
CALL L S Q G E N (Y ,C Y ,F Y ,F ,E ,M ,N ,N R ,N R E D 1 ,L IS T ,X ,C X ,R 1 ,A 2 ,
NSTEPL)
IF (N S T E P L . L T . 1 ) THEN
NSTEP=-1
GO TO 7 0
END IF
С проверк а услови я сходи м ости
IF (A B S (R 1-R T A R G ). LT.EPS*G ) THEN
I F ( I S I G N .L T .0 ) THEN
DXMINS( IV A R )=X 0( IV A R )-X (IV A R )
ELSE
DX PLU S(IVAR )=X (IV AR )-XO (IV AR )
END IF
GO TO 4 0
ELSE
I F ( . NOT. LENCLS) THEN
С н а преды дущ ем и т е р а ц и о н н о м ш аге мы еще н е п р и б л и зи л и с ь к нулю
IF(R 1.G T .R T A R G ) THEN
С н а текущ ем ш аге мы п р и б л и з и л и с ь к нулю , о с у щ е с т в л я е т с я д е л е н и е
С и н т е р в а л а п оп ол ам
LENCLS=. TRUE.
XBIG=X(IVAR)
X (IVAR)=HALF*(XBIG+XSMALL)
ELSE
С н а текущ ем ш аге мы в н о в ь н е п р и б л и зи л и с ь к н ул ю , у в е л и ч е н и е ш ага
DEL=DEL*TWO
X (IVAR)=XSMALL+SIGNUM*DEL
END IF
ELSE
С п р о д о л ж ен и е д е л е н и я и н т е р в а л а п оп ол ам
318
Глава 9.
Метод наименьших квадратов
IF (R l.G T .R T A R G ) THEN
XBIG=X(IVAR)
ELSE
XSMALL=X( IVAR)
END IF
X ( IVAR)=HALF*(XBIG+XSMALL)
END IF
XIVAR=X(IVAR)
30
END IF
CONTINUE
NSTEP=-2
GO TO 7 0
40
CONTINUE
50
CONTINUE
С т е п е р ь п е р е м е н н а я IVAR в н о в ь н е ф и к с и р о в а н а
L IS T (IV A R )=1
6 0 CONTINUE
7 0 RETURN
END
Программа
9 .1 5 . П о д п р о г р а м м а LSQCQG с т р о и т
довер и тел ьн ую
область
на
п л о с к о с т и , н а т я н у т о й н а о с и , с о о т в е т с т в у ю щ и е д в у м п а р а м е т р а м , зн а ч е н и я
к о т о р ы х бы л и н а й д ен ы м е т о д о м н а и м ен ь ш и х к в а д р а т о в в о б о б щ е н н о й ф о р
м ул и р ов к е
К оманда вы зо в а :
call ls q c o g ( I X , j x , x i o , x j o , d x i , d x j ,
N X I , NXJ, FC0NT, Y , CY, GY, F , E , M, N , NR, X 0 , A2)
В ходные п а ра м етры :
, j x , x i o #x j o , d x i , d x j , n x i , n x j , f c o n t >x o — т е ж е ,
ч то и в п р о г р а м м е LSQC0N, см . п р о г р а м м у 9.9
Y , C Y , F Y , F , E , M , N , N R , A 2 — те ж е , ч т о и в п р о г р а м м е LSQGEN, см .
п р о г р а м м у 9 .1 2
ix
КОММЕНТАРИИ: т е ж е , ч т о и в п р о г р а м м е LSQGEN, см . п р о г р а м м у 9 .1 2
SUBROUTINE LSQCQG( I X , J X , XI O, XJO, D X I , DXJ, N X I , NXJ, FC0NT, Y , CY,
+ G Y , F , E , M , N , N R , X 0 , A2)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION Y ( N ) , C Y ( N , N ) , X 0 ( N R ) , E ( M , N ) , G Y ( N , N ) , F ( N , N ) , A 2 ( N , * )
DIMENSION . XI ( 2 ) , F U N ( 2 , 2 )
PARAMETER(NRMAX=100,NMAX=1000)
DIMENSION YSAV(NMAX),LIST(NRMAX)
COMMON /D A S V 0 4 / YSAV
DO 5 1 = 1 , NR
LIST(I)=0
5 CONTINUE
CALL MTXCPV(Y, YSAV, N)
9.14.
Примеры программ
319
DO 40 I=0 ,NXI-1
XI( 1)=XI0+I*DXI
XI(2 )= XI(1)+DXI
DO 30 J=0 ,NXJ
XJ=XJ0+J*DXJ
DO 20 IS=1 ,2
CALL MTXCPV(YSAV , Y, N)
X0 (IX)=XI(IS)
X0 (JX)=XJ
NSTEP=-100
NRED=0
CALL LSQGEN(Y, CY, GY, F , E, M,N,NR, NRED, LIST, XO, CX, R, A2 ,
+
NSTEP)
FUN(IS,2) =R
20
CONTINUE
IF (J.GT.O)
+
CALL GRPXCT(XI( 1) , XI( 2),XJO,XJ,FUN(1, 1) ,FUN(1 , 2) ,
+
FUN( 2 , 1) ,FUN(2 , 2) ,FCONT)
XJO=XJ
FUN( 1 , 1) =FUN( 1 , 2)
FUN( 2 , 1)=FUN(2 , 2)
30
CONTINUE
40 CONTINUE
CALL MTXCPV(YSAV,Y,N)
END
Пример 9.14. Несимметричные ошибки и доверительная область для аппрок
симации прямой результатов измерений координат точек при наличии оши
бок как по оси абсцисс, так и по оси ординат. На рис. 9.15 представлены
результаты аппроксимации прямой результатов измерений координат четырех
точек при наличии больших ошибок измерений. Из разд. 9.8 уже известно, что
большие значения ошибок измерений могут привести к несимметричным ошиб
кам в подобранных параметрах. Мы видим, что на самом деле наблюдаются
большие несимметричные ошибки и значительное различие между эллипсом
равных вероятностей и соответствующей доверительной областью.
■
9.14. Примеры программ
Все программные файлы доступны в поддиректории \DATAN\EXASRC.
9.14.1. Головная программа E1LSQ для демонстрации работы
подпрограммы LSQP0L
В двумерном массиве DATA этой небольшой программы содержатся данные из
табл. 9.3. Программа вычисляет значения вектора коэффициентов i и их ко-
320
Глава 9.
Метод наименьших квадратов
0.060, xj= 1.157, М= 0.872, NSTEP=
Ахг= 0.520, А х 2= 0.779, С=-0.881
6
t
-15 -1 -0.5
0
0.5
1
15
---- о Х1
Р и с . 9 .1 5 . (Н аверху.) Результаты изм ерений координат точек, эллипсы равных ве
роятностей и подобранная прямая. (В низу.) Результаты аппроксимации на плоскости,
натянутой на оси, соответствую щ ие парам етрам ац, Х2 . И зображ ены значения подо
бранных параметров (к р уж ок ), симметричны е ош ибки (перпендикулярны е отрезк и ),
эллипс равных вероятностей, несимметричны е ош ибки (горизональны е и вертикаль
ные прямые) и доверительная область (толстая линия контура).
вариационную матрицу Сх при г = 1,2,3,4. Здесь г —1 —порядок полинома,
т. е. г равно количеству компонент в векторе х . Результаты представляются
в численном виде.
У казания: (а) Модифицировать данную программу (путем изменения од
ной строки) таким образом, чтобы обрабатывались значения г — 1, 2, . . . , 10.
Какой особенностью, по-вашему, будут обладать результаты при г = 10? (Ь)
Использовать вместо данных из табл. 9.3 другие данные, без ошибки описы
ваемые полиномом, например у = £2, и найти по данным с помощью данной
программы параметры этого полинома. Использовать различные (даже оче
видно некорректные) значения ошибок Луг, например Луi — ^fyl при одном
запуске программы и Ayi ~ 1 при другом запуске. Какое влияние оказывает
выбор Ayi на коэффициенты х. на минимизируемую функцию и на ковариа
ционную матрицу?
9.14. Примеры программ 321
9.14.2. Головная программа E2LSQ для демонстрации работы
подпрограммы LSQLIN
В трехмерном масиве DATA этой программы содержатся данные, соответству
ющие рис. 9.4. Сначала значениями заполняются матрица А и вектор с;
они потребуются для аппроксимации данных пропорциональной зависимостью
у = x\t. Затем путем вызова программы LSQLIN осуществляется построение
аппроксимации. Результаты выводятся на экран в численном виде.
Указания: (а) Модифицировать данную программу таким образом, чтобы
она могла также осуществлять аппроксимацию полиномом первого порядка.
Заполните матрицу А сами, не пользуясь программой LSQP0L. Сравните полу
ченные результаты с рис. 9.4. (Ь) Выведите результаты на экран в графическом
виде, аналогично рис. 9.4.
9.14.3. Головная программа E3LSQ для демонстрации работы
подпрограммы LSQN0N
Эта программа решает следующую задачу. Сначала моделируются 20 пар
чисел (и^уг). Значения контролируемой переменной ti полагаются равными
1/21, 2/21, . . . , 20/21. Значения у* задаются формулой
Уг = XI ехр( —(г - Х2)2 /2x1) + £гЗдесь Ei —ошибка, взятая из нормально распределенной совокупности со сред
ним нуль и стандартным отклонением «т*. Величина стандартного отклонения
(т%различна для различных точек. Она берется из совокупности, равномерно
распределенной на отрезке с границами <т/2 и 3<х/2. Таким образом у* являют
ся точками, разбросанными в пределах их ошибок вокруг кривой гауссовского
распределения с параметрами х = (х 1 ,хг,хз). Разброс распределения оши
бок известен, т. е. Луг = «г*. Точки порождаются при следующих значениях
параметров: х± — 1, хг = 1.2, хз = 0.4. (Они совпадают с представленны
ми на рис. 9.5.) Затем программа последовательно строит четыре различные
аппроксимации данных гауссовским распределением. Вначале в процессе по
строения аппроксимации все три параметра рассматриваются в качестве пере
менных, NRED = 3. Затем последовательно фиксируют один, два, а в итоге —
все три параметра. Перед началом построения каждой следующей аппроксима
ции находится начальное приближение, при этом фиксированные параметры,
безусловно, не изменяются в процессе построения аппроксимации. Результаты
представляются в численном виде.
У казания: (а) Задать различные начальные приближения для нефиксиро
ванных параметров и проанализировать их влияние на результаты. (Ь) Вычи
слить начальные приближения, например, методом, описанным в примере 9.4,
в котором логарифм от данных аппроксимируется параболой, (с) Модифициро
вать данную программу путем добавления графического вывода результатов
(аналогично рис. 9.5).
322
Глава 9. М етод
наименьших квадратов
9.14.4. Головная программа E4LSQ для демонстрации работы
подпрограммы LSQMAR
С помощью данной программы решается задача из примера 9.7. Вначале мо
делируется 50 пар чисел (U,yi). Они разбросаны в пределах значений ошибок
измерений вокруг кривой, соответвующей сумме полинома второго порядка и
двух гауссовских кривых [см. (9.6.6)]. Вектор х состоит из девяти параметров
этой функции. Величины Ayi порождаются методом, описанным в разд. 9.14.3.
Данные моделируются для предварительно заданных значений параметров х.
Затем путем запуска программы LSQMAR (при значительно различающихся зна
чениях х в начальном приближении) строится аппроксимация данных и нахо
дится решение х. Результаты представляются в численном виде.
У казания: (а) Фиксировать все параметры за исключением
и xg, зада
ющих значения средних двух гауссовских распределений, использованных при
моделировании данных. Сделать возможным ввод значений х*> и xg в интер
активном режиме. Для различных заданных значений (x5,xg), например для
(10,30), (19,20), (19,15), (10,11), попытаться определить, действительно ли при
аппроксимации два гауссовских распределения все еще остаются различимы
ми, т. е. действительно ли имеется значительная разница между значениями
х$ и xg при учете их ошибок Ах$ и Ах%. (Ь) Повторить пункт (а), но при
меньших значениях ошибок измерений. К примеру, положить a —0.1 или 0.01
вместо a = 0.4. (с) Дополнить эту программу возможностью графического вы
вода результатов (аналогично рис. 9.8). (d) В копии файла E4LSQ. FOR удалить
подпрограмму AUXDRI. При компиляции и объединении данной версии фай
ла E4LSQ будет получена работающая программа, которая будет вычислять
производные численными методами. Сравнить время вычислений при запуске
данной версии программы и ее исходной версии.
9.14.5. Головная программа E5LSQ для демонстрации работы
подпрограммы LSQASN
В данной программе решается задача из примера 9.8. Вначале моделируются
пары чисел {tuyt). Точки yi разбросаны в пределах значений ошибок изме
рений вокруг кривой, заданной функцией yi(U) = х\ ехр(—X2 t) [см. (9.6.4)].
Ошибки измерений Ayi порождаются тем же методом, который использовался
в разд. 9.14.3. Отталкиваясь от заданного начального приближения для пара
метров £Ci, с помощью программы LSQN0N по данным строится аппроксимация
и находятся оценки этих параметров х. В заключение с помощью программы
LSQASN вычисляются значения несимметричных ошибок.
У казания: (а) Порождаемые программой исходные данные совпадают с
представленными на рис. 9.10 и 9.11 (нижний правый график на каждом из
рисунков). Сравнить результаты аппроксимации (значение минимизируемой
функции М, параметров xi,X 2 , симметричных и несимметричных ошибок) со
значениями, указанными на этих рисунках. (Ь) Модифицировать данную про
грамму таким образом, чтобы величину а, определяющую значения ошибок
измерений (переменная SIGMA) в программе, написанной на языке FORTRAN,
можно было задавать в интерактивном режиме. При последовательных запус-
9.14.
Примеры программ
32 3
ках программы положить a = 0.5, 2, 5, 10 и сравнить полученные результаты
с четырьмя графиками, представленными на рис. 9.10 и 9.11.
9.14.6. Головная программа E6LSQ для демонстрации работы
подпрограммы LSQC0N
Данная программа решает ту же задачу, что и модуль E5LSQ, однако при этом
она еще вычисляет и выводит на экран доверительную область в виде контуров
на плоскости (x i,x 2), натянутой на оси, соответствующие параметрам. Несим
метричные ошибки изображаются горизонтальными и вертикальными лини
ями. Кроме этого на экран выводится решение (хьХг) и его эллипс равных
вероятностей. Построенный график соответствует верхнему левому графику
на рис. 9.11.
Указания: (а) Дополнить данную программу таким образом, чтобы значе
ние а можно было вводить в интерактивном режиме. Положить a — 0.5, 2 , 5,
1 0 как и в указании, данном к предыдущей программе, и сравнить полученные
результаты с рис. 9.11. Обратите внимание, что масштаб на графиках каждый
раз следует выбирать соответствующим образом. Придумать метод для ав
томатического подбора масштаба на основании значений ошибок, найденных
при построении аппроксимации. (Ь) Нарисовать доверительную область, соот
ветствующую уровням значимости 90%, 95%, 99%. Использовать уравнение
(9.8.5).
9.14.7. Головная программа E7LSQ для демонстрации работы
подпрограммы LSQGEN
Данная программа осуществляет построение аппроксимации прямой резуль
татов измерений координат точек при наличии ошибок как по оси абсцисс,
так и по оси ординат,, т. е. программа решает задачу из примера 9.11. В пе
ременной DATA содержатся результаты измерений, их ошибки и ковариации.
На основании этих данных заполняются вектор у и ковариационная матрица
Су. Для определения двух параметров х\ (свободный член —координата пе
ресечения с осью ординат) и х2 (наклон прямой) при помощи модуля LSQGEN
используется версия программы LSQGFN, представленная в разд. 9.11 и содер
жащаяся в библиотеке программ DALIB. В цикле, практически образующем всю
программу, последовательно обрабатываются три случая, отличающихся друг
от друга только числом нефиксированных параметров NRED. Полученные ре
зультаты представляются в численном виде. При NRED = 2 начальное прибли
жение для х\ и Х2 вычисляется путем построения прямой, проходящей через
две крайние точки. Результаты, соответствующие этому случаю, представлены
на рис. 9.12 (наверху). При NRED = 1 значение х% фиксировано и полагается
равным 0.2. В качестве начального приближения для х 2 по-прежнему исполь
зуется коэффициент наклона прямой, проходящей через две крайние точки.
Для этого случая результаты представлены на рис. 9.13 (наверху). При NRED =
0 не строится аппроксимация, а выполняется критерий хи-квадрат (см. пример
9.13). Полученные результаты приведены на рис. 9.14 (внизу).
324
Глава 9.
Метод наименьших квадратов
Указания: Дополнить программу таким образом, чтобы она обрабатывала
все случаи, представленные на графиках 9.12, 9ЛЗ и 9.14.
9.14.8. Головная программа E8LSQ для демонстрации работы
подпрограмм LSQASG и LSQC0G
Вначале данная программа решает ту же задачу, что и программа E7LSQ, пред
ставленная в предыдущем разделе, т. е. строит аппроксимацию прямой резуль
татов измерений координат точек при наличии ошибок как по оси абсцисс, так
и по оси ординат. (В этой программе обрабатывается только случай, когда опре
делены оба параметра х\ и # 2 *) Исходные данные и результаты аппроксимации
представлены на рис. 9.15 (наверху). Затем путем запуска модуля LSQASG вы
числяются значения несимметричных ошибок и полученные результаты пред
ставляются в численном виде. В заключение (по запросу пользователя) ре
зультаты могут быть представлены также в графическом виде. На графике
изображается сечение плоскости (жьжг), проходящее через точку (яь^г), в
виде пересекающихся отрезков представляются симметричные ошибки, а так
же наносятся эллипсы равных вероятностей, несимметричные ошибки и дове
рительная область (так же, как на рис. 9.15 (внизу)). Замечание: Нахождение
границы доверительной области требует значительного времени вычислений,
поскольку модуль LSQGEN должен вызвать и обработать каждую точку постро
енного сечения плоскости,
9.15. Задачи по программированию
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\SOLSRC.
9.15.1. Аппроксимация полиномом первого порядка данных,
соответствующих полиному второго порядка
В экспериментальных исследованиях ученые часто сталкиваются с большим
количеством измерений или большим числом однотипных объектов (живот
ных, соударений элементарных частиц, изделий, полученных в результате
определенного процесса производства и т. д.). Результаты проведенных изме
рений описываются некоторым законом. Сначала выдвигаются определенные
предположения относительно вида этого закона, а затем проверяется соответ
ствие сделанных предположений и эксперимента. Рассмотрим следующий при
мер. Пусть проводится пехр экспериментов и в результате получают последова
тельности измерений. Результатом каждого эксперимента являются измерения
Vi — xi + # 2 U +
+ £г для 1 0 значений U ~ 1 , 2 . . . , 1 0 контролируемой пе
ременной t. Величина е% берется из нормально распределенной совокупности
со средним нуль и стандартным отклонением <т. Несмотря на это, при ана
лизе экспериментальных данных предполагают, что истинные значения у*, со
ответствующие результатам измерений у*, можно описать полиномом первого
порядка tji = х\ +Х2 1 . В результате аппроксимации получают значение миними
зируемой функции М, на основании которого можно вычислить «хи-квадрат
9.15. Задачи по программированию 325
вероятность» Р — 1 —F(M, п —г). Здесь F ( M ,f) —функция хи-квадрат рас
пределения с / степенями свободы, п —количество измерений и г —количество
параметров, определяемых при построении аппроксимации. Если Р < а, то при
уровне значимости (3 = 1 —а гипотеза о том, что данные можно аппроксими
ровать полиномом первого порядка, отвергается.
Написать программу, выполняющую следующие шаги:
(i) Ввод в интерактивном режиме величин nexР)
х2,
<7j Ау.
(п) Генерация nexp наборов данных (U, уi, A y ), построение аппроксимации ка
ждого набора данных полиномом первого порядка и вычисление Р . Вывод
значенией Р на гистограмму.
(ш) Графический вывод гистограммы.
Указания: (а) Положить пехр = 1000, Х\ —
= 1, х 3 = 0, <т = A y = 1 . Вы
должны получить достаточно уплощенную кривую распределения величины
Р. (Ь) Задавать различные значения
ф 0 (оставляя значения остальных ар
гументов такими же, как и выше). Вы будете наблюдать сдвиг кривой распре
деления в сторону малых значений Р [см. рис. 9.16]. Приближенно определить
наименьшее положительное значение £ 3 , при котором в 95 %экспериментов ги
потезу об аппроксимации данных полиномом первого порядка нужно отверг
нуть при уровне значимости 90%. (с) Положить хз = 0 , но задать и ф Ау.
Вы вновь будете наблюдать сдвиг кривой распределения, например, в сторону
больших значений Р при А у > <т. (d) На основании опыта, приобретенного при
выполнении пунктов (а), (Ь) и (с), можете сделать вывод, что в случае, если сде
лано неверное предположение относительно больших значений ошибок измере
ний (Ау > сг), в результате получается уплощенная кривая распределения Р.
Таким образом может сложиться впечатление, что данные могут описываться
О
0.2
0.4
0.6
0.8
1
------------------ > РСх2)
Р и с . 9 .1 6 . Гистограм м а «хи -к вадрат вероятности» д л я аппроксимации полиномом
первого порядка 1000 наборов данны х, порож ден ны х при помощ и полинома второго
порядка.
326
Глава 9. М етод
наименьших квадратов
полиномом первого порядка. Начать со значений пехр = 1000, х\ = х 2 = 1,
х$ = 0 .2 , a = 1 , A y = 1 и увеличивать А у с шагом в 0.1 до величины А у = 2 .
9.15.2. Аппроксимация степенной функцией (линейный случай)
Степенная функция г] = x tw линейна по параметру х , если w является констан
той. Нужно построить функцию такого вида, аппроксимирующую результаты
измерений (U,yi), которые задаются формулами
U = t 0 -f (г - 1)
г = 1, . . . , п,
Vi = xt™ + Si*
Здесь €%имеет нормальное распределение со средним нуль и стандартным от
клонением а.
Написать программу, выполняющую следующие шаги:
(i) Ввод в интерактивном режиме значений n, to, At, х, w, о.
(ii) Моделирование результатов измерений.
(iii) Построение аппроксимации степенной функцией.
(iv) Графический вывод данных и построенной аппроксимирующей функции
[см. рис. 9.17].
9.15.3. Аппроксимация степенной функцией (нелинейный случай)
Если степенная функция имеет вид 77 = х \ tX2, т. е. если неизвестным пара
метром является сам показатель степени, то задача аппроксимации стано
вится нелинейной. При аппроксимации нелинейной функцией необходимо на
чать итерационный процесс с начального приближения для параметров. Огра
ничимся рассмотрением наиболее часто встречающегося на практике случая
х=
1.01, Ах=
0.03, М= 23.83, Р=0.2028
Р и с . 9 .1 7 . Результаты аппроксимации параболой
кам.
у = x t2, построенной по 20 точ
9.15.
Задачи по программированию
327
U > 0 при всех г. Тогда In77 = lnxi + £ 2 Int. Если вместо (U,yi) теперь в ка
честве результатов измерений использовать (ln^,ln?/i), то получим линейную
функцию по параметрам \пх\ и Х2 . Однако при таком преобразовании ошиб
ки перестают быть гауссовскими. Положим ошибки равными между собой и
используем результаты аппроксимации линейной функцией в качестве началь
ного приближения при построении нелинейной аппроксимации для
Мы
все еще должны иметь в виду (во всех случаях, когда х\ > 0 ), что всегда ту > 0
при t > 0 . Однако из-за ошибок измерений среди результатов измерений мо
гут быть yi < 0. Безусловно, такие значения не должны использоваться при
нахождении начального приближения.
Написать программу, выполняющую следующие шаги:
(i) Ввод в интерактивном режиме значений п,
(ii) Генерация п результатов измерений
U = to + (г - l)A t,
Atn £i, # 2 , сг-
г = 1 , , гг,
Vi = Xi t * 2 +£i,
где Si берется из нормально распределенной совокупности со средним нуль
и стандартным отклонением а.
(iii) Нахождение начального приближения х г, х 2 путем построения аппрок
симации линейной функцией по данным (In t*, In т/г) с помощью модуля
LSQLIN.
(iv) Построение аппроксимации степенной функцией (U, yi) с помощью модуля
LSQN0N.
(v) Графический вывод результатов [см. рис. 9.18].
х
1.12, х2=
1.76, Ах-p
0.07, Ахг=
Р и с . 9 .1 8 . П остроение аппроксимации ф ун кцией
данны е те ж е, что и на рис. 9.17.
0.12, а= -0.90
у = x i t X2 по 20 точкам. И сходны е
328
Глава 9. М етод
наименьших квадратов
9*15.4. Аппроксимация распределением Брайта—Вигнера
результатов измерений при наличии ошибок
При N — 21 и значениях контролируемой переменной U = —3, —2.7, . . . , 3
нужно смоделировать результаты измерений
У»
= f(ti) +
Si.
(9.15.1)
Здесь
(9.15.2)
является функцией плотности Брайта—Вигнера (3.3.32) при a = х \ и Г = Х 2 .
Ошибки измерений Si берутся из нормально распределенной совокупности со
средним нуль и стандартным отклонением сг. Положить a — 0 и Г = 1. Точки
(ti,2/*) будут разбросаны в пределах значений ошибок измерений вокруг коло
колообразной кривой с максимумом в точке t = а. Однако колоколообразная
кривая с максимумом в этой же точке могла бы быть также задана кривой
плотности гауссовского распределения
(9.15.3)
Написать программу, выполняющую следующие шаги:
(i) В в о д в и н т ер а к т и в н о м р е ж и м е зн а ч е н и я
а и и н д и к а т о р а ISWIT, о п р е д е л я
ю щ ег о , а п п р о к с и м а ц и я к а к о й ф у н к ц и е й б у д е т о с у щ ес т в л я т ь с я : ф у н к ц и е й
Б р а й т а -В и г н е р а (ISW IT = 1) и л и г а у ссо в ск о й ф у н к ц и е й (ISW IT = 2 ).
(ii) Моделирование данных, т. е. троек чисел (и^у^Лу^ = £*).
(ш) Построение по данным аппроксимации функцией Брайта—Вигнера
(9.15.2) или гауссовской функцией (9.15.3) и вычисление значения мини
мизируемой функции М.
(iv) Графическое представление результатов измерений и их ошибок, а также
подобранной функции [см. рис. 9.19].
Запустить эту программу при различных значениях а и определить, при
каком значении стандартного отклонения а данные позволяют четко отличить
распределение Брайта—Вигнера от гауссовского распределения.
9.15.5. Несимметричные ошибки и доверительная область при
аппроксимации распределением Брайта—Вигнера
Модифицировать программу из предыдущего раздела (или лучше копию этой
программы) так, чтобы таким же образом, как и на графиках с рис. 9.11, осу
ществлялось графическое представление оценок параметров, их ошибок, кова
риационной матрицы, несимметричных ошибок и доверительной области.
Проанализировать различие между результатами, полученными при ап
проксимации данных распределением Брайта—Вигнера и гауссовским распре
делением, при этом в каждом случае задавать a = 0.1 и a = 1.
9.15. Задачи по программированию 329
9.15.6. Аппроксимация гистограммы распределением
Брайта—Вигнера
В задаче по программированию 9.15.4 в качестве исходных данных выступали
результаты измерений вида ^ = f(ti) +
где f(t) была функцией плотности
распределения Брайта—Вигнера (3.3.32), а ошибки измерений е* соответство
вали гауссовскому распределению со средним нуль и стандартным отклонени
ем <т.
Смоделировать выборку объема nev из распределения Брайта—Вигнера
со средним a = 0 и полной широтой полу максимального уровня Г = 1.
Построить по выборке гистограмму, которая опять же описывается тройка
ми чисел (ti,y i,A y i). Теперь t* является центром г-го интервала разбиения
ti —A t/2 < t < ti + A t/2, a y i ~ количество элементов выборки, попавших в этот
интервал. Когда значения уд не слишком малы, соответствующая статистиче
ская ошибка равна Лу* = yfyi. При малых значениях у* такая простая формула
может быть неверна. Она совершенно точно неверна при yi — 0. Поэтому при
построении аппроксимации гистограммы необходимо проявлять осторожность,
дабы не рассматривать в качестве данных интервалы разбиения, в которые не
попало ни одного значения (а также интервалы с малым числом значений).
Нужно построить аппроксимацию функцией
/( < ) =
х 3' таг 4(t - ад)2 + х\ ’
(9.15.4)
Эта функция сходна с функцией (9.15.2), но в ней есть еще один дополнитель
ный параметр х%.
Х|= -0.05, х2=
0.62, М= 55.58, Р=0.000019 (fit to Gaussian)
о t
Р и с . 9 .1 9 . А ппроксим ация гауссовской кривой данны х, соответствую щ их распреде
лению Брайта—Вигнера. К ритер ий согласия показывает плохое качество аппрокси
мации.
330
Глава 9. М етод
наименьших квадратов
0 .0 2 , х 2.
0 . 8 7 , х 3=
2 8 Л А х ,=
0 .0 7 ,А х 2.
0 .1 6 ,Лх 3=
3 .3
У
А
25
20
15
10
5
0
-3
-1
0
2
3
Р и с . 9 .2 0 . Аппроксим ация гистограмм ы ф ун кцией Б райта—Вигнера.
Написать программу, выполняющую следующие шаги:
(i) Ввод в интерактивном режиме значений пеу (размер выборки) и щ (ко
личество интервалов разбиения на гистограмме). Границы интервала для
гистограммы фиксируются: нижняя полагается равной t — —3, а верх
няя —t ~ 3.
(ii) Генерация выборки [см. задачу по программированию 4.15.1].
(Ш) Построение гистограммы.
(iv) Формирование троек чисел (U,
построении аппроксимации.
Ayi), которые будут использоваться при
(v) Построение функции вида (9.15.4).
(vi) Вывод результатов в численном и графическом виде [см. рис. 9.20].
Указания: Последовательно для одной и той же выборки построить ап
проксимации при различных количествах интервалов разбиения гистограммы.
Попытаться найти оптимальное количество интервалов разбиения.
9.15.7. Аппроксимация окружностью результатов измерений
координат точек при наличии ошибок как по оси абсцисс, так и по
оси ординат
На плоскости (s,t) заданы результаты измерений координат m точек
Ошибки измерений определяются в соответствии с ковариационной матрицей
размера 2 x 2 вида
(9.15.5)
9.15.
Задачи по программированию
331
как и в примере 9.11. Здесь с2 = AsiAtiPi и pi — коэфиициенты корреляции
между ошибками измерений A s i, Ati. Как и в примере 9.11, по результатам
измерений Si и ti сформировать вектор у и построить ковариационную ма
трицу Су. Выписать уравнения fk{x,rj) = 0 в предположении, что истинные
значения измеряемых координат точек лежат на окружности с центром в точ
ке (х \, Х2 ) и радиусом £ 3 .
Написать программу, выполняющую следующие шаги:
(i) Ввод значений т, At, As, р.
(ii) Моделирование т результатов измерений (si,ti), используя двумерные
нормальные распределения, средние для которых лежат через равномер
ные промежутки на единичном круге {х\ = £ 2 = 0 , хз = 1 ), а ковари
ационная матрица задается формулой (9.15.5), где Asi = As, Ati = At,
с = AsAtp.
(iii) Нахождение начального приближения х \ , Х2 ,
путем вычисления пара
метров окружности, проходящей через три первые точки.
(iv) П о с т р о и т ь а п п р о к с и м а ц и ю о к р у ж н о с т ь ю п о всем то ч к а м , и с п о л ь зу я м о
д у л ь LSQGEN и п о д п р о г р а м м у LSQGF, с п е ц и а л ь н о н а п и с а н н у ю д л я р еш ен и я
этой зад ач и .
(v) Графическое представление точек, координаты которых измерялись, и по
добранной окружности (так же, как на рис. 9.21).
х,=
0.04, х2=
0.06, х3=
1.05, М= 21.32, Р=0.2122
-1.5
-1.5
-1
-0.5
0
0.5
о \
Р и с . 9 .2 1 . Результаты изм ерений координат точек, эллипсы равных вероятностей,
окруж ность, являю щ аяся начальным приближ ением и проходящ ая через три первые
точки (пунктирная лин ия), и ок руж н ость, построенная по всем точкам.
Глава 10
Минимизация функций
В процессе анализа данных часто требуется уметь вычислять значения локаль
ных экстремумов (максимума и минимума) различных функций. Задача нахо
ждения экстремума возникает при применении метода наименьших квадратов
(в виде М (х ,у ) = min) и при использовании метода максимального правдо
подобия (в виде L = шах). Путем простой замены знака на противоположный
вторую из этих задач также можно свести к задаче нахождения минимума.
Поэтому в дальнейшем речь всегда будет идти о минимизации функций.
10.1. Обзор методов минимизации.
Точность полученных оценок
Вначале рассмотрим простую квадратичную форму
М(х) = с —Ъх 4-
.
(Ю.1.1)
Ее экстремум находится в точке нуля производной
Ш
dz
= 0 = —b + Ах,
т. е. в точке
Ь_
А'
( 10. 1. 2)
(10.1.3)
Обозначив М(хт ) = Мт , легко можно представить уравнение (10.1.1) в виде
М (х) - М т = ^А(х - хш)2.
(10.1.4)
Несмотря на то, что минимизируемая функция не всегда имеет столь про
стой вид, как в формуле (10.1.1), тем не менее в окрестности минимума ее
можно аппроксимировать квадратичной формой. В окрестности точки хо эту
функцию можно разложить в ряд Тейлора:
М (х) = М (х 0) - Ъ(х - хо) -1- - А(ж - хо )2 4-
(10.1.5)
где
Ъ = - М \ х о),
А = М"(хо).
( 10. 1. 6)
10.1. Обзор методов минимизации. Точность полученных оценок 333
В этом разложении минимум находится в той точке, в которой равняется
нулю производная М*(х), т. е. в точке
д.
^ т р — Х0 +
(10.1.7)
выполнено только в том случае, если точка xq находится достаточно близ
ко к точке минимума, тогда в разложении (10.1.5) можно пренебречь члена
ми, порядок которых выше первого. Эта ситуация представлена на рис. 10.1.
Функция М(х) достигает минимума в точке тт , максимума —в точке Хм, а ее
точки перегиба находятся в точках т8. В окрестности х > хт вторая произ
водная М п(х) > 0 при х < xs и М(х") < 0 при х > xs. Если теперь выбрать
то из промежутка xm < xq < тм» то первая производная М \ х ) будет все
гда положительна. Следовательно, ттр лежит ближе к точке хт только тогда,
когда то < т8. Очевидно, что в общем случае точка то выбирается не произ
вольным образом, а наиболее близко к точке, в которой, как предполагается,
будет находиться минимум. Выбранное значение то можно назвать нулевым
приближением к точке тт . Существуют различные способы последовательно
го нахождения более точных приближений:
Э то
(i) Использование функции, ее первой и второй производных в точке тоПо формуле (10.1.7) вычисляют значение ттр, найденную величину
ттр используют в качестве первого приближения, т. е. то заменяют на
тт р5 а затем, повторно применяя соотношение (10.1.7), находят следую
щее приближение. Этот процесс повторяется до тех пор, пока два после
довательных приближения не будут отличаться на величину, меньшую
заданного значения е. Из приведенных выше рассуждений следует, что
этот процесс может не сойтись, если нулевое приближение будет лежать
вне промежутка между точками перегиба (см. рис. 10.1).
(ii) Использование функции и ее первой производной в точке тоЗнак производной М '(хо) = —b в точке то определяет направление воз
растания функции. А минимум функции следует искать в том направле
нии, в котором функция убывает. Поэтому вначале вычисляют величину
Х\ —
X
q
(10.1.8)
+ 6,
М(х)
Р и с . 1 0 .1 . Ф ункция
М(х)
достигает
ми
нимума в точке Хт,
максимума — в
точке
жм, а ее точки перегиба
находятся в точках xs.
и------- 1-------- (-------- 1-------- 1—
Хм
xs
xm xs
хм
X
334
Глава 10.
Минимизация функций
т. е. значение второй производной заменяют на единицу. Затем в качестве
аппроксимации вместо xq используют х\ и т. д. Кроме этого, вместо фор
мулы (10.1.8) можно также воспользоваться соотношением
%х = хо + сЪ%
(1 0 .1 .9 )
где с является произвольной положительной константой. Оба соотноше
ния при переходе к следующему итерационному шагу (от хо к х \) обеспе
чивают сдвиг в направлении минимума. Если при этом также выбрать с
достаточно малым, то итерационный шаг будет мал. Таким образом при
очередной итерации мы не перейдем через точку минимума (или не уйдем
достаточно далеко за точку минимума).
(Ш) Использование значений функции в различны х точках.
Если известны значения минимизируемой функции в трех точках, то
минимизацию по методу (i) можно осуществить, не находя значения про
изводной этой функции. В этом случае можно построить параболу (она
определяется однозначно), проходящую через эти три точки, и взять в
качестве оценки минимума исходной функции значение экстремума этой
параболы. Этот метод называется методом нахождения минимума путем
квадратичной инт ерполяции. Однако при этом нельзя быть уверенным,
что экстремум построенной параболы является оценкой минимума, а не
максимума исходной функции. Поэтому так же как и в методе, описанном
в пункте (i), важно, чтобы три точки, выбранные для построения парабо
лы, лежали в окрестности минимума функции.
(iv) Последовательное уменьш ение интервала , на котором находится м и н и
мум.
Ни один из описанных выше методов не обеспечивал сходимости, т. е.
того, что минимум функции действительно будет найден. Минимум га
рантированно можно найти тогда, когда известен интервал х а < х < хъ,
на котором этот минимум достигается. Если такой интервал известен, то
минимум функции можно найти с любой точностью путем последователь
ного деления исходного интервала и проверки, на каком из интервалов,
полученных в результате деления, находится минимум.
В разделах 10.2 и 1 0 .7 будет рассмотрен процесс минимизации функции
одной переменной. Формула для нахождения по трем точкам параболы, прохо
дящей через них, будет приведена в разд. 1 0.2. В разд. 1 0 .3 будет показано, что
минимизация функции одной переменной эквивалентна нахождению миниму
ма функции п переменных по выбранному направлению в n-мерном простран
стве. Раздел 1 0 .4 будет посвящен методу нахождения интервала, на котором
достигается минимум функции. В разд. 1 0 .5 будет описан процесс нахождения
минимума функции путем последовательного деления исходного интервала на
части. В разд. 10.6 этот метод будет объединен с методом квадратичной интер
поляции. (При этом процедура интерполяции будет использоваться только на
том этапе, когда она уже сможет обеспечить быстрое и правильное нахождение
10.1.
Обзор методов минимизации . Точность полученных оценок
33 5
минимума функции. В противном случае процесс нахождения минимума функ
ции нужно будет продолжать, используя метод деления интервала на части.) В
результате такого объединения получается метод, обладающий свойством схо
димости метода деления интервала на части и скоростью (максимально воз
можной) метода квадратичной итерполяции. Подобный метод можно также
применять для функции п переменных, если задача нахождения минимума
сводится к поиску минимума по направлению в n-мерном пространстве. Такая
задача решается в разд. 10.7.
Далее мы вновь вернемся к задаче нахождения минимума функции п пе
ременных. Для начала решим ее с помощью симплекс-метода (см. разд. 10.8).
Затем перейдем к обсуждению различных методов последовательной миними
зации по заданным направлениям в n-мерном пространстве. В качестве таких
направлений могут выступать направления координатных осей (см. разд. 10.9).
Для функции, являющейся квадратичной формой, эти направления можно вы
брать таким образом, чтобы минимум достигался не более чем за п итераций
(см. разд. 10.10 и 10.11).
В заключение обсудим метод минимизации по п переменным, который объ
единяет в себе элементы методов, описанных для одномерного случая в пунк
тах (i) и (й). Если х является n-мерным вектором, то квадратичная форма в
общем виде (обобщение формулы (10.1.1) на случай п переменных) имеет вид
М (х) = с —Ь • х + ~:гт Аг
= с-
(10.1.10)
bkXk + \ Y l х кМеХек
1 к,г
Здесь А является симметричной матрицей, т. е. Akt = Atk- Частные производ
ные по переменной я* равны
= -h +£ A a x t.
(10.1.11)
£
Записывая все частные производные в виде вектора VM , получаем
V M = ~Ь + А х.
(10.1.12)
В точке минимума вектор производных обнуляется. Поэтому по аналогии с
выражением (10.1.3) минимум находится в точке
x m = А ~ 1 Ь.
(10.1.13)
Очевидно, что в общем случае функция М (х) не всегда имеет вид (10.1.10).
Тем не менее ее можно разложить в ряд в окрестности точки а?о:
М (х) = М ( х о) —b(x — хо) + ^ ( х —х 0 )ТА (х —xq ) -I--- .
I
(10.1.14)
336
Глава 10.
Минимизация функций
Здесь
6 = -VM(ao),
т. е.
bi =
дМ
дх,
(10.1.15)
Х=Хо
является градиентом с противоположным знаком, а
Мк =
д2М
dxidxk
(10.1.16)
Х=Хо
—матрицей Гессе (матрицей вторых производных). Ряд (10.1.14) используется
в различных методах минимизации:
(i) Минимизация по направлению градиента.
Сначала фиксируется точка x q и ищется минимум в направлении, за
даваемом градиентом VM(ccо). Найденная точка обозначается ®i. Затем
фиксируется точка Xi и ищется минимум по направлению VM(aci), и т. д.
Этот метод, называемый минимизацией по направлению наискорейшего
спуска, будет обсуждаться в разд. 10.12.
(и) Заданный шаг по направлению градиента.
По аналогии с соотношением (10.1.9) вычисляются
хг = ж0 + сЬ,
Ь = —VM(aco),
(10.1.17)
при заданной положительной константе с. Другими словами, задается шаг
по направлению наискорейшего спуска для исходной функции, однако при
этом не ищется точное значение минимума по данному направлению. За
тем вычисляется градиент в точке Xi и по направлению найденного гради
ента происходит сдвиг на заданный шаг от х \ к следующей точке и т. д. В
разд. 10.13 этот метод будет объединен с методом, представленным ниже.
(Ш) Использование градиента и матрицы Гессе в точке ®о.
Если в ряде (10.1.14) отбросить все члены, следующие за квадратич
ным, то получим функцию, минимум которой, в соответствии с соотноше
нием (10.1.13), находится в точке
х тр = х 0 + А~ 1 Ъ.
(10.1.18)
В качестве первого приближения к точке минимума возьмем Х\ = жтр,
вычислим в этой точке градиент и матрицу Гессе, затем, вновь применяя
соотношение (10.1.18), найдем второе приближение и т. д. Этот метод опи
сывается в разд. 10.14. Он быстро сходится, если начальное приближение
Xq лежит достаточно близко к точке минимума. Однако если это не так,
то он не дает правильного решения (так же, как и в соответствующем
одномерном случае). Поэтому для того, чтобы достичь (тогда, когда это
возможно) той же скорости сходимости, что и в методе (Ш), а при необхо
димости гарантированно получить решение, как в методе (и), в разд. 10.15
мы объединим этот метод с методом из пункта (и).
10.1. Обзор методов минимизации. Точность полученных оценок 337
В разделах 10.8-10.15 будут описываться различные методы решения за
дачи минимизации функции п переменных. В разд. 10.16 будут даны реко
мендации относительно того, каким образом среди всех этих методов выбрать
наиболее подходящий для решения конкретной задачи. Раздел 10.17 посвящен
анализу ошибок. В разд. 10.18 подробно разобраны несколько примеров.
Перед тем как приступить к нахождению минимума хт некоторой функ
ции, сделаем ряд замечаний относительно точности, которой нам хотелось бы
достичь при нахождении хт . Необходимо напомнить, что практически всегда
минимум определяется путем сравнения значений минимизируемой функции
в точках, близких к х. Если решить уравнение (10.1.4) относительно (х —хт ),
то получим:
Предположим, что А (вторая производная от функции М) является величи
ной, вблизи точки минимума имеющей порядок единицы. (Это на самом деле
должно быть выполнено лишь приблизительно. Дело в том, что при вычисле
ниях всегда все величины масштабируются таким образом, чтобы они были
порядка единицы, т. е. не достигали порядка 106 или 1СГ6.) Если вычислить
функцию М с точностью 5, то разность М(х) —М (х т) будет вычислена в луч
шем случае также с точностью порядка <5, т. е. два значения функции нельзя
считать сильно отличающимися, если они отличаются не более чем на S. Тогда
для соответствующих значений х получаем:
(х - хт)
(10.1.19)
Если на компьютере для представления мантиссы имеется п двоичных раз
рядов, то значение х представимо с точностью 2”п [см. (4.2.7)]. Следовательно,
при вычислении значения х относительную точность полагают равной £ > 2"п,
поскольку бессмысленно пытаться найти значение некоторой величины с точ
ностью большей, чем та, с которой эта величина может быть представлена.
Если значение х вычисляется путем итераций, т. е. если вычисляется последо
вательность значений хо, X i,. . являющихся приближениями для х, то такую
последовательность можно оборвать, прекратив находить более точное при
ближение (т. е. завершить итерационный процесс), как только
\X k -
X fc_i I
N1
ИЛИ
|zfc -
Xk-i\
< e |x fc|
(10 .1.2 0 )
при заданном e. Однако если Xk = 0, то такой метод не дает ответа на поста
вленный вопрос. Поэтому помимо е вводится константа t ф 0 и соотношение
(10.1.20) обобщается до вида
\хк -Zk-i| < ф * | + t.
( 10. 1.21)
338
Глава 10.
Минимизация функций
Теперь остается только задать ей t. Если х является точкой, в которой до
стигается минимум, то на основании соотношения (10.1.19) значение е нужно
взять большим либо равным квадратному корню из относительной точности
представления числа с плавающей точкой на компьютере. При вычислениях с
«одинарной точностью» в большинстве компьютеров для представления ман
тиссы в распоряжении имеется п = 24 двоичных разряда. Тогда приемлемыми
будут лишь значения е > Т~п/ 2 « 2 - 10~4. Величина t соответствует абсолют
ной точности. Поэтому она может быть выбрана значительно меньшей, чем
е. В программах, представленных в последующих разделах, численное значе
ние е устанавливается на основе параметрических соглашений (т. е. является
изменяемым параметром).
10.2. Парабола, проходящая через три точки
Если известны три точки (ха,Уа),(хь,Уь),(хс,Ус), соответсвующие различным
трем значениям исходной функции, то можно построить параболу
у = а0 + aix + а2х2,
( 10. 2 . 1)
проходящую через эти три точки. Тогда уравнение (10.2.1), задающее эту па
раболу, примет вид
у =
Со
+ Сг(х - Хь) + С2(х - Хь)2-
( 10. 2 . 2)
Координаты трех заданных точек должны удовлетворять этому уравнению,
откуда следует, что уь = cq и
СУа - Уь) = Ci(xa -
Х Ь)
+ С2(ха -
Хь ) 2 ,
- Уь) = Cl(xc -
Хь)
+ С2(хс -
Хь ) 2 .
(Ус
Из этих равенств получаем, что
С[{хс- Хь)2{уа - Уь) - (ха ~ ХЬ)2(Ус ~ Уь)],
= С[— (хс- ХЬ){уа - Уь) + (Ха - ХЬ)(ус - Уь)],
С1 =
(10 .2.3)
С2
(10.2.4)
где
с=
1
(ха - Хь)(хс - Хь)2 - (хс - Хь)(ха - Хь)2 ’
а экстремум параболы находится в точке
10.2.
Парабола, проходящая через три точки 3 3 9
Р и с . 1 0 .2 . П арабола, проходящ ая через три точки (маленькие круж оч к и) и ее экс
тремум (больш ой к р уж ок ). Н а левом граф ике экстрем ум является минимумом, а на
правом — максимумом.
П р о г р а м м а 1 0 .1 . П о д п р о г р а м м а MINPRB в ы ч и сл я ет т о ч к у э к с т р е м у м а п а р а б о
лы , п р о х о д я щ е й ч е р е з т р и з а д а н н ы е т о ч к и
КОМАНДА ВЫЗОВА: CALL MINPRB(ХМ Р,ХА ,Y A ,X B ,Y B ,X C ,Y C )
В х о д н ы е п а р а м е т р ы : ХА, YA — к о о р д и н а т ы п е р в о й т о ч к и (xa,ya)
XB, YB — к о о р д и н а т ы в т о р о й т о ч к и (хь,уь)
X C , YC — к о о р д и н а т ы т р е т ь е й т о ч к и
В ы ходн ой
(xCiyc)
п а р а м е т р : ХМР — т о ч к а э к с т р е м у м а
х тр
SUBROUTINE MINPRB(ХМР, ХА, YA, ХВ, YB, ХС, YC)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
PARAMETER ( E P S = 1 .D -1 0 )
XBA=XB-XA
XBC=XB-XC
F1=XBA*(YB-YC)
F2=XBC*(YB-YA)
ANUM=XBA*F1-XBC*F2
DEN=F1-F2
D EN=SIG N(M AX (A BS(DEN),EPS),DEN)
XMP=XB-ANUM/( 2 .D0*DEN)
END
Т еп ер ь н у ж н о о п р е д е л и т ь , я в л я е т с я л и н а й д ен н ы й э к с т р е м у м п а р а б о л ы м и
н и м у м о м или ж е э т о м а к с и м у м (см . р и с. 1 0 .2 ). Н а й д е н н а я т о ч к а б у д е т т о ч к о й
м и н и м у м а , е сл и в т о р а я п р о и з в о д н а я о т в ы р а ж е н и я (1 0 .2 .2 ) п о
х
— хь б у д е т п о-
340
Глава 10.
Минимизация функций
ложительна, т. е. если С2 > 0. Упорядочим три заданные точки таким образом,
чтобы ха < хь < хс, и получим, что
1/С = (хс - х ь)(ха - х ь)(хс - х а) = - ( х с - х ь)(хь - ха)(хс - х а) < 0.
Отсюда знак множителя С2 равен
signc2 = sign[(xc - ХЪ){уа - Уь) + (хь - ха){ус - уь)].
Обе величины (х с — хь) и (хь —х а) положительны. Поэтому для того, чтобы
экстремум являлся минимумом, достаточно, чтобы
Уа > Уь,
Ус > Уь-
(1 0 .2 .6 )
Это условие не является необходимым, однако оно более наглядно, и в этом
состоит его преимущество. Очевидно, что на интервале х а < х < х с будет до
стигаться минимум, если на этом интервале вторая координата точки (хь,уь)
будет меньше, чем соответствующие координаты двух других точек, лежащих
на концах этого интервала. Это утверждение, безусловно, остается справед
ливым и для функции, не являющейся параболой. Мы воспользуемся этим
фактом в следующем разделе.
10.3. Функция п переменных, заданная на прямой
в n-мерном пространстве
Нахождение минимума функции М (х) одной переменной х на некотором от
резке на оси х эквивалентно нахождению минимума функции М(ж), аргумен
том которой является n-мерный вектор переменных х = ( x i , X 2
вдоль
заданной прямой в n-мерном пространстве. Если xq —фиксированная точка и
d — заданный вектор, то выражение
х 0 + ad,
- о о < а < оо,
(1 0 .3 .1 )
о п и сы в а ет н е к о т о р у ю ф и к с и р о в а н н у ю п р я м у ю (см . р и с . 1 0 .3 ), а
/(а ) =
М ( х о + ad)
(1 0 .3 .2 )
п редставл яет собой зн ач ен и е и сходн ой ф ун к ц и и в точк е а, л еж ащ ей н а дан н ой
п р я м ой . Е сл и п о л о ж и т ь n = 1, ®0 = 0, d = 1 и о б о зн а ч и т ь
соотн ош ен и е
а = х у то получим
f ( x ) = М( х ) , т. е. п р и д е м к и с х о д н о й з а д а ч е .
Программа 10.2.
Ф у н к ц и я MINFND в ы ч и с л я е т з н а ч е н и е ф у н к ц и и
н ы х, з а д а н н о й н а п р я м о й в n -м е р н о м п р о с т р а н с т в е
К оманда вызова: f = m i n f n d ( a , x o , x d i r , n , u s e r f n )
Входные параметры: А — зн а ч е н и е п а р а м е т р а а
Х0 — п -м е р н ы й в е к т о р Жо
п перем ен
10.3.
Функция п переменных, заданная на прямой
341
Х2
А
Р и с . 1 0 .3 . П рямая,
мая сотнош ением
двум ерном случае.
XDIR-—n -м ер н ы й в е к т о р
d
N — к о л и ч ест в о п е р е м е н н ы х
п
USERFN— и м я п о д п р о г р а м м ы , н а п и са н н о й п о л ь з о в а т е л е м , к о т о р а я
в о зв р а щ а е т зн а ч е н и е ф у н к ц и и
М ( х );
это им я д о л ж н о бы ть объ явлен о в
г о л о в н о й п р о г р а м м е как п е р е м е н н а я т и п а EXTERNAL
В ы ход н ой
п а рам етр:
MINFND я в л я е т с я зн а ч е н и е м ф у н к ц и и М{х) в т о ч к е
х ~ Жо + O'd
К о м м е н т а р и и : П о л ь зо в а т е л ю н е о б х о д и м о н а п и са т ь п о д п р о г р а м м у ,
в о зв р а щ а ю щ у ю з н а ч е н и е ф у н к ц и и
М(х). И м я
этой ф ун к ц и и д о л ж н о
с о в п а д а т ь с п о с л е д н и м а р г у м е н т о м ф у н к ц и и MINFND, а с а м а ф у н к ц и я
д о л ж н а и м е т ь д в а а р гу м ен т а : n -м е р н ы й в е к т о р X и к о л и ч е с т в о
п е р е м е н н ы х N.
DOUBLE PRECISION
FUNCTION MINFND( A , XO, XDIR, N , USERFN)
IMPLICIT DOUBLE PRECISION (A -H .O -Z )
PARAMETER(MAXN=50)
EXTERNAL USERFN
DIMENSION X 0(N ),X D IR (N ),X L IN E (M A X N )
DO 10 1 = 1 ,N
X L IN E (I)= X O (I)+ A * X D IR (I)
10 CONTINUE
MINFND=USERFN(XLINE, N)
END
В р а з д е л а х 1 0 .4 - 1 0 .6 б у д е т р а с с м а т р и в а т ь с я з а д а ч а м и н и м и за ц и и ф у н к ц и и
о д н о й п е р е м е н н о й . Т ем н е м е н е е п р и в ед ен н ы е н и ж е п р о г р а м м ы м о г у т т а к ж е
реш ать за д а ч у оты скания м и н и м ум а ф ун к ц и и
п р я м о й в n -м е р н о м п р о с т р а н с т в е .
п п ер ем ен н ы х вдоль некоторой
342
Глава 10.
Минимизация функций
10.4. Интервальное приближение к точке минимума
Во многих методах минимизации важно заранее знать отрезок, в точке х т
которого достигается минимум исходной функции,
(10.4.1)
Постепенно уменьшая этот отрезок, можно будет далее ограничивать интер
вал, на котором действительно находится минимум, до тех пор, пока для за
данной точности е не получим, что
(10.4.2)
х а - х с\ < е.
На отрезке (10.4.1) действительно достигается минимум, если существует такое
значение хь переменной х, при котором
М(хь) < М (х а),
М (х ь) < М (хс),
х а <хь.< х с.
(10.4.3)
Представленная ниже подпрограмма MINENC осуществляет интервальное
приближение к точке минимума функции при заданных значениях х а, х ъ , х С:
удовлетворяющих условию (10.4.3). При написании этой программы за осно
ву была взята аналогичная подпрограмма, написанная П рессом и др. [12].
Сначала задаются значения х а,хь, которые в случае необходимости можно
переобозначить таким образом, чтобы уъ < у а - Затем вычисляется значение
х с = хь +р{хъ — х а), которое предположительно лежит на векторе, направлен
ном в сторону убывания функции, т. е. эта точка находится ближе к точке
минимума. Коэффициент р в этой программе положен равным р = 1.618034.
Таким образом исходный отрезок (х0,хь) больше полученного при следую
щем приближении на коэффициент золотого сечения (см. разд. 10.5). Сле
дующее приближение найдено, если у с > Уъ- Если же это не так, то при по
мощи подпрограммы MINPRB строится парабола, проходящая через три точки
(ха,Уа), (хь, Уъ), (хс, Ус), минимум которой лежит в точке хт .
Рассмотрим теперь точку (xm,j/m). Возможны следующие варианты:
a) Xfo
<С
Хт
х с.
al) ут < Ус : ( х ь , х с) является искомым интервалом, х т € (хь>хс).
а2) уъ < ут : (х а, х т) является искомым интервалом, х ь € (ха, х т ).
аЗ) Ут > Ус, где у т < Уъ- Минимума не существует. Искомый интервал
находится правее.
b) х с < х т < Xendj где xend = х ь + f { x c — хь) и / = 10 в данной программе.
М)
ут
> Ус - ( хь , х т) является искомым интервалом, х с
Ь2)
ут
< Ус- Минимума не существует. Искомый интервал находится правее.
c) £end <
€
(хъ,хт).
: В качестве следующего интервала берется (x6,xenci), х с £
10.4.
d)
Интервальное приближение к точке минимума
343
x m < хь : Т ак ой р е зу л ь т а т в д е й с т в и т е л ь н о с т и н е в о з м о ж н о п о л у ч и т ь . О д н а
к о он м о ж е т п о я в и т ь ся в р е зу л ь т а т е о ш и б к и о к р у г л е н и я . И ск о м ы й и н т ер в а л
н аходи тся правее.
Е сл и п р и т е к у щ е й и т е р а ц и и н е н а й д е н о с л е д у ю щ е е п р и б л и ж е н и е , т о н а
с л е д у ю щ ей и т е р а ц и и в к а ч е с т в е и с х о д н о г о б е р е т с я д р у г о й и н т ер в а л .
П р о г р а м м а 1 0 .3 . П о д п р о г р а м м а MINENC о с у щ е с т в л я е т и н т е р в а л ь н о е п р и б л и
ж ен и е к точке м ин им ум а д л я ф ун к ц и и
п перем ен н ы х вдоль за д ан н ой прям ой
в n -м е р н о м п р о с т р а н с т в е
КОМАНДА ВЫЗОВА: CALL MINENC (ХА, X B ,X C ,Y A ,Y B ,Y C ,
USERFN, NSTEP, X 0 , XDIR, N)
В х о д н ы е п а р а м е т р ы : USERFN — и м я ф у н к ц и и (п о д п р о г р а м м ы ), н а п и са н н о й
п о л ь зо в а т е л е м д л я в ы ч и с л е н и я зн а ч е н и я ф у н к ц и и (см . р а з д . 1 0.3)
N — к оли чество п ер ем ен н ы х
п
Х0 — n -м ер н ы й в е к т о р xq [см. (1 0 .3 .1 )]
XDIR— n -м ер н ы й в е к т о р d [см. (1 0 .3 .1 )]
ХА, ХВ — н а ч а л ь н ы е зн а ч е н и я х а , хъ г р а н и ц и н т е р в а л а н а оСи
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а го в
В ы х о д н ы е п а р а м е т р ы : ХА ,Х В ,Х С — зн а ч е н и я п а р а м е т р о в х а ,
х
х с,
за д а ю щ и е и н т ер в а л , н а к о т о р о м д о с т и г а е т с я м и н и м у м
YA, YB,YC— с о о т в е т с т в у ю щ и е зн а ч е н и я ф у н к ц и и у а ,
ус
NSTEP — к о л и ч е с т в о п о т р е б о в а в ш и х с я и т ер а ц и й . Е с л и м е т о д н е с о ш е л с я з а
за д а н н о е м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а го в , т о э т о т
п а р а м е т р п о л а г а е т с я р а в н ы м NSTEP = - 1 .
В е л и ч и н ы п о у м о л ч а н и ю : Е с л и з а д а н н о е зн а ч е н и е NSTEP м ен ь ш е л и б о
р а в н о н у л ю , т о о с у щ е с т в л я е т с я 1 000 и т е р а ц и й .
SUBROUTINE MINENC(Х А , ХВ, ХС, YA, YB, YC, USERFN, NSTEP, ХО, XDIR, N)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
PARAMETER(ZER0=0. DO, GSPAR=1. 618034D 0,FA C M A G =10. DO,
+MAXSTP=1000)
DIMENSION X 0 (N ),X D I R (N )
DOUBLE PRECISION MINFND
EXTERNAL USERFN
YA=MINFND(Х А , XO, XDIR, N , USERFN)
YB=MINFND(Х В , XO, XDIR, N , USERFN)
NST=NSTEP
IF (N S T .L E .O ) NST=MAXSTP
IF
(Y B.G T.Y A ) THEN
С о б м е н зн а ч е н и я м и м еж ду перем енны м и А и В
BUF=XA
ХА=ХВ
XB=BUF
344
Минимизация функций
Глава 10.
BUF=YA
YA=YB
YB=BUF
END IF
XC-XB+GSPAR*(XB-XA)
YC^MINFND( XC, XO, XDIR, N , USERFN)
ISTEP=0
10 I F (YB.G E.YC .AND.
IS T E P .L T .N S T ) THEN
IS T E P -IS T E P + 1
С преды дущ ий ш аг был с д е л а н в с е еще в н а п р а в л е н и и убы вани я
XEND=XB+FACMAG*(ХС-ХВ)
CALL MINPRB(ХМ, ХА, YA, ХВ, YB, ХС, YC)
YM=MINFND(ХМ, Х 0 , X D IR ,N , USERFN)
IF
((Х М -Х В )*(Х С -Х М )
. GT. ZERO) THEN
С т о ч к а ХМ л еж и т м еж ду то ч к а м и ХВ и ХС
IF (YM .LT.YC) THEN
С т о ч к а минимума н а х о д и т с я м еж ду то ч к а м и ХВ и ХС
ХА=ХВ
YA=YB
ХВ=ХМ
YB=YM
GO ТО 10
ELSE IF
(YM .GT.YB) THEN
С т о ч к а минимума л еж и т м еж ду то ч к а м и ХА и ХМ
ХС=ХМ
YC=YM
GO ТО 10
END IF
С минимум н е н а й д е н , нуж но п р о д о л ж а т ь
XM=XC+GSPAR*(ХС-ХВ)
ELSE IF ( (ХС-ХМ )* (XM-XEND) .G T. ZERO) THEN
С т о ч к а ХМ л еж и т м еж ду то ч к а м и ХС и XEND
IF (YM .LT.YC) THEN
ХВ=ХС
ХС=ХМ
XM=XC+GSPAR*(ХС-ХВ)
YB=YC
YC=YM
END IF
ELSE IF ( (XM-XEND)* (XEND-XC) .G E. ZERO) THEN
С т о ч к а ХМ леж и т д а л ь ш е , ч ем т о ч к а XEND
XM=XEND
ELSE
XM=XC+GSPAR*(XC-XB)
END IF
10.5.
Поиск минимума методом золотого сечения
3 45
Р и с . 1 0 .4 . О сущ ествление интервального приближ ения к точке минимума по трем
точкам а, Ь: с в соответствии с м етодом (10.4.3). Начальные значения представле
ны в виде больш их круж к ов, а результаты отдельны х итераций — в виде маленьких
кружков.
ХА=ХВ
ХВ=ХС
ХС-ХМ
YA=YB
YB=YC
YC=MINFND(XC, Х 0 , XDIR, N , USERFN)
GO TO 10
END IF
I F ( I S T E P . EQ. NST) THEN
NSTEP— 1
ELSE
NSTEP=ISTEP
END IF
END
Н а р и с. 1 0 .4 п р и в е д е н п р и м е р п о с л е д о в а т е л ь н ы х и т е р а ц и й , к о т о р ы е вы
п о л н я л и сь д о т е х п о р , п о к а н е б ы л о н а й д е н о д о с т а т о ч н о т о ч н о е и н т е р в а л ь н о е
при бли ж ен и е к точк е м ин им ум а.
10.5. Поиск минимума методом золотого сечения
К а к т о л ь к о н а й д ен ы т р и т о ч к и х а ,ж ь ,т с , у д о в л е т в о р я ю щ и е с о о т н о ш е н и я м
(1 0 .4 .3 )
и о к р уж аю щ и е т оч к у м и н и м ум а, м о ж н о легко п острои ть дал ь н ей ш ее,
более точ н ое, и н тер вал ьн ое п р и бл и ж ен и е. С н ачал а на больш ем и з д в у х о т р ез
ков р а з б и е н и я
(ха,хь) и ( хь , х с) в ы б и р а е т с я н е к о т о р а я т о ч к а х . Е с л и зн а ч е н и е
346
Глава 10.
Минимизация функций
X
X
л.
*b
~v~
I
"V
L
Р и с . 1 0 .5 . Золотое сечение.
минимизируемой функции в точке х меньше ее значения в точке хь, то в каче
стве следующего исходного интервала берется тот, на котором лежала точка х.
Если же значение функции в этой точке больше, то при следующей итерации
в качестве границы исходного интервала будет выступать точка х .
Одним из интересных способов деления отрезка на части является деление
методом золотого сечения. Предположим (см. рис. 10.5), что величина
9 = j,
9> \ ,
(Ю.5.1)
равна отношению длины интервала (ха,хъ) (мы определим ее ниже), кото
рый получен при разбиении исходного отрезка, к длине исходного интервала
(ха,х с). Теперь нужно вновь разбить интервал (ха: хь) точкой х на два подын
тервала, отношение длин которых равно д,
9 = j.
(Ю .5 .2 )
Кроме этого точки х и хь должны располагаться симметрично относительно
середины отрезка (х а, х с), т. е.
A= L - L
(10.5.3)
Отсюда следует, что
£
\ +£
А
—,
то есть
А=
V 5 -1
2
и
VE-i
9=
2
0.618034.
(10.5.4)
Как было показано в начале этого раздела (для случая, представленного на
рис. 10.5, хь — х а > х с — хь), точка минимума, про которую изначально было
известно, что она лежит на интервале (я0,я с), теперь может лежать либо на
отрезке (ха,хь), либо на отрезке (я, х с). Путем разбиения исходного интервала
методом золотого сечения получают последовательность интервалов, отноше
ние длин которых постоянно.
10.5.
Поиск минимума методом золотого сечения
П р о г р а м м а 1 0 .4 . П о д п р о г р а м м а MINGLD н а х о д и т м и н и м у м ф у н к ц и и
347
п перем ен
н ы х в д о л ь п р я м о й в n -м е р н о м п р о с т р а н с т в е м е т о д о м зо л о т о г о с е ч е н и я
К оманда
вызова:
c a l l m in g l d ( А
,в , с , e p s i l n , u s e r f n ,
XMIN, FMIN, NSTEPД О , XDIR, N)
Входные параметры: А , В,С — значения параметров x a, хь, х С7 задающих
интервал, на котором достигается минимум
E PSILN — о т н о с и т е л ь н а я т о ч н о с т ь
е, о п р е д е л я е м а я п о ф о р м у л е (1 0 .1 .2 1 )
USERFN,NSTEP Д О , X D IR ,N — т е ж е , ч т о и в п р о г р а м м е 10.3
Выходные
параметры: XMIN — то ч к а , в к о т о р о й д о с т и г а е т с я м и н и м у м
FMIN — зн а ч е н и е ф у н к ц и и в т о ч к е м и н и м у м а
NSTEP — т о ж е , ч т о и в п р о г р а м м е 1 0 .3
Величины
по умолчанию: NSTEP п о л а г а е т с я р ав н ы м 1 0 0 0 , есл и з а д а н н о е
зн а ч е н и е э т о г о п а р а м е т р а < 0.
EPSILN п о л а г а е т с я р а в н ы м 1 0 ~ 8 , е сл и з а д а н н о е з н а ч е н и е э т о г о п а р а м е т р а
б у д е т < 0.
SUBROUTINE MINGLD( А , В, С , E P SIL N , USERFN, XMIN, YMIN, NSTEP, X 0 ,
+XD IR,N )
IMPLICIT DOUBLE P R E C IS IO N (A -H ,0 -Z )
PARAMETER(Q=0. 61803D 0,M A X ST P = 1000,E P S D E F = 1. D - 8 ,T T = 1 . D - 1 5 )
EXTERNAL USERFN
EPS=EPSILN
I F ( E P S . L E . 0 . ) EPS-EPSDEF
IF (N S T E P . LT Л ) NSTEP=MAXSTP
S=USERFN (В Д 0 ,X D IR , N)
ISTEP=0
10 ISTEP=ISTEP+1
I F ( A B S ( B - A ) . GT. A B S (C -B )) THEN
X=A+Q *(B-A)
Y=USERFN( X Д 0 Д D IR ,N )
I F ( Y .L T .S ) THEN
C=B
B=X
S=Y
ELSE
A=X
END IF
ELSE
X =B +Q *(C -B)
Y=USERFN(X Д 0 ,X D IR , N)
I F ( Y .L T .S ) THEN
A=B
B=X
S=Y
348
Глава 10.
Минимизация функций
Р и с . 1 0 .6 . Пош аговое интервальное приближ ение к точке миним ум а путем разбие
ния методом золотого сечения. И сходны й интервал (больш ие круж очк и) уменьш ается
с каж ды м итерационны м шагом (маленькие круж очк и).
ELSE
С=Х
END IF
END IF
IF ( A B S (C -A ). GT. EPS*A BS(A )+TT .AND.
IS T E P . LE.NSTEP) GO TO 10
I F ( IS T E P . GT. NSTEP) THEN
NSTEP=-1
ELSE
NSTEP=ISTEP
END IF
XMIN=B
YMIN=C
END
Н а р и с .1 0 .6 д л я н е к о т о р о г о п р и м е р а п р е д с т а в л ен ы п ер в ы е ш е с т ь и т е р а ц и й
м и н и м и за ц и и м е т о д о м з о л о т о г о с е ч е н и я .
Минимизация методом квадратичной интерполяции
10.6.
349
10.6. Минимизация методом квадратичной интерполяции
И з п р и м е р а , п р е д с т а в л е н н о г о н а р и с. 1 0 .6 , в и д н о , ч т о м е т о д п о с л е д о в а т е л ь н о г о
д е л е н и я и н т ер в а л о в с х о д и т с я , о д н а к о д о с т а т о ч н о м е д л е н н о . П о э т о м у о б ъ е д и
ним эт о т м е т о д с м е т о д о м к в а д р а т и ч н о й и н т ер п о л я ц и и .
В о с н о в у п р е д с т а в л е н н о й н и ж е п р о г р а м м ы MINCMB п о л о ж е н а п р о г р а м м а , н а
п и са н н а я
Б рен то м
[13], в к о т о р о й в п ер в ы е б ы л и о б ъ е д и н е н ы эт и д в а м е т о д а .
Д а д и м пояснени я зн ач ен и я осн овн ы х п ар ам етр ов дан н ой програм м ы . А и В об о
зн а ч а ю т гр а н и ц ы
х а и хь н а о с и х и н т е р в а л а , в к о т о р о м с о д е р ж и т с я м и н и м у м .
ХМ р а в н о и х с р е д н е м у зн а ч е н и ю . X — т о ч к а т е к у щ е г о м и н и м у м а (т о ч к а , в к о т о
р ой ф у н к ц и я и м е л а н а и м е н ь ш е е з н а ч е н и е н а в с е х п р е д ы д у щ и х и т е р а ц и я х ), W—
точ к а, б ы в ш а я т е к у щ и м м и н и м у м о м д о т о г о , как ей с т а л а т о ч к а X, и V — т о ч к а ,
бы в ш ая т е к у щ и м м и н и м у м о м д о т о г о , как ей с т а л а то ч к а W. U я в л я е т с я т о ч
кой, в к о т о р о й в ы ч и с л я л о сь т е к у щ е е зн а ч е н и е ф у н к ц и и . В н а ч а л е з а д а ю т с я д в а
х а и хь, я в л я ю щ и е с я г р а н и ц а м и и н т е р в а л а , н а к о т о р о м
д о с т и г а е т с я м и н и м у м , а т а к ж е т о ч к а х, к о т о р а я д е л и т о т р е з о к ( х а,хъ ) в о т н о
и с х о д н ы х п а р а м ет р а :
ш ен и и зо л о т о г о с е ч е н и я . З а т е м п р и к а ж д о й п о с л е д у ю щ е й и н т ер а ц и и с т р о и т с я
к в а д р а т и ч н а я и н т е р п о л я ц и я в с о о т в е т с т в и и с м е т о д о м и з р а з д . 1 0 .2 . С ч и таю т,
ч т о р е ш е н и е н а й д ен о ,, е с л и о н о л е ж и т н а о т р е з к е , п о л у ч е н н о м п р и п о с л е д н е й
и т ер а ц и и , а к р о м е т о г о , е сл и н а э т о м и т е р а ц и о н н о м ш а г е р а з н о с т ь м е ж д у т е к у
щ им зн а ч е н и е м м и н и м у м а и п р е д ы д у щ и м е г о зн а ч е н и е м м ен ь ш е, ч ем п о л о в и н а
аналогичной р азн ости , вы численной при п р еды дущ ей и терац ии. Э то услови е
о б е с п е ч и в а е т с х о д и м о с т ь д а н н о г о м е т о д а , т. е. т о , ч т о в с р е д н е м и т ер а ц и о н н ы й
ш аг б у д ет ум еньш аться, хотя при этом доп уск аю тся отдельны е увеличения
ш ага и т ер а ц и и . Е с л и ж е х о т я б ы о д н о и з э т и х у с л о в и й не в ы п ол н ен о, т о п р о
и з в о д и т с я д а л ь н е й ш е е д е л е н и е и н т е р в а л а м е т о д о м зо л о т о г о с е ч е н и я .
П р о б л е м а о п р е д е л е н и я т о ч н о с т и п о л у ч е н н о г о р е зу л ь т а т а б ы л а т щ а т е л ь н о
г и £, о п р е д е л я ю щ и х о т
н о с и т е л ь н у ю т о ч н о с т ь , и т е к у щ е г о зн а ч е н и я т о ч к и м и н и м у м а х в с о о т в е т с т в и и
и сследован а Б рен том . Н а основании д в у х п арам етров
с ф о р м у л о й (1 0 .1 .2 1 ) в ы ч и с л я е т с я а б с о л ю т н а я т о ч н о с т ь п о л у ч е н н о г о р е зу л ь т а
та А х = ex + t — T0L. И т е р а ц и о н н ы й п р о ц е с с п р о д о л ж а е т с я д о т е х п о р , п ок а
п о л о в и н а д л и н ы т е к у щ е г о о т р е з к а н е ст а н ет м ен ь ш е в ел и ч и н ы T0L (т. е. п ок а
р а с с т о я н и е м е ж д у X и ХМ н е ст а н е т м ен ь ш е, ч ем T0L) и л и п ок а н е б у д е т вы
п о л н ен о з а д а н н о е м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а г о в . К р о м е т о г о ,
в т о ч к а х , о т с т о я щ и х д р у г о т д р у г а н а р а с с т о я н и е , м ен ь ш ее ч ем T0L, зн а ч е н и я
м и н и м и зи р у е м о й ф у н к ц и и н е в ы ч и с л я ю т с я , п о с к о л ь к у эт и зн а ч е н и я н е б у д у т
с у щ ес т в е н н о о т л и ч а т ь с я д р у г о т д р у г а .
П р о г р а м м а 1 0 .5 . П о д п р о г р а м м а MINCMB н а х о д и т м и н и м у м ф у н к ц и и п п е р е м е н
н ы х в д о л ь п р я м о й в п -м е р н о м п р о с т р а н с т в е о б о б щ е н н ы м м е т о д о м Б р е н т а
CALL M INCM B(A,B,EPSILN,USERFN,XM IN,
FMIN, NSTEP, XO, XDIR, N)
К О М А Н Д А ВЫ ЗОВА:
В х о дн ы е
п а р а м е т р ы
:
т е ж е , ч т о и в п р о г р а м м е 1 0 .4 (в о т л и ч и е о т
п р о г р а м м ы MINGLD, в д а н н о м с л у ч а е о т с у т с т в у е т а р г у м е н т С)
350
Глава 10.
В ыходные
Величины
Минимизация функций
параметры :
по
те же, что и в программе 1 0 .4
умолчанию: те же, что и в программе
1 0 .4
SUBROUTINE MINCMB( А , В , EPSILN,USERFN, ХМI N , FMIN, NSTEP,
+ X 0,X D IR ,N )
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DOUBLE PRECISION MINFND
LOGICAL PARSTP
PARAMETER(C=0.3 8 1966D 0,M A X S T P = 1000,E P S D E F = 1.D -1 2 j T T ^ l. D - 1 5 )
PARAMETER(ZER0=0. DO, H A L F =0.5D 0, 0 N E = 1 .D 0 , TWO=2.DO)
DIMENSION X 0 (N ),X D I R (N )
EXTERNAL USERFN
С е с л и к а к и е -л и б о з н а ч е н и я н е за д а н ы , т о он и з а д а ю т с я п о умолчанию
I F ( N S T E P .L T .l) NSTEP=MAXSTP
EPS=EPSILN
IF (E P S .L E .Z E R O ) EPS=EPSDEF
С н а ч а л ь н о е з н а ч е н и е X л еж и т в т о ч к е з о л о т о г о с е ч е н и я м еж ду
С точ к ам и А и В
Х =А +С *(В-А )
С з а д а н и е нач альны х з н а ч е н и й п ер ем ен н ы х Е , V ,W ,FX,FV ,FW
E=ZER0
V=X
W=X
FX-M INFND(X, X 0 , XD IR, N , USERFN)
FV=FX
FW=FX
ISTEP=1
С начало и терац и он н ого п р о ц ес с а
10 CONTINUE
IF (IS T E P .G E .N S T E P ) THEN
С п о д г о т о в к а к завер ш ен и ю р а б о т ы прогр ам м ы , е с л и к о л и ч е с т в о
С осу щ еств л ен н ы х и т е р а ц и й слишком в е л и к о
NSTEP=-1
XMIN=X
FMIN=FX
GO TO 2 0
END IF
XM=HALF*(A+B)
T0L=EPS*ABS(X )+TT
T2=TW0*T0L
IF (A B S (X -X M ). GT. T 2 -H A L F * (B -A )) THEN
P=ZER0
Q=ZER0
R=ZER0
PARSTP = .FA LSE.
10.6.
Минимизация методом квадратичной интерполяции 3 5 1
I F (A B S ( Е ) . GT. TOL) THEN
С ап п р ок си м ац и я п а р а б о л о й
R = (X -W )* (F X -F V )
Q = (X -V )*(F X -F W )
P = (X -V )* Q -(X -W )* R
Q=TW0*(Q-R)
IF (Q .G T .Z E R O ) THEN
P = -P
ELSE
Q=-Q
END IF
R=E
E=D
+
IF (A B S (P ).L T .A B S (H A L F *Q *R )
Q * (B -X ) ) THEN
.AND. P .G T .Q * (A -X )
.AND. P .L T .
С и с п о л ь з о в а н и е р е з у л ь т а т о в а п п р ок си м ац и и п а р а б о л о й
D=P/Q
U=X+D
I F ( ( U - A ) . L T .T 2 .OR.
( B - U ) .L T .T 2 ) THEN
С п р о в е р к а т о г о , ч т о U н е л еж и т в б л и з и т о ч е к А и В
D=-T0L
I F ( X .L T .ХМ) D=T0L
END IF
PARSTP = .TRUE.
END IF
END IF
I F (.N O T . PARSTP) THEN
С о с у щ е с т в л е н и е и т е р а ц и о н н о г о ш ага м е т о д о м з о л о т о г о с е ч е н и я
IF (X .L T .X M ) THEN
Е=В-Х
ELSE
Е=А-Х
END IF
D=C*E
END IF
С о п р е д е л е н и е т о ч к и U , в к о т о р о й з н а ч е н и е вы ч и сляем ой функции
С г а р а н т и р о в а н н о н е л еж и т в б л и з и т о ч к и X
IF (A B S (D )
. GE. TOL) THEN
U=X+D
ELSE IF
(D.G T.ZERO ) THEN
U=X+T0L
ELSE
U=X-T0L
END IF
FU=MINFND(U, XO, XDIR, N , USERFN)
352
Минимизация функций
Глава 10,
С п е р е с ч е т з н а ч е н и й п ер ем ен н ы х A ,B ,V ,W ,X
I F (F U .L E .F X ) THEN
I F ( U .L T .X ) THEN
B=X
ELSE
A=X
END IF
V=W
FV=FW
W=X
FW=FX
x= u
FX=FU
ELSE
I F ( U .L T .X ) THEN
A=U
ELSE
B=U
END IF
IF (F U .L E .F W
.OR. W .EQ.X) THEN
V=W
FV=FW
w=u
FW=FU
ELSE IF (F U .L E .F V
.OR. V .E Q .X
.OR. V.EQ.W ) THEN
V=U
FV=FU
END IF
END IF
ISTEP=ISTEP+1
GO TO 10
ELSE
XMIN=X
FMIN=FX
NSTEP=ISTEP
END IF
2 0 CONTINUE
END
Результаты первых шести итерационных шагов, выполненных в данном
примере методом минимизации Брента, представлены на рис. 10.7. Результаты
промежуточных итераций, полученные методом золотого сечения, отмечены
знаком G5, а полученные методом квадратичной интерполяции —знаком QI.
Сравнение данного рисунка с рис. 10.6 показывает, что метод квадратичной
интерполяции сходится значительно быстрее.
10.7.
Минимизация по выбранномуг направлению в n-мерном пространстве 3 5 3
Р и с . 1 0 .7 . П ош аговое интервальное приближ ение к точке минимума путем разбие
ния обобщ енным м етодом Брента. И сходны й отрезок (его границы обозначены боль
шими круж очками) при к аж дой итерации уменьш ается (границы полученны х о тр ез
ков обозначены маленькими круж очк ам и). И терации осущ ествляю тся или м етодом
золотого сечения (G S), или м етодом квадратичной интерполяции (QI).
10.7. Минимизация по выбранному направлению
в n-мерном пространстве
П ри пом ощ и сл едую щ ей прогр ам м ы н аходя т м иним ум ф ун к ц и и
п перем ен
н ы х в д о л ь п р я м о й , з а д а в а е м о й в е к т о р а м и Жо и d (см . р а з д . 1 0 .3 ). Д л я н а ч а л а
в о с п о л ь зу е м с я п р о г р а м м о й MINENC д л я о с у щ е с т в л е н и я и н т е р в а л ь н о г о п р и б л и
ж е н и я к т о ч к е м и н и м у м а , а з а т е м с п о м о щ ь ю п р о г р а м м ы MINCMB н а й д е м его
т о ч н о е зн а ч е н и е.
П р о г р а м м а 1 0 .6 . П о д п р о г р а м м а MINDIR н а х о д и т м и н и м у м ф у н к ц и и
н ы х в д о л ь п р я м о й в n -м е р н о м п р о с т р а н с т в е
КОМАНДА ВЫЗОВА: CALL MINDIR(XO#X D IR,N ,USERFN#FMIN,
NSTEP,EPSILN)
п перем ен
354
Глава 10.
Входные
Минимизация функций
параметры: X 0 ,X D IR ,N , USERFN— те ж е , ч т о и в п р о г р а м м е 1 0 .2
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а го в
EPSILN — о т н о с и т е л ь н а я т о ч н о с т ь £, о п р е д е л я е м а я с о о т н о ш е н и е м (1 0 .1 .2 1 )
В ыходные параметры:
минимума
Х0 — n-мерный
вектор, отвечающий положению
FMIN — зн а ч е н и е ф у н к ц и и в т о ч к е м и н и м у м а
.NSTEP — к о л и ч е с т в о п о т р е б о в а в ш и х с я и т е р а ц и й (р а в н о —1, есл и м е т о д не
сходится)
В еличины
по умолчанию: NSTEP п о л а г а е т с я р ав н ы м 1 0 00, есл и з а д а н н о е
зн а ч е н и е э т о г о п а р а м е т р а < 0.
EPSILN п о л а г а е т с я р ав н ы м 1 0 ” 8 , есл и з а д а н н о е зн а ч е н и е э т о г о п а р а м е т р а
б у д е т < 0.
SUBROUTINE M IN D IR (X 0,D IR ,N ,U SE R F N ,FM IN ,N ST E P,E PSIL N )
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
PARAMETER(MAXSTP=10 0 0 ,E P SD E F=1. D -8 )
PARAMETER(DELTAX=1. D - 3 , CUT=0. 1 D 0 , ZE R 0=0. DO)
DIMENSION X 0 ( N ) , D I R ( N )
EXTERNAL USERFN
С и н и ц и а л и за ц и я
NST=NSTEP
I F ( N S T . L E .O ) NST=MAXSTP
EPS=EPSILN
IF( EPS .LE .ZE RO) EPS=EPSDEF
XA=0.
E=ABS(XA)
I F ( E . L T .C U T ) E-CUT
XB=E*DELTAX
NSTIN=NST
С пр и бл и ж ен и е к т о ч к е минимума
CALL MINENC(ХА, XB, ХС, YA, YB, YC, USERFN, NST, Х 0 , D I R , N)
I F ( N S T . L T . O ) THEN
NSTEP=-1
GO TO 2 0
END IF
I F ( X C . L T . XA)THEN
С обм ен зн а ч е н и я м и м еж ду а р г у м е н т а м и
DUM=XC
ХС=ХА
XA=DUM
END IF
NST=NSTIN
С о п р е д е л е н и е т о ч к и минимума
CALL MINCMB(XA,XC,EPS,USERFN,XMIN,FMIN,NST,X0,DIR,N)
I F ( N S T . L T . 0 ) THEN
10.8. Симплекс-метод минимизации в п-мерном пространстве
355
NSTEP=-1
GO ТО 20
END IF
DO 10 1=1,N
X0(I)=X0(I)+XMIN*DIR(I)
10 CONTINUE
20 CONTINUE
END
10.8. Симплекс-метод минимизации в n -мерном
пространстве
Простым и очень красивым (хотя и сходящимся относительно медленно) мето
дом минимизации функции нескольких переменных является симплекс-метод,
предложенный Н е л д е р о м и М идом [14]. Переменные дц, # 2 , . . . , жп определя
ют некоторое n-мерное пространство. Симплекс в этом пространстве задается
(п + 1 )-й точкой ад , где
ЯД — (ЯДг*Я^2г, ■■■i Хпг ) *
(1 0 .8 .1 )
В двумерном случае симплексом является треугольник, вершины которого на
ходятся в точках х \ , ад, Жз.
Обозначим через у* значение минимизируемой функции в точке ад, а
также введем специальные индексы для обозначения некоторых конкретных
точек
Пусть в точке х н значение минимизируемой функции максимально,
т. е. ун > yu i Ф Н. В точке хь значение функции превышает ее значе
ния во всех остальных точках за исключением точки макисмума х н (т. е.
ун > Vi, i Ф # , i ф ft), а в точке ад значение функции минимально (уе < уг,
i ф £). При каждой итерации симплекс будет видоизменяться. На каждом
из промежуточных итерационных шагов будет осуществляться одна из четы
рех возможных процедур: отражение, растяжение, сжатие или усечение
исходного симплекса (см. рис. 1 0 .8 ).
х,
Рис. 10.8. Преобразование исходного симплекса (треугольника, границы которого
изображены толстой линией) к новому виду (треугольника, границы которого изо
бражены тонкой линией) путем отражения (а), растяжения (Ь), сжатия (с) и усече
ния (d).
356
Глава 10. Минимизация функций
Обозначим за ж центр тяжести [гиперповерхности (стороны) симплекса,
противолежащей его вершине х п .
(Ю.8.2)
1
?д н
Тогда отражение точки Хц будет находиться в точке
х г — [1 + о)ж - а хн -
(10.8.3)
где а > 0 — коэффициент отражхиия. Отраженный симплекс отличается от
исходного лишь тем. что точка х ц заменяется на точку х г.
Растяжение симплекса состоит в замене точки жя па точку
-Те —
Т (\ - у)х,
(10.8.4)
где д —коэффициент растяжения. Поэтому (при 7 > 1 ) вершина нового сим
плекса будет лежать на прямой, проходящей через точки х н и х Т, однако будет
удалена от исходной точки больше, чем точка жг.
При сжатии вершина х ц перемещается в точку, лежащую на прямой, про
ходящей через точки х ц и ж. При этом новая вершина будет располагаться
между этими двумя точками, т. е.
х а = 0 х н х (j - д)х.
(10.8.5)
Здесь коэффициент сжатия В изменяется в пределах 0 < /3 < 1.
В трех описанных выше методах преобразования изменялось положение
лишь одной из точек, задающих симплекс, а именно точки а?#, соответству
ющей максимальному значению минимизируемой функции. Эта вершина сим
плекса. перемещалась вдоль прямой, проходящей через точки х я и х. После
осуществления преобразования она оказывалась либо по ту же сторону от точ
ки ж, что и раньше (при сжатии), либо с другой стороны от ж (при отражении),
либо с другой стороны от ж. но при этом более удаленной, чем до преобразо
вания (при растяжении). В отличие от этих трех преобразований при усече
нии изменяется положение всех точек, определяющих симплекс, кроме одной.
Неподвижной остается лишь точка ж^, в которой значение минимизируемой
функции минимально. Все остальные вершины перемещаются в точки, кото
рые являются серединами отрезков, соединявших их с точкой хр.
х сг ~ (xi + ж Д/ 2 ,
г ФL
( 1 0 ,8 .6 )
Для исходного симплекса, а также для всех симплексов, получаемых путем
подобных преобразований на промежуточных итерациях, нужно вычислить
значения координат точек ж и жг. а также соответствующие значения мини
мизируемой функции у и Ur-. Затем осуществляется следующая процедура:
(а) Если yr < yg, то производится растяжение исходного симплекса. Если в
результате получают, что уе <
то вновь выполняют растяжение. В про
тивном случае осуществляется отражение.
10.8. Симплекс-метод минимизации в п-мерном пространстве
357
(Ь) При уг > ун отражение производят в том случае, когда ут < ун- Если
же это не так, то симплекс остается неизменным. В любом случае затем
осуществляют сжатие. Если в результате такого сжатия значение мини
мизируемой функции в точке х а будет превышать хотя бы одну из величин
у н или у, то к исходному симплексу применяется процедура усечения.
После каждой итерации вычисляется величина
Г = -■I Ун - У* 1
(10.8.7)
I Ун I + ! Уе |
Если эта величина не превышает некоторое заданное значение, то итерацион
ный процесс заканчивается, и в качестве точки минимума исходной функции
выступает точка хц.
Программа 10.7.
П о д п р о г р а м м а MINSIM н а х о д и т м и н и м у м ф у н к ц и и
п перем ен
н ы х п р и п о м о щ и с и м п л е к с -м е т о д а
К оманда
в ы зо в а : c a l l m i n s i m (x o ,n ,n r e d ,l i s t ,u s e r f n ,
FMIN, E P SIL N , NSTEP, SCRAT)
В х о дн ы е
парам етры :
XO — n -м ер н ы й в е к т о р , за д а ю щ и й т о ч к у х 0
начального си м п л ек са
N — к о л и ч ест в о п е р е м е н н ы х
п
NRED — к о л и ч ест в о н е ф и к с и р о в а н н ы х п е р е м е н н ы х п'
LIST — n -м ер н ы й в е к т о р , эл е м е н т ы к о т о р о г о у к а зы в а ю т н а т о , к ак и е и з
п
п е р е м е н н ы х ф и к с и р о в а н ы (с о о т в е т с т в у ю щ и й эл ем ен т в е к т о р а р а в ен 0 ), а
п о каки м б у д е т о с у щ е с т в л я т ь с я м и н и м и за ц и я (с о о т в е т с т в у ю щ и й эл ем ен т
в е к т о р а р а в е н 1)
USERFN — ф у н к ц и я , н а п и с а н н а я п о л ь з о в а т е л е м , та ж е , ч т о и в
п р о г р а м м е 1 0 .2
FMIN — с р е д н е е зн а ч е н и е д л и н с т о р о н и с х о д н о г о с и м п л ек са
EPSILN — о т н о с и т е л ь н а я т о ч н о с т ь , о п р е д е л я е м а я п о ф о р м у л е (1 0 .1 .2 1 )
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а г о в
SCRAT — р а б о ч и й м а с с и в , м и н и м а л ь н ы й р а з м е р к о т о р о г о
п х (г?. + 1)
В ы х о дн ы е п а р а м е т р ы : ХО — n -мерный вектор, содержащий координаты
точки минимума
FMIN — зн а ч е н и е ф у н к ц и и в т о ч к е м и н и м у м а
NSTEP — к о л и ч е с т в о п о т р е б о в а в ш и х с я и т е р а ц и й , о н о п о л а г а е т с я равн ы м
—1, е сл и м е т о д н е с о ш е л с я
Величины
по у м о л ч а н и ю : NSTEP п о л а г а е т с я р ав н ы м 1 0 0 0 , есл и з а д а н н о е
зн а ч е н и е э т о г о п а р а м е т р а < 0.
EPSILN п о л а г а е т с я р ав н ы м 1 0 “ 25, ес л и з а д а н н о е зн а ч е н и е э т о г о п а р а м е т р а
б у д е т < 0.
FMIN п о л а г а е т с я р а в н ы м 1 0 —5 , е сл и з а д а н н о е зн а ч е н и е э т о г о п а р а м е т р а
б у д е т < 0.
К о м м ен та ри и : И сходный с и м п л ек с с т р о и т с я п р и п о м о щ и п в е к т о р о в д л и н ы
FMIN, в ы х о д я щ и х и з т о ч к и хо и п а р а л л е л ь н ы х ося м к о о р д и н а т .
358
С
С
С
С
С
С
С
Глава 10.
Минимизация функций
SUBROUTINE MIN S I M (ХО,N ,N R E D ,L I S T ,US E R F N ,F M I N ,EPS I L N ,N S T E P ,X)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
PARAMETER(MAXN=50)
DIMENSION XO(N),X(NRED.NRED+l)
DIMENSION Y(MAXN+1).XEXP(MAXN),XR(MAXN),XR2(MAXN),
+XPRIME(MAXN),Xl(MAXN),X2(MAXN),XMX(MAXN),XMN(MAXN)
DIMENSION LIST(N)
PARAMETER (EPSDEF=1.D - 2 5 ,T T = 1 .D - 3 0 ,MAXSTP=1000)
PARAMETER (ALPHA=1.D O ,B E T A = .5 D 0 ,GAMMA=2.DO)
PARAMETER (0NE=1.D O ,H A L F = .5 D 0 ,ZE R 0 = O .DO)
EXTERNAL USERFN
инициализация
EPS=EPSILN
IF(EPS.LE.ZERO) EPS=EPSDEF
NST=NSTEP
IF(NST.LE.O) NST=MAXSTP
M=NRED+1
построение начального симплекса и вычисление значения функции
в его вершинах
Y (1)=USERFN(ХО,N)
CALL MTX G S V (ХО,XI,N,NRED,LIST)
CALL MTXPCL(X,X1,NRED,M,1)
D=FMIN
IF(D.LE.ZERO) D=l.D-5
IRED=0
DO 10 1=1,N
IF(LIST(I).EQ.l) THEN
IRED=IRED+1
CALL MTXCPV( XI,X2,NRED)
X2(IRED)=X2(IRED)+D
CALL MTX PCL( X,X 2 ,N R E D ,M ,IRED+1)
CALL MTXCPV(XO,XEXP,N)
CALL MTXPSV(XEXP,X2,N,NRED.LIST)
Y(IRED+1)=USERFN(XEXP,N)
END IF
10 CONTINUE
ISTEP=0
начало итерационного процесса
20 ISTEP=ISTEP+1
вычисление индексов точек, соответствующих вершинам
с максимальным (MX), вторым по величине (NE) и
наименьшим (MN) значениями минимизируемой функции
MN=1
IF(Y(1),GT.Y(2)) THEN
MX=1
10.8.
Симплекс-метод минимизации в n -мерном пространстве
359
NE=2
ELSE
МХ=2
NE=1
END IF
DO 30 1 = 1 .NRED+l
IF(Y(I).LT.Y(MN)) MN=I
IF(Y(I).GT.Y(MX)) THEN
NE=MX
MX=I
ELSE IF (Y СI) .GT.Y(NE)) THEN
IF(I.NE.MX) NE=I
END IF
30 CONTINUE
С проверка условия завершения процесса
С
С
С
С
I F (ABS(Y(MX)-Y(MN)).L T .EPS*ABS(Y(MN))+TT .OR. ISTEP.GT.NST)
+G0 TO 60
вычисление координат точки XPRIME, т.е. точки, являющейся
центром тяжести гиперплоскости, противолежащей вершине симплекса
с максимальным значением минимизируемой функции
CALL MTX G C L (X,Х М Х ,N R E D ,М ,MX)
CALL MTXGCL(X,XMN,NRED,M.MN)
CALL MTXZRV(XPRIME,NRED)
DO 40 1=1,NRED+l
IF(I.NE.MX) THEN
CALL MTXGCL(X,XI,NRED,M,I)
CALL MTXADV(XPRIME,X 1,XPR I M E ,NRED)
END IF
40 CONTINUE
F=ONE/DBLE(NRED)
CALL MTXMSV(XPRIME,XP R I M E ,F ,NRED)
построение новых точек методами отражения (XR) и растяжения (XR2)
CALL MTXMSV(XPRIME,X 1,0NE+ALPHA,NRED)
CALL MT X M S V ( Х М Х Д 2 , ALPHA,NRED)
CALL MTXSBV(X1,X2,XR,NRED)
CALL MTXCPV(XO,X E X P ,N)
CALL MTXPSV(XEXP,XR,N,NRED,LIST)
YR=USERFN(XEXP,N)
IF(YR.LE.Y(MN)) THEN
CALL MTXMSV(XR,XI,GAMMA,NRED)
CALL MTXMSV(XPRIME,X 2 ,ONE-GAMMA,NRED)
CALL MTXADV( XI,X 2 ,XR2,NRED)
CALL MTXCPV(XO,XEXP,N)
CALL MTXPSV(XEXP,XR2,N,NRED,LIST)
YR2=USERFN(XEXP,N)
360
Глава 10. Минимизация функций
I F (Y R 2 . L T . Y(M N)) THEN
С осущ ествл ен и е растяж ени я
CALL MTXPCL( X , X R 2, NRED, М, MX)
Y(MX)=YR2
ELSE
С о с у щ е с т в л е н и е о т р а ж ен и я
CALL MTXPCL(X,XR,NRED,M,MX)
Y(MX)=YR
END IF
ELSE I F (Y R .G E .Y (N E )) THEN
I F (Y R .L T . Y(M X)) THEN
С о с у щ е с т в л е н и е о т р а ж ен и я
CALL MTXPCL(X,XR,NRED,M,MX)
Y(MX)=YR
END IF
CALL MTXMSV( XMX, X1 , BETA, NRED)
CALL MTXMSV(XPRIME, X 2 . ONE-BETA, NRED)
CALL MTXADV(XI, X 2 . X R 2. NRED)
CALL MTXCPV(X0,XEXP,N)
CALL MTXPSV(XEXP, XR2, N , NRED, L IST )
YR2=USERFN(XEXP, N)
I F (Y R 2 . L T . Y(MX)) THEN
С о с у щ е с т в л е н и е сж ати я
CALL MTXPCL(X,XR2,NRED,M,MX)
Y(MX)=YR2
ELSE
С осущ ествл ен и е у сеч ен и я
DO 5 0 1 = 1 .NRED+l
I F (I.N E .M N ) THEN
CALL MTXGCL(X,XI, NRED,M, I )
CALL MTXADV(XI,XMN,X2,NRED)
CALL MTXMSV(X2.X2,HALF,NRED)
CALL M TXPCL(X,X2, NRED, M, I )
CALL MTXCPV(XO, XEXP, N)
CALL M TX PSV(XEXP,X 2.N.N RED,LIST)
Y (I)=U SE R F N (X E X P ,N )
END IF
50
CONTINUE
END IF
ELSE
С о с у щ е с т в л е н и е о т р а ж ен и я
CALL MTXPCL(X,XR,NRED.M,MX)
Y(MX)=YR
END IF
GO TO 20
10.8. Симплекс-метод минимизации в г-мерном пространстве
361
Рис. 10.9. Определение минимума функции двух переменных при помощи
симплекс-метода. Минимизируемая функция представлена в виде линий уровня (кон
туров, на которых она постоянна) Максимальное значение минимизируемая функ
ция принимает на внешнем контуре. Мини м у м достигается в маленькой окружно
сти, находящейся во внутреннем контуре. К а ж д ы й симплекс представляет собой тре
угольник. Границы исходного симплекса изображены утолщенными линиями.
С з а п о л н е н и е зн а ч е н и я м и вы ходны х п а р а м ет р о в
6 0 IS T E P -IS T E P - 1
FMIN=Y(MN)
CALL MTXGCL(X,X1,NRED,M,MN)
CALL MTXPSV(X0. X i . N , NRED.LIST)
IF (IS T E P -G T .N S T ) THEN
NSTEP=-1
ELSE
NSTEP=ISTEP
END IF
END
Результаты работы данной программы приведены на рис. 10.9. Треуголь
ник, границы которого изображены утолщенными линиями, является исход
ным симплексом. Последовательность треугольников с границами, нарисован
ными тонкими линиями, берущая начало от исходного симплекса, является ре
зультатами преобразования этого симплекса на промежуточных итерациях. По
рисунку легко можно восстановить последовательность проведенных преобра
зований: растяжение, растяжение, отражение, отражение, сжатие и т. д. Сна
чала симплексы двигаются в направлении «оврага» минимизируемой функ
ции, а затем перемещаются от вершины этого «оврага» к точке минимума (его
дна). В процессе итераций симплексы преобразуются таким образом, что самая
длинная их сторона параллельна направлению их движения к «оврагу», при
362
Глава 10. Минимизация функций
этом они могут перескочить через достаточно узкий «овраг». Стоит отметить,
что этот метод, разработанный для двумерного и трехмерного ояучаев, также
хорошо работает в n-мерном случае и является достаточно наглядным.
10.9. Минимизация по направлениям координатных осей
Ряд методов отыскания минимума функции в п-мерном пространстве бази
руется на следующем принципе. В качестве отправной точки берется точка
Хо, затем ищется минимум функции по заданному в пространстве направле
нию. После этого осуществляется минимизация по следующему направлению
и находится новое значение минимума, и т. д. В рамках этого принципа можно
разрабатывать различные стратегии для выбора конкретных направлений.
Самая простая из этих стратегий заключается в выборе в качестве напра
влений координатных осей, отвечающих переменным х* в n-мерном простран
стве. Обозначим соответствующие базисные векторы как е1; е г ,. -., еп, а затем
по порядку будем их брать в качестве направлений минимизации. После на
правления еп начнем вновь сначала и возьмем снова в качестве направлений
минимизации е ь е г ,.... В результате первой итерации (проведя минимизацию
по всем координатным направлениям, взяв в качестве исходной точки хо) по
лучим точку x i . Следующая итерация даст х^ и т. д.
Итерационный процесс заканчивается и считается сходящимся, когда значе
ния минимизируемой функции М ( х п ) и M (x n_i) при двух последовательных
итерациях удовлетворяют соотношению
A f(xn-i) - М ( х п ) < е\М (хп)\ +
(10.9.1)
т. е. когда при заданных е я t выполнено условие, аналогичное соотношению
(1 0 .1 .2 1 ). Однако здесь мы сравниваем два значения функции М, а не положе
ние двух точек х. В противном случае нам пришлось бы вычислять расстояние
между двумя точками в n-мерном пространстве.
На рис. 10.10 представлена минимизация по направлениям координатных
осей той же функции, что и на рис. 10.9. Длина первого шага достаточно ве
лика (он приводит нас в «овраг» минимизируемой функции), а последующие
шаги уже сравнительно невелики. Естественно, что отдельные направления
минимизации перпендикуляны друг другу. Приближения, полученные после
каждого следующего шага, смещаются по «оврагу» в направлении минимума,
напоминая ступеньки лестницы.
10.10. Сопряженные направления
Медленная сходимость, заметная на рис. 10.10, обусловлена тем, что при ми
нимизации по одному из направлений никоим образом не учитываются резуль
таты минимизации по другому направлению. Попытаемся теперь выбрать на
правления таким образом, чтобы избежать этого. Для простоты предположим,
что минимизируемая функция является квадратичной формой вида ( 1 0 .1 .10 ).
Тогда ее градиент в точке х определяется по формуле (10.1.12):
V M = —b + Ах.
( 10 . 10 . 1 )
10.10. Сопряженные направления
363
Рис. 10.10. Минимизация по направлениям координатных осей. Отправная точка
изображена большим кружочком, а полученный результат — маленьким. Отрезки со
ответствуют результатам промежуточных итераций.
При сдвиге на А х градиент изменяется следующим образом:
A (V M ) = V M ( x + А х) - V M (x ) = А х + А А х - А х = А А х .
(10.10,2)
Записанное выражение соответствует вектору, задающему направление изме
нения градиента при изменении переменной на А х .
Пусть был найден минимум по направлению р. Тогда этот минимум функ
ции М по направлению р будет сохраняться, если при движении по направле
нию q градиент будет оставаться перпендикулярен направлению р , т. е. если
р • (Aq) —p TAq — 0 .
(10.10.3)
Говорят, что векторы р и q являются сопряженными относительно положи
тельно определенной матрицы А. В случае п переменных, т. е. если А является
матрицей размера п х гг, можно найти п сопряженных линейно независимых
векторов.
П ауэлл [15] разработал метод нахождения сопряженных направлений для
функции, являющейся квадратичной формой. Метод состоит в следующем.
Для начала выбирают любые п линейно независимых единичных векторов pi,
например это могут быть координатные векторы pi = е*. Затем, беря за от
правную точку Жо, последовательно находят минимумы по всем направлени
ям p i. Результаты можно представить в следующем виде:
a
i
=
а гр г
O'2 =
—
+
а 2р 2
+
* * *
+
a
n p
n
,
Oi2p 2 + *’ ’ + OLnp n ,
Qn'Pn'
364
Глава 10. Минимизация функций
Здесь ai —вектор, полученный в результате всех п промежуточных итераций,
а-2 соответствует всем итерационным шагам, за исключением первого, а а п
представляет собой результат, полученный при последней итерации. Тогда сум
ма результатов всех п итераций смещается от точки жо в точку х \ — жо 4- а \ .
Направление а\ соответствует среднему направлению на первых п промежу
точных итерациях. Поэтому далее осуществляется смещение в направлении
a i, полученный результат вновь обозначается за Жо и определяется следую
щий набор направлений:
0 \ = Р2,
0.2 = РЗ,
O n
—1 — P m
Qn = ai/|ai|,
затем все векторы q? вновь обозначаются за pi и процесс повторяется сначала.
Как доказал П ауэлл [15], в случае, когда функция является квадратичной
формой, после п итераций, т. е. после осуществления п(п + 1 ) минимизаций по
направлениям, направления становятся попарно сопряженными,
10.11. Минимизация по заданным направлениям
В методе, изложенном в конце предыдущей главы, кроется одна проблема: на
правления p i , ... ,р п могут стать почти линейно зависимыми, поскольку на ка
ждом шаге вектор р\ заменяется на a i / |a i | и эти направления не обязательно
будут сильно отличаться друг от друга при переходе от одного итерационно
го шага к другому. Поэтому Пауэлл предложил не заменять направление р\
на a i / |a i |, а проводить замену направления р тах, по которому на предыду
щей итерации наблюдалось максимальное уменьшение значения минимизиру
емой функции. На первый взгляд это звучит парадоксально, поскольку произ
водится замена бесспорно лучшего направления. Однако, так как среди всех
направлений направление р тах дает наибольший вклад в уменьшение значе
ния минимизируемой функции, то вектор a i / |a i | имеет значимую компоненту
именно по направлению р тах- Оставив без изменения оба этих направления,
мы бы увеличили опасность проявления линейной зависимости.
Однако в некоторых случаях после выполнения отдельных итераций напра
вления придется оставлять без изменений. Обозначим через Жо точку, взятую
в качестве отправной на текущем итерационном шаге, через х \ —точку, полу
ченную в результате текущей итерации, через
Же
—Х\ + {Х\ -
Ж0 )
— 2жх
-
Ж0
(10.11.1)
экстраполированную точку, которая лежит относительно жо в направлении
Ж 1 - жо, однако удалена больше, чем жх, а через Mo,Mi и Ме —соответствую
щие значения минимизируемой функции. Если
М е > М 0,
( 10.11.2)
10.11. М иним изация по заданным направлениям
365
то минимизируемая функция у ж е не будет существенно убывать по направле
н и ю (жо — Ж])- Поэтому в данном случае изменять направления уже не имеет
смысла.
Обозначим теперь за. А М максимальное изменение значения минимизи
руемой функции М вдоль некоторого направления при текущей итерации и
вычислим зл ачекие зелии и н ы
Т = 2( М0 -
2 Л/ , +
МММ, ,
Mi - Д М ?
- (Л/0 -
Ме? Д М .
( 1 0 .1 1 .3 )
Если Т > 0, то в этом случае все направления остаются без изменений. Д а н
ное условие выполнено, когда один из сомножителей в первом слагаемом в
соотношении (10.11.3) пршгимает большие значения. Пер в ы й из этих сомно
жителей ( М $ - 2 А Д 4 - АД) пропорционален второй производной функции М
Если его значение достаточно велико что сравнению г первой производной в со
ответствующих единицах измерения), то это означает, что м ы находимся уже
в окрестности минимума. Второй сомножитель (АД — АД — A M ) 2 принимает
большие значения тогда, когда разности значений функции А Д — А Д при учете
A M практически не отличается от одного из направлений.
Программа 10.8. Подпрограмм;! MINP0W находит' значение м и н и м у м а функции
п переменных путем последовательной минимизации по заданным направле
ниям методом Пауэлла
К о м а н д а в ы з о в а : call mi np qw ( x o sn , n r e d , l i s t , u s e r f n ,
FMIN,EPSILN,NSTEP,SCRAT)
В х о д н ы е п а р а м е т р ы . XO — ь-мерный вектор, ■-отержадий значения
координат исход]той т о ч к и
N - количество порт МГНИЫ;. ?;
NRED,LIST — те же, что и в ттоограммс 10.7
USERFN — та ж е функция, написанная пользователем, что и в программе
10.2
EPSILN — относительная точность, вычисляемая по формуле (10.1.21)
N STEP - максим ал ьиое ко;11г тесте о и гсо а ш то иных ш аго в
SCRAT— рабочий массив, минимальный размер которого я х п
В ы х о д н ы е п а р а м е т р ы : Х0-- о -мерный вектор, содержащий значения
координат точки минимума
FMIN — значение функции в точке минимума.
NSTEP — количество потребовавшихся итераций. Параметр полагается
равным — 1, если метод не сошелся
В е л и ч и н ы п о у м о л ч а н и ю : NSTEP полагаемся равным 1000, если заданное
значение данного параметра < 0.
EPSILN полагается равным 10“ 8, если заданное значение данного
параметра < 0
К о м м е н т а р и и : Заданное значение параметра NSTEP ограничивает сверху
длину последовательности :e q .X]... а также является максимально
в о з м ожным количеством итераций при минимизации по заданному
366
Глава 10.
Минимизация функций
направлению. Выдаваемое в результате количество потребовавшихся
итераций равно длине приведенной выше последовательности.
SUBROUTINE MINP0W(ХО, N , NRED, L IS T , USERFN, FMIN, E PSIL N ,
+NSTEP,ALLDIR)
PARAMETER(MAXN=50)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DIMENSION X0(N),X0LD(M AXN),XE(M AXN),DIR(M AXN),DIRN(M AXN)
DIMENSION L IS T (N ),A L L D IR (N ,N R E D )
EXTERNAL USERFN
PARAMETER(MAXSTP=10 0 0 ,E P SD E F =1. D - 8 ,T = 1 .D - 1 5 , 0N E =1. DO,
+Z E R 0=0.D 0)
IF (N S T E P . L T .1) NSTEP=MAXSTP
EPS=EPSILN
I F (E P S .L E . 0 . ) EPS=EPSDEF
С О п р ед ел ен и е н а п р а в л е н и й к о о р д и н а т н ы х о с е й
F=USERFN(ХО,N )
IRED=0
DO 10 1 = 1 ,N
I F ( L I S T ( I ) . EQ. 1 ) THEN
IRED=IRED+1
CALL MTXZRV(DIR,N)
D IR (I)= 0 N E
CALL MTXPCL(ALLDIR, D IR , N , NRED, IRED)
END IF
10 CONTINUE
DO 3 0 ISTE P=1,N STEP
LSTEP=ISTEP
F0LD=F
FL=F0LD
CALL MTXCPV(X0, XOLD, N)
DELTAF=0.
IMAX=0
С Цикл п о в с е м возможным н а п р а в л е н и я м , в к о т о р о м и щ ется т а к о е ,
С в д о л ь к о т о р о г о ф ункция у б ы в а е т . Ему п р и с в а и в а е т с я о б о з н а ч е н и е IMAX
DO 2 0 1 = 1 , NRED
CALL MTXGCL(ALLDIR,DIR,N,NRED, I )
NSTDIR=NSTEP
CALL M IN D IR (X 0,D IR ,N ,U SE R F N ,F,N ST D IR ,Z E R O )
IF (N S T D IR , L T . 0 ) GO TO 4 0
D =A B S(F-FL )
IF (D .G T .D E L T A F ) THEN
DELTAF=D
IMAX=I
END IF
FL=F
10.12.
Минимизация методом наискорейшего спуска
367
20
CONTINUE
С П р ов ер к а у с л о в и я за в е р ш е н и я п р о ц е с с а
IF (A B S (F L -F 0 L D ) . LT. E P S*A B S(F L )+T ) GO ТО 5 0
С П о ст р о е н и е э к с т р а п о л и р о в а н н о й т о ч к и ХЕ и н а п р а в л е н и я DIRN,
С п р о х о д я щ ег о ч е р е з т о ч к и X0LD и Х0
CALL MTXSBV( Х 0 ,X 0L D ,D IR N ,N )
CALL MTXADV(DIRN,Х 0 ,X E ,N )
FE=USERFN(XE, N)
С Т еп ер ь мы р а с п о л а г а е м т р е м я точ к ам и (X0LD, Х 0, Х Е ),
С с о о т в е т с т в у ю щ и е зн а ч е н и я ф ункции в э т и х т о ч к а х равны
С (FOLD » F , FE)
+
I F ( F E .L T .F ) THEN
T E ST =2. * (F O L D -2. * F + F E )* (FO L D -F-D E L T A F)**2(FOLD-FE)**2*DELTAF
I F (T E S T .L T .O .) THEN
NST=NSTEP
С Н ахож ден и е минимума п о н ап р ав л ен и ю DIRN и з а м е н а т о ч к и Х0
С н а т о ч к у м инимума. З а м е н а н а п р а в л е н и я , о б о з н а ч е н н о г о ч е р е з IMAX,
С н а н а п р а в л е н и е DIRN
CALL M IN D IR (X 0,D IR N ,N ,U SE R FN ,F ,N ST ,Z E R O )
IF (N S T .L T .O ) GO TO 4 0
CALL MTXPCL( ALLDIR, DIRN, N , NRED, IMAX)
END IF
END IF
3 0 CONTINUE
4 0 M ST E P--1
GO TO 6 0
5 0 NSTEP=LSTEP
FMIN=FL
6 0 CONTINUE
END
Рисунок 10.11 демонстрирует преимущества метода минимизации Пауэл
ла. Легко видеть, что по сравнению с методом, результаты работы которого
представлены на рис. 10.10, этот метод быстрее сходится к точке минимума.
10.12. Минимизация методом наискорейшего спуска
Для того чтобы от исходной точки Жо добраться до точки минимума функции
М {х). достаточно всегда двигаться в направлении, противоположном градиен
ту, т. е. в направлении Ь(х) ~ ~ V M (x ). Поэтому очевидно, что сначала следу
ет найти минимум исходной функции по направлению V M (x 0). Полученную
точку обозначить за яц, а затем искать минимум по направлению V M (x i),
и т, д., до тех пор, пока не будет выполнено условие (10.9.1), согласно которо
му итерационный процесс можно считать сошедшимся.
368
Глава 10.
Минимизация функций
Р и с . 1 0 .1 1 . М инимизация по задан н ом у направлению м етодом Пауэлла.
Р и с . 1 0 .1 2 . М инимизация методом наискорейш его спуска.
10.13.
Минимизация по направлениям сопряженных градиентов
36 9
Однако сравнение результатов итераций данного метода, представленных
на рис. 10.12, с результатами итераций методом минимизации по направлени
ям координатных осей (см. рис. 10.10) показывает их поразительное сходство.
В обоих случаях направления, соответствующие последовательным итераци
ям, перпендикулярны друг другу. Поэтому в ходе итерационного процесса вы
бранными направлениями невозможно аппроксимировать поведение функции,
а, как следствие, будет мала скорость сходимости.
То, что направления градиентов, соответствующих последовательным ите
рациям, перпендикулярны друг другу, на первый взгляд является неожидан
ным фактом. Однако это напрямую следует из самого метода минимизации.
Отыскание минимума по направлению Ьо при исходной точке Х\ соответству
ет отысканию точки жь в которой производная по направлению 60 равняется
нулю, т. е.
Ьо ■ VM(xi) — 0.
а отсюда следует, что градиент перпендикулярен 60-
10.13. Минимизация по направлениям сопряженных
градиентов
Вновь вернемся к понятию сопряженных направлений, введенному в
разд. 10.10. Отталкиваясь от произвольного вектора д ] — h i, построим две
последовательности векторов:
flfj+i —
Qi
'{{АЬцч
^г4-1 — Qi-i-З "Ь 7г h%*
i — 1 ,2 ,.
(10.13.1)
^ — 1. 2. . . .
(10.13.2)
где
, _ вТяг
г gjAhГ
_ al+i^hi
Ъ ~ hjAhi'
(10.13.3)
Отсюда следует, что
(10.13.4)
gj+i9i = о,
hJ+1Ahi = 0.
(10.13.5)
Это означает, что последовательные векторы д ортогональны, а последователь
ные векторы Ъ являются сопряженными друг к другу.
Перепишем соотношения (10.13.3) в виде
7г =
9 l+ i9 i+
1
(fift+i -
эЪ г
А< =
9 i) T 9 i+ 1
т
9 i 9г
91Ьг
h jA hi
>
(10.13.6)
(10.13.7)
Теперь попытаемся построить векторы gi и h i, не зная в явном виде матри
цу Гессе А. Для этого вновь предположим, что минимизируемая функция
является квадратичной формой вида (10.1.10). В точке Xi зададим вектор
370
Глава 10.
Минимизация функций
Qi — -V M (® j). Если теперь найти минимум по направлению hi при исходной
топке ж*, то получим точку x*+i, а в ней зададим вектор g ^ i — —VM(xj_ц ).
Тогда векторы д ^ \ и gi будут ортогональны, поскольку из соотношения
(10.1.12) следует, что
gi — - V M (x i) — b - А х г
и
9 iyi = - V M ( x i+i) = b - А (х г + Aih t) - gi - XiAhi.
(10.13.8)
Здесь Ai было выбрано таким образом, чтобы Xj+i являлось точкой минимума
по направлению h i. Это означает, что градиент в этой точке перпендикулярен
h i, т. е. что
h,JVM(xi+1) = - h j g i+1 = 0.
(10.13.9)
Отсюда и из соотношения (10.13.8) следует, что действительно
О= h j g i+1 = h j g i - XihjAhi.
что согласуется с формулой (10.13.7).
Основываясь на полученных результатах, теперь можно выписать следую
щий алгоритм. В качестве исходной точки берется точка Хо, в ней строится
градиент V M ( xq ). а затем два вектора полагаются равными градиенту с про
тивоположным знаком
дх - - V M ( x о),
h j = - V M ( xq).
После этого осуществляется минимизация по направлению h ^. В найденной
точке минимума х \ строится вектор дг — —V M (xi), по формуле (10.13.6)
вычисляется значение величины
71
(92 - g i ) Tgi
1
9i9i
а затем на основании соотношения (10.13.2) ищется вектор
/г2 = дх + 7 1 ^ 3 .
Далее, беря в качестве исходной точку х ь осуществляется минимизация по
направлению h*z и т. д.
Программа 10.9. Подпрограмма MINCJG для нахождения минимума функции
п переменных путем последовательной минимизации по направлениям сопря
женных градиентов
К ом анда
в ы зо в а : c a l l m i n c j g ( x o , n , n r e d , l i s t , u s e r f n ,
FMIN, E P SIL N , NSTEP)
10.13.
В х одны е
Минимизация по направлениям сопряженных градиентов
371
п а р а м е т р ы : ХО — n -м е р н ы й в е к т о р , с о д е р ж а щ и й зн а ч е н и я
координат и сходн ой точки
N — к о л и ч ест в о п е р е м е н н ы х
п
NRED, L IS T — т е ж е , ч т о в п р о г р а м м е 1 0 .7
USERFN-—та ж е ф у н к ц и я , н а п и с а н н а я п о л ь зо в а т е л е м , ч т о и в п р о г р а м м е
10.2
EPSILN — о т н о с и т е л ь н а я т о ч н о с т ь , в ы ч и с л я е м а я п о ф о р м у л е (1 0 .1 .2 1 )
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш агов
В ы х о дн ы е
п а р а м е т р ы : ХО — n -м е р н ы й в ек т о р , с о д е р ж а щ и й зн а ч е н и я
координат точки м ин и м ум а
FMIN — зн а ч е н и е ф у н к ц и и в т о ч к е м и н и м у м а
NSTEP — к о л и ч ест в о п о т р е б о в а в ш и х с я и т е р а ц и й . П а р а м е т р п о л а г а е т с я
р ав н ы м —1, есл и м е т о д н е с о ш ел ся
В ел и ч и н ы
по у м о л ч а н и ю : NSTEP п о л а г а е т с я р ав н ы м 1 0 0 0 , есл и з а д а н н о е
зн а ч е н и е э т о г о п а р а м е т р а < 0.
EPSILN п о л а га ет ся р а в н ы м 1 0 ~ 8 , есл и з а д а н н о е зн а ч е н и е э т о г о п а р а м е т р а
б у д е т < 0.
К о м м е н т а ри и : З а д а н н о е зн а ч е н и е п а р а м е т р а NSTEP о г р а н и ч и в а ет с в е р х у
д л и н у п о с л е д о в а т е л ь н о с т и x q . x i ___ , а т а к ж е я в л я е т с я м а к с и м а л ь н о
в о зм о ж н ы м к о л и ч е с т в о м и т е р а ц и й п р и м и н и м и за ц и и п о з а д а н н о м у
н а п р а в л ен и ю . В ы д а в а е м о е в р е зу л ь т а т е к о л и ч е с т в о п о т р е б о в а в ш и х с я
и т е р а ц и й р а в н о д л и н е п р и в е д е н н о й вы ш е п о с л е д о в а т е л ь н о с т и .
SUBROUTINE MINCJG(ХО , N . NRED, LIST sUSERFN, FMIN, E PSILN , NSTEP)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
PARAMETER(MAXN=50)
DIMENSION X 0(N ),G R (M A X N ), G(M AXN),H(M AXN),D(M AXN),LIST(N)
PARAMETER(MAXSTP=1000, EPSDEF=1. D - 8 , T = 1 . D - 1 5 , ZE R 0=0. DO,
+ 0 N E -1 .D 0 )
EXTERNAL USERFN
IF (N S T E P .L T .1) NSTEP-MAXSTP
EPS=EPSILN
IF (E P S .L E .Z E R O ) EPS=EPSDEF
С и н и ц и а л и за ц и я : н а п р а в л е н и я G и К я в л я ю тся г р а д и е н т о м в т о ч к е ХО
FMINL=USERFN(ХО, N)
IF (N R E D .L E .O ) THEN
С в с е п ер ем ен н ы е заф и к си р ов ан ы
FMIN=FMINL
NSTEP=1
GO ТО 4 0
END IF
CALL AUXGRD( XO, GR, N , NRED, L I S T , USERFN)
CALL MTXMSV(GR, G, -O N E, N)
CALL MTXCPV(G,H,N)
372
Глава. 10.
Минимизация функций
С начало итерац и он н ого п р о ц ес с а
D0 10 ISTE P=1,N STEP
LSTEP=ISTEP
I F ( I S T E P .G T .l) THEN
IF(A BS(FM IN L -FM IN )
.L T . EPS*A B S(FM IN )+T ) THEN
NSTEP=ISTEP
GO TO 30
END IF
FMINL=FMIN
END IF
NST=NSTEP
С т о ч к а XO я в л я е т с я т о ч к о й минимума п о н ап р ав л ен и ю Н
CALL M INDIR(XO,H ,N,USERFN,FM IN,NST,ZERO)
IF (N S T .L T .O ) GO TO 20
CALL AUXGRD(XO, GR, N , NRED, L I S T , USERFN)
С в е к т о р GR я в л я е т с я г р а д и е н т о м в т о ч к е XO
С в ы ч и сл ен и е сл ед у ю щ его н а б о р а н а п р а в л е н и й G и Н
CALL MTXMSV(GR, GR, -ONE, N)
CALL M TXSBV(GR,G,D,N)
CALL M TX D 0T(D ,G R ,S,N )
CALL M TXDOT(G,G,A,N)
I F (A .E Q . ZERO) GO TO 3 0
GAMMA=S/A
CALL MTXMSV(H,H,GAMMA,N)
CALL MTXADV(GR, H, H , N)
CALL MTXCPV(GR,G,N)
10 CONTINUE
2 0 NSTEP=-1
GO TO 4 0
3 0 NSTEP=LSTEP
4 0 CONTINUE
END
Сравнение рис. 1 0 .1 3 и рис. 1 0 .1 2 показывает превосходство метода миними
зации по направлениям сопряженных градиентов над методом наискорейшего
спуска, особенно явно это заметно вблизи точки минимума.
10.14. Минимизация посредством квадратичной формы
Если минимизируемая функция М( х) имеет простой вид (10.1.10), то коорди
наты точки минимума можно напрямую определить из соотношения (10.1.13).
Если же это не так, то в окрестности точки xq функцию М( х) всегда можно
разложить в ряд
М( х) — M ( x q ) — b(x - хо) + ~(х - ж0)т А(ж - ж0) Н---- .
Lj
(10.14.1)
10.14.
Минимизация посредством квадратичной формы
373
где
Ъ - - V M ( x о),
A ik =
д 2М
•
(1 0 .1 4 .2 )
O X iO X k
Т огда п ри бли ж ен и ем к точке м ин им ум а б уд ет сл уж и ть точка
х \ — xq + А ~ г Ь.
(1 0 .1 4 .3 )
Т еп ер ь , вы ч и сл и в п р о и зв о д н ы е в т о ч к е
вновь м о ж н о о п р е д е л и т ь Ъ и А, а
н а и х о с н о в а н и и п о ф о р м у л е (1 0 .1 4 .3 ) н а й т и с л е д у ю щ е е п р и б л и ж е н и е Х 2 и т. д .
В с л у ч а е к о г д а п ер в ы е ч л е н ы р а з л о ж е н и я (1 0 .1 4 .1 ) я в л я ю т с я д о с т а т о ч н о
т о ч н о й а п п р о к с и м а ц и ей ф у н к ц и и
Af ( x) , э т о т м е т о д б ы с т р о с х о д и т с я , п о с к о л ь
к у в н ем д е л а е т с я п о п ы т к а о с у щ е с т в и т ь ск ач ок с р а з у в т о ч к у м и н и м у м а . В п р о
т и в н о м с л у ч а е так ой м е т о д м о ж е т в о о б щ е н е со й т и сь . В р а з д . 10.1 (см . р и с. 1 0 .1 )
д л я о д н о м е р н о г о с л у ч а я мы у ж е о б с у ж д а л и с в я за н н ы е с эт и м п р о б л ем ы .
П р о г р а м м а 10.10. П о д п р о г р а м м а MINQDR д л я н а х о ж д е н и я м и н и м у м а ф у н к ц и и
п п ер ем ен н ы х м е т о д о м м и н и м и за ц и и п о с р е д с т в о м к в а д р а т и ч н о й ф о р м ы
КОМАНДА ВЫЗОВА: CALL MINQDR( Х 0 , N , NRED, L I S T , USERFN,
FMIN, E P SIL N , NSTEP, SCRAT)
В х о дн ы е
парам етры :
XO — n -м е р н ы й в е к т о р , с о д е р ж а щ и й зн а ч е н и я
координат исходной точки
N — к о л и ч ест в о п е р е м е н н ы х
п
NREDjLIST — те ж е , ч т о и в п р о г р а м м е 10.7
USERFN — та ж е ф у н к ц и я , н а п и с а н н а я п о л ь з о в а т е л е м , ч т о и в п р о г р а м
м е 10.2
EPSILN — о т н о с и т е л ь н а я т о ч н о с т ь , в ы ч и с л я е м а я п о ф о р м у л е (1 0 .1 .2 1 )
NSTEP - м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш агов
SCRAT — р а б о ч и й м а с с и в , м и н и м а л ь н ы й р а з м е р к о т о р о г о п' х п'
374
Глава 10.
В ы х о дн ы е
Минимизация функций
п а р а м е т р ы : Х0 — n -м е р н ы й в е к т о р , с о д е р ж а щ и й зн а ч е н и я
координат точки м ин им ум а
FMIN — зн а ч е н и е ф у н к ц и и в т о ч к е м и н и м у м а
NSTEP — к о л и ч ест в о п о т р е б о в а в ш и х с я и т е р а ц и й . П а р а м е т р п о л а га ется
р ав н ы м —1, есл и м е т о д не с о ш е л с я
В еличины
по у м о л ч а н и ю : NSTEP п о л а г а е т с я р ав н ы м 1 0 0 0 , есл и з а д а н н о е
зн а ч е н и е э т о г о п а р а м е т р а < 0.
EPSILN п о л а г а е т с я р ав н ы м 1 0 “ 8 , есл и з а д а н н о е зн а ч е н и е э т о г о п а р а м е т р а
<0.
SUBROUTINE MINQDR(ХО, N , NRED, L I S T , USERFN, FMIN, E PSILN ,
+NSTEP,HESSE)
PARAMETER(MAXN=50)
IMPLICIT DOUBLE PRECISION ( A - H .0 - Z )
DIMENSION X0(N),G R A D (M A X N ), HESSE(NRED,NRED),X1(M AXN),
+X1RED(MAXN)
DIMENSION L IS T (N )
LOGICAL OK
PARAMETER( MAXSTP=1 0 0 , EPSDEF=1. D - 8 , T = 1 . D - 1 5 , ALAMS=1. D -3 )
PARAMETER(ZER0=0. DO, 0N E = 1. DO)
EXTERNAL USERFN
0K =. TRUE.
I F ( N S T E P .L T .l) NSTEP=MAXSTP
EPS=EPSILN
IF (E P S .L E .Z E R O ) EPS=EPSDEF
ALAM=ALAMS
С н а ч а л ь н о е з н а ч е н и е м и н и м и зи р уем ой функции
FMINL=USERFN( Х 0 , N)
IF (N R E D .L E .O ) THEN
FMIN=FMINL
NSTEP=1
GO TO 2 0
END IF
С начало и тер ац и он н ого п р о ц е с с а
DO 10 IST E P=1,N ST E P
CALL AUXGRD(X0, GRAD, N , NRED, L I S T , USERFN)
CALL AUXHES(X0, HESSE, N , NRED, L I S T , USERFN)
С в ы ч и сл ен и е з н а ч е н и й м и н и м и зи р уем ой ф ункции д л я д в у х
С зн а ч е н и й л я м б д а (ALAM)
CALL MTXSVD(HESSE, GRAD, X1RED, R,NRED, NRED, 1 , ZERO, OK)
IF (.N O T.O K ) THEN
NSTEP=-4
GO TO 20
END IF
CALL MTXZRV(XI,N)
10 15.
Минимизация методом Маркардта
37 5
CALL M TXPSV(Xl#XlREDs N ,N R E D ,L IST )
CALL M TX SBV (X O ,X 1,X1,N )
FM IN=USERFN(XI,N)
С п р о в е р к а у с л о в и я за в е р ш е н и я п р о ц е с с а
I F ( ABS(FMINL-FMIN) .L T . EPS*ABS(FM IN )+T) THEN
NSTEP=ISTEP
GO TO 2 0
END IF
CALL M TXCPV(X1,X0,N)
FMINL=FMIN
10 CONTINUE
NSTEP=-1
2 0 CONTINUE
END
Н а р и с. 1 0 .1 4 и з о б р а ж е н ы р е зу л ь т а т ы р а б о т ы э т о г о м е т о д а . М о ж н о з а м е
тить, что м иним ум д ости гается ф ак ти ч еск и з а п ар у итерац ий.
Рис. 10.14. М инимизация посредством квадратичной формы .
10.15. Минимизация методом Маркардта
МАРКАРДТ [16] разработал метод, обладающий вблизи точки минимума такой
ж е с к о р о с т ь ю с х о д и м о с т и , ч т о и м е т о д м и н и м и за ц и и п о с р е д с т в о м к в а д р а т и ч
н ой ф о р м ы , и и м ею щ и й т а к у ю ж е у с т о й ч и в о с т ь , ч т о и м е т о д н а и с к о р е й ш е г о
сп уск а (ч т о о с о б е н н о в а ж н о в т о м с л у ч а е , к о г д а и с х о д н а я т о ч к а н а х о д и т с я
376
Глава 10.
Минимизация функций
достаточно далеко от точки минимума). Он основывается на следующих до
вольно простых рассуждениях.
Для нахождения г-й аппроксимации точки минимума применяется рекур
рентное соотношение (10.14.3). имеющее вид
х г — х г-х + А~ ХЬ.
(10.15.1)
Оно означает, что в точку Xi мы попали из точки ct^-i сдвигом вдоль вектора
А~ХЬ. Здесь Ь — —V M (x i-i) является градиентом с противоположным знаком,
т. е. направлением наискорейшего спуска для функции М в точке x*_i. Если бы
вместо матрицы А в соотношении (10.15.1) использовалась единичная матрица,
умноженная на константу, т. е. если бы вместо (10.15.1) имелось соотношение
Xi = Хг- i + (AI)_1fr,
(10.15.2)
то из точки Хг—1 мы бы сдвигались вдоль вектора Ъ/А. Это означало бы сдвиг
по направлению наискорейшего спуска минимизируемой функции, который
был бы тем меньше, чем больше была бы константа Л. Однако достаточно ма
ленький сдвиг в направлении наискорейшего спуска всегда остается движением
в направлении минимума (по крайней мере в том случае, когда мы находимся
уже в малой «окрестности» точки минимума, т. е. для одномерного случая,
представленного на рис. 10.1. находимся между двумя максимумами). Метод
Маркардта заключается в интерполяции соотношений (10.15.1) и (10.15.2) та
ким образом, чтобы при каждой следующей итерации значение функции М
убывало и чтобы при этом сохранялась (настолько, насколько это возможно)
такая же скорость сходимости, что и у метода (10.15.1).
Согласно этому методу, вместо формулы (10.15.1) или (10.15.2) для нахо
ждения следующего приближения используется формула
Хг
=
**_!
+ (А + \ 1 ) - ' Ь .
(10.15.3)
Здесь параметр Л определяется следующим образом. Сначала выбирается не
кое фиксированное число v > 1 и за
берется значение Л, полученное при
предыдущей итерации. В качестве начального значения можно взять, напри
мер, Л<°> = 0.01. Очевидно, что величина х г-, вычисленная по формуле (10.15.3),
зависит от Л. Поэтому вычисляются две точки: Хг(А'г_1^) и х* (Д(г !)/!/) (для
них Л полагается равным соответственно А*' - 1) и А^г -^/V), а также соответ
ствующие им значения функции М* = М(хг(А^-1^)) и М-"' = М(х*(Х^г~г^/и)).
Эти величины сравниваются с величиной Мг_ i = M(x*_i). От результата срав
нения зависят дальнейшие действия. Возможны следующие варианты:
(i) M[v) < Мг- 1 Полагают х* = х*(А^” 1^/^) и А^ = A
(и) М И > М,_! И Mi < Мг-v.
Полагают х^ = Хг(А^г_1^) и А^ = A^-1V
10.15, Минимизация методом Маркардта 377
(ш) М , ^ > M i. 1 n M i > M i- 1:
Заменяют
на А^” 1)// и заново вычисляют х г(\(г~ 1 ^/ v) и жДА^-1^), а
также соответствующие значения минимизируемой функции. Затем вновь
производится сравнение полученных результатов.
Этот алгоритм обеспечивает убывание значения минимизируемой функции
при каждой последующей итерации, а также гарантирует, что величина А все
гда будет настолько мала, насколько это будет возможно в данном конкретном
случае. Очевидно, что в пределе при А 0 соотношение (10.15.3) принимает
вид (10.15.1), т. е. метод сводится к минимизации посредством квадратичной
формы. При больших значениях А рекуррентное соотношение (10.15.3) сводит
ся к виду (10.15.2), которое в свою очередь обеспечивает медленную, однако га
рантированную сходимость к точке минимума методом наискорейшего спуска.
На рис. 10.15 представлены результаты применения метода Маркардта к
конкретной задаче. Его траектория представляет собой планомерное движе
ние к точке минимума. Сравнение приведенных результатов с результатами,
представленными на рис. 10.14, показывает, что метод минимизации с помо
щью квадратичной формы сходится за меньшее число итераций. Однако метод
Маркардта является более эффективным: он дает возможность отыскать ми
нимум в целом ряде случаев, когда метод минимизации посредством квадра
тичной формы не сходится, например в случаях с некорректно определенными
начальными параметрами.
П р о г р а м м а 10.11. Подпрограмма MINMAR для нахождения минимума функции
п переменных методом Маркардта
378
Глава 10.
Минимизация функций
К оманда ВЫЗОВА: CALL МINMAR(XO, N, NRED.LIST,USERFN,
F M I N ,EPS ILN,N S T E P ,SCRAT)
В ходные
парам етры :
те же, что и в программе 10.10
В ыходные
парам етры :
В еличины
по умолчанию :
С
С
С
С
те же, что и в программе 10.10
те же, что и в программе 10.10
SUBROUTINE M I N M A R (Х0,N ,N R E D ,L I S T ,US E R F N ,F M I N ,EP S I L N ,
+NSTEP,HESSE)
PARAMETER(MAXN=50)
IMPLICIT DOUBLE PRECISION (A-H.0-Z)
DIMENSION X 0 ( N ) ,GRA D(MA XN),HESSE(NRED,NRED),X1(MAXN),
+X2CMAXN),XIRED(MAXN),X2RED(MAXN)
DIMENSION LIST(N)
LOGICAL NEW,OK
PARAMETER(MAXSTP=100,EPS DEF= 1.D - 8 ,T = 1.D - 15,ALA MS=1.D-3)
PARAMETER(ZER0=O.D O ,0NE = 1 .DO)
EXTERNAL USERFN
0 K = .T R U E .
IF(NSTEP.LT.l) NSTEP=MAXSTP
EPS=EPSILN
IF(EPS.LE.ZERO) EPS=EPSDEF
ALAM=ALAMS
начальное значение минимизируемой функции
FMINL=USERFN(XO,N)
IF(NRED.LE.O) THEN
FMIN=FMINL
NSTEP=1
GO TO 20
END IF
начало итерационного процесса
DO 10 ISTEP=1,NSTEP
CALL AUXGRD(XO,G R A D ,N,N R E D ,L I S T ,USERFN)
CALL AUXHES( XO,H E S S E ,N,N R E D ,L I S T ,USERFN)
вычисление значений минимизируемой функции для
двух значений лямбда (ALAM)
CALL MTXMAR(HESSE,G R A D ,A L A M ,X 1 R E D ,X 2 R E D ,N R E D ,N R E D ,Z E R O ,OK)
IF(.NOT.OK) THEN
NSTEP=-4
GO TO 20
END IF
CALL MTXZRV(Xl.N)
CALL MTXZRV(X2,N)
CALL MTXPSV(X1,X1RED,N,NRED,LIST)
CALL MTXPSV(X2,X2RED,N,NRED,LIST)
10.16.
О выборе метода минимизации
37 9
CALL M T X SB V (X 0,X 1,X 1,N )
CALL MTXSBV (XO ,X2 Д 2 , N)
F1=U SE R FN (X I, N)
F2=USERFN( X 2 ,N )
С оц ен к а зн а ч ен и я п о л у ч ен н о го р е зу л ь т а т а
IF (F 2 .L E .F M IN L ) THEN
С ум еньш ение л я м б д а и п е р е х о д к н о в о й т о ч к е
ALAM=ALAM*0. 1D0
CALL MTXCPV( Х 2 , XO, N)
FMIN=F2
NEW=. TRUE.
ELSE IF ( F 2 . GT.FMINL+T .AND. F I , LE.FMINL+T) THEN
С со х р ан ен и е п реж него зн ач ен и я лям бда и п е р е х о д к новой точ к е
CALL MTXCPV(X I Д О , N)
FMIN=F1
NEW=.TRUE.
ELSE
С ув ел и ч ен и е лям бда и отк л он ен и е н овой точки
ALAM=ALAM*1 0 . DO
NEW=.FALSE.
END IF
IF(NEW) THEN
С п р о в е р к а у с л о в и я за в е р ш е н и я п р о ц е с с а
IF(A BS(FM IN L-FM IN )
.L T . EPS*ABS(FM IN )+T) THEN
NSTEP=ISTEP
GO TO 20
END IF
FMINL=FMIN
END IF
10 CONTINUE
NSTEP=-1
2 0 CONTINUE
END
10.16. О выборе метода минимизации
Имея в распоряжении такое множество разнообразных методов минимизации,
пользователь естественно сталкивается с проблемой выбора метода, подходя
щего для решения конкретной задачи. Перед тем как дать рекомендации по
этому поводу, сначала вновь перечислим различные методы минимизации.
Симплекс-метод (программа MINSIM) является самым устойчивым. В нем
вычисляются только значения функции М(х). Однако этот метод медленно
сходится. Более быстрым, хотя и достаточно устойчивым, является метод м и
нимизации по заданным направлениям (программа MINP0W). Для его работы
также необходимо вычислить только значения минимизируемой функции.
380
Глава 10.
Минимизация функций
В методе минимизации по направлениям сопряженных градиентов
(п р о
г р а м м а MINCJG) т р е б у е т с я (как н а т о у к а зы в а е т н а зв а н и е м е т о д а ) н а х о д и т ь не
тол ь к о зн а ч е н и я м и н и м и зи р у е м о й ф у н к ц и и , н о и ее г р а д и е н т ы . О д н а к о п р и
эт о м к ол и ч еств о и т е р а ц и й п р и б л и з и т е л ь н о с о в п а д а е т с ч и сл ом и т е р а ц и о н н ы х
ш агов в м е т о д е м и н и м и за ц и и п о за д а н н ы м н а п р а в л е н и я м (п р о г р а м м а MINP0W).
В методе минимизации посредством квадратичной формы (программа
MINQDR) и методе Маркардта (программа MINMAR) помимо этого приходит
ся вычислять также матрицу Гессе для вторых производных. Производные
при этом находятся численными методами при помощи специальных служеб
ных программ (утилит). Вместо них пользователь может написать собственные
программы, в которых производные будут вычисляться аналитически. Если ис
ходные значения располагаются довольно близко к точке минимума, то метод
MINQDR сходится буквально за пару итераций. В методе MINMAR скорость сходи
мости ниже. Однако этот метод более устойчив; он часто сходится при таких
начальных значениях, для каких метод MINQDR расходится.
С у м м и р у я п е р е ч и с л е н н ы е с в о й с т в а р а з л и ч н ы х м е т о д о в м и н и м и за ц и и , м о ж
н о д а т ь с л е д у ю щ и е р е к о м е н д а ц и и п о в ы б о р у хметода д л я р е ш е н и я к о н к р е т н о й
за д а ч и :
(1) Для решения задач, в которых требуется осуществить минимизацию лишь
один раз, а время вычислений при этом является несущественным, следует
использовать либо метод MINSIM, либо MINP0W.
(2) Для решения задач, в которых минимизация осуществляется многократ
но (для различных числовых данных), рекомендуется применять метод
MINMAR. Если же при этом имеется достаточно точное начальное прибли
жение, то можно также воспользоваться методом MINQDR.
(3) При решении задач второго типа вычисление производных (которые ис
пользуются в программах MINMAR и MINQDR) нужно осуществлять аналити
ческими методами. Это потребует дополнительных усилий при программи
ровании, однако по сравнению с численными методами повысит точность
полученных результатов, а кроме того, в большинстве случаев сэкономит
время вычислений.
Сделаем теперь еще одно замечание, касающееся сравнительного анализа
методов минимизации, описанных в данной главе, и метода наименьших ква
дратов, представленного в главе 9. Применение метода наименьших квадратов
является частным случаем задачи минимизации. В методе наименьших ква
дратов минимизируемая функция представляет собой либо сумму квадратов
вида (9.1.8), либо обобщенную сумму квадратов вида (9.5.9). Обобщенная сум
ма квадратов отличается тем, что в ней появляется дополнительная матрица
А — матрица производных. Однако это не производные минимизируемой функ
ции, а производные некой функции / , задающей для конкретной задачи вид
функциональной зависимости измеряемых значений от неизвестных параме
тров (см. (9.5.2)). При этом значения вторых производных находить не нуж
но. Кроме этого, если для решения задачи методом наименьших квадратов
10.17. Анализ ошибок
381
используется сингулярное разложение (как это было сделано в программах,
представленных в главе 9), то по сравнению с минимизацией напрямую суммы
квадратов в критических случаях точность вычислений значительно повыша
ется (см. разд. А. 14, в частности пример А.4).
Поэтому задачи на метод наименьших квадратов всегда следует решать при
помощи программ, приведенных в главе 9. В частности, это следует делать
при решении задач аппроксимации данных некоторой функцией для выборок
большого объема (задач, подобных примерам, рассмотренным в разд. 9.6). При
этом матрица А будет содержать много строк и мало столбцов. При нахожде
нии значений минимизируемой функции приходится вычислять матрицу АТА,
а поэтому, как упоминалось выше, существует проблема снижения точности
по сравнению с методом сингулярного разложения.
10.17. Анализ ошибок
В задачах анализа данных методы минимизации используются при нахожде
нии наилучших оценок х для неизвестных величин х. В этом случае обыч
но минимизируемая функция М (х) либо представляет собой сумму квадратов
(см. главу 9), либо является функцией правдоподобия (умноженной на —1) (см.
главу 7). При использовании соотношений из главы 7 необходимо помнить, что
n-мериый вектор, называвшийся там А, теперь обозначается через х. А случай
ные величины
из главы 7 являются теперь результатами измерений (они
обычно обозначались через у в главе 9).
Величину ошибки для оценки х можно найти напрямую из соотношений,
полученных в разделах 9.7, 9-8 и 9.13, обозначив через
Нгк =
д2М \
Кдхгдхк ) х=ь
(10.17.1)
элементы симметричной матрицы вторых производных (матрицы Гессе) ми
нимизируемой функции. Далее коэффициент J ql будет равен
Iql = С
(10.17.2)
если минимизируемая функция представляет собой сумму квадратов. Если же
эта функция является функцией правдоподобия (умноженной на —1), то в этом
случае коэффициент полагается равным
f QL = 1/2.
(10.17.3)
1.
Ковариационная матрица. Симметричные ошибки. Ковариационная
матрица для вектора х равна
Cs = 2f QLH - 1.
(10.17.4)
Квадратные корни из диагональных элементов этой матрицы являются (сим
метричными) ошибками
Axi
(10.17.5)
382 Глава 10. Минимизация функций
Определять ковариационую матрицу имеет смысл только в том случае, если
ошибки измерений малы и/или выборка, составленная из результатов измере
ний, имеет большой объем, т. е. если выполнено условие (7.5.8).
2.
Доверительный эллипсоид. Симметричные доверительные границы. Ко
вариационная матрица определяет границы доверительного эллипсоида рав
ных вероятностей (см. разделы 5.10 и А.12), центр которого находится в точке
х — х. Вероятность того, что истинное значение х лежит внутри этого элли
псоида, вычисляется по формуле (5.10.20). Границы эллипсоида, для которого
такая вероятность равна фиксированному числу W (это его доверительная
граница), определяются доверительной матрицей
С~ ^ = Xw( nf ) Cx‘
(10.17.6)
Здесь Xw( n f ) является квантилью хи-квадрат распределения с nj степенями
свободы при соответствующей вероятности Р = W [см. (5.10.19) и (С.5.3)].
Число степеней свободы п / равно разности между количеством результатов
измерений и количеством параметров, оцениваемых в ходе минимизации соот
ветствующей функции. Квадратные корни из диагональных элементов матри
цы С
представляют собой расстояния от симметричных доверительных
границ до центра:
{Ю _ ~
x i± — Х4 ±
(10.17.7)
П р о г р а м м а 10.12. Подпрограмма MINC0V вычисляет ковариационную матрицу
или доверительную матрицу для параметров, полученных в результате мини
мизации некоторой функции
К оманда вы зо в а :
call
m in c o v ( x o , n
, nred, l is t , u ser fn ,
FACT, SCRAT1, SCRAT2, CX, OK)
В х о дн ы е п а р а м е т р ы : XO — n-мерный вектор a?o, компоненты которого
являются координатами точки минимума
N—- количество переменных п
NRED— уменьшенное количество переменных пf
LIST —n-мерный вектор, компоненты которого указывают, какие из п
переменных фиксированы (элемент вектора — 0) или изменяются (элемент
вектора = 1)
USERFN —имя функции, написанной пользователем
FACT —множитель 2f QL X w( n f) [см. (10.17.4), (10.17.6)]
SCRAT1—рабочий массив, минимальный размер которого п' х п!
SCRAT2 —рабочий массив, минимальный размер которого п! х п
СХ—доверительная матрица С
размера п! х п'.
При X\v(n f) — 1? т*е* ПРИ FACT = 2/дь, матрица СХ является
ковариационной матрицей.
В ыходные
парам етры :
10.17. А нализ
ошибок
383
0К — л о г и ч е с к а я п е р е м е н н а я (о н а п р и н и м а е т зн а ч е н и е . TRUE. ( и с т и н а ) ,
есл и о б р а щ е н и е м а т р и ц ы у д а л о с ь о с у щ е с т в и т ь , .FALSE, (л о ж ь ), есл и э т о г о
с д е л а т ь не у д а л о с ь )
В ел и ч и н ы
по у м о л ч а н и ю : Е с л и за д а н н о е зн а ч е н и е п а р а м е т р а FACT
< 0,
т о о н п о л а га ет ся р а в н ы м 1.
SUBROUTINE MINC0V(ХО, N , NRED, L I S T , USERFN, FACT, SCRAT1, SCRAT2,
+CX,0K)
PARAMETER(MAXN=50)
IMPLICIT DOUBLE P R E C IS IO N (A -H ,0 -Z )
DIMENSION X 0 (* ),L I S T (* ),C X (N R E D ,* ),S C R A T 1 (N R E D , * ) ,
+SCRAT2(NRED,* )
DIMENSION R(MAXN)
PARAMETER (E P S = 1 .D -1 0 ,0 N E = 1 .D 0 )
LOGICAL OK
EXTERNAL USERFN
FRAC=0. DO
MS=NRED
NS=NRED
LS=NRED
CALL AUXHES(XO, SCRAT1, N , NRED, L I S T , USERFN)
CALL MTXUNT( SCRAT2 , MS)
CALL MTXSVD(SCRAT1, SCRAT2, CX, R , MS, NS #L S , FRAC, OK)
I F (F A C T .L T .E P S) THEN
F=0NE
ELSE
F=FACT
END IF
CALL MTXMSC(CX,CX,F,NRED,NRED)
END
3.
Д оверит ельная область. Е сл и н а й д е н н ы е э л л и п с о и д р а в н ы х в е р о я т н о
ст ей и л и д о в е р и т е л ь н ы й э л л и п с о и д н е д а ю т п р е д с т а в л ен и я о в е л и ч и н е о ш и б к и ,
т о при эт о м все ещ е о с т а е т с я в о з м о ж н о с т ь п о с т р о и т ь д о в е р и т е л ь н у ю о б л а с т ь ,
соответствую щ ую д ов ер и т ел ьн ом у уровн ю
W . О н а о п р е д е л я е т с я как г и п е р п о
в ер х н о ст ь
М { х ) = М ( х ) + X w ( n f ) f QL.
(1 0 .1 7 .8 )
П р и п о м о щ и п р е д с т а в л е н н о й н и ж е п р о г р а м м ы с т р о и т ся к о н т у р н а я г р а н и ц а
п о п е р е ч н о г о с еч ен и я эт о й г и п е р п о в е р х о с т и н а п л о с к о с т и , п р о х о д я щ е й ч е р е з
т о ч к у х и п а р а л л е л ь н о й п л о с к о с т и с к о о р д и н а т н ы м и о ся м и (xi,Xj). З д е с ь Xi и
Xj — д в е к о м п о н ен т ы в е к т о р а п а р а м е т р о в х .
Программа 1 0 .1 3 . П о д п р о г р а м м а MINCNT с т р о и т д о в е р и т е л ь н у ю о б л а с т ь н а
плоскости , н атя н утой н а к оор ди н атн ы е оси. соответствую щ и е д в ум п ар ам е
т р а м , зн а ч е н и я к о т о р ы х о ц е н и в а л и с ь в п р о ц е с с е м и н и м и за ц и и
384
Минимизация функций
Глава 10.
К оманда в ы зо в а :
call m in c n t ( i x
,jx
д ю Д JO, d x i , d x j ,
N X I, NXJ, FCONTД О , N ,USERFN)
В х о д н ы е п а р а м е т р ы : IX , JX — и н д ек сы г и j , о б о зн а ч а ю щ и е к о м п о н ен т ы Xi
и
Xj n -м е р н о г о в е к т о р а п а р а м е т р о в х . Э т и к о м п о н ен т ы б у д у т о п р е д е л я т ь
плоскость, в к отор ой б у д е т п остр оен а дов ер и тел ьн ая обл асть
X IO ,D X I,N X I — н а ч а л ь н о е зн а ч е н и е
и н т ер в а л о в
х ^о, д л и н а и н т е р в а л а A x i и к о л и ч е с т в о
n Xt д л я п е р е м е н н о й Xi
XJO , DXJ, NXJ — т о ж е д л я п е р е м е н н о й
Xj
FCONT — з н а ч е н и е м и н и м и з и р у е м о й ф у н к ц и и , т. е. з н а ч е н и е п р а в о й ч а с т и
со о т н о ш е н и я (1 0 .1 7 .8 ) — то ч к а , л е ж а щ а я н а г р а н и ц е с т р о я щ е й с я
довер и тел ьн ой обл асти
ХО — n -м ер н ы й в ек т о р
х , к о м п о н е н т ы к о т о р о г о я в л я ю т ся зн а ч е н и я м и
п ер ем ен н ы х в т о ч к е м и н и м у м а
N — к о л и ч ест в о п е р е м е н н ы х п
USERFN— и м я ф у н к ц и и , н а п и с а н н о й п о л ь зо в а т е л е м
SUBROUTINE MINCNT ( I X , JX ,Х Ю Д JO , D X I, DXJ, N X I, NXJ , FCONT Д О , N,
+USERFN)
PARAMETER(MAXN=50)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DIMENSION X 0(N )
DIMENSION X I ( 2 ) ,X J (2 ),F (2 ,2 ),X O S A V (M A X N )
EXTERNAL USERFN
CALL MTXCPV(XO,X0SAV,N)
DO 4 0 1 = 0 , N X I -1
X I (1 )= X I 0 + I * D X I
XI ( 2 )= X I (D + D X I
DO 3 0 J = 0 , N X J-1
X J (1 )= X J 0 + J * D X J
X J (2 )= X J (1 )+ D X J
DO 2 0 I S = 1 , 2
DO 10 J S = 1 ,2
CALL MTXCPV(X0SAVД 0 , N)
X 0 (IX )= X I(IS )
X 0 (J X )= X J (J S )
F ( I S , JS )= U SE R F N (X 0, N)
10
CONTINUE
20
CONTINUE
CALL G R P X C T ( X I ( 1 ) , X I ( 2 ) , X J ( 1 ) , X J ( 2 ) , F ( 1 , 1 ) , F ( 1 , 2 ) , F ( 2 , 1 ) ,
+
30
F ( 2 , 2 ) , FCONT)
CONTINUE
4 0 CONTINUE
CALL MTXCPV(X0SAVД 0 , N)
END
10.17.
Анализ ошибок
3 85
4.
Несимметричные ошибки и доверительные границы. Если доверитель
ная область не является эллипсоидом, то в этом случае несимметричные дове
рительные границы для переменной Хг можно вычислить по формуле
min |м (ж ); ц = x ^ ) | = М( х) + Xw( n f)fQL-
(10.17.9)
Величины разностей
Л х ' Г = *g r> -
4г<Г> = г, - *<Г’
(10.17.10)
представляют собой (несимметричные) расстояния до доверительных границ.
Если X\v(n f) — 1? то можно определить значения несимметричных ошибок
Ах{+ и Axi
Программа 1 0 .1 4 . Подпрограмма MINASY вычисляет значения несимметрич
ных ошибок (или расстояния до доверительных границ) для параметров, ко
торые оценивались в процессе минимизации
К оманда
вы зо ва : call minasy ( u seefn , n , need , l i s t , xo ,
CX, FC0NT, DXPLUS, DXMINS, XSCEAT, NSTEP)
В ходные парам етры : USEEFN — имя функции, написанной пользователем
N — количество переменных п
NEED — к о л и ч ест в о н е ф и к с и р о в а н н ы х п е р е м е н н ы х п г
L I S T — п- м ер н ы й в е к т о р , к о м п о н е н т ы к о т о р о г о ук а зы в а ю т , к аки е и з
п
п е р е м е н н ы х ф и к с и р о в а н ы (эл е м е н т в е к т о р а = 0 ), а к аки е о ц е н и в а ю т ся
(эл ем ен т в е к т о р а = 1)
Х0 — n -м ер н ы й в е к т о р ж, к о м п о н е н т ы к о т о р о г о я в л я ю т ся зн а ч е н и я м и
перем енны х в точ к е м и н и м ум а
СХ — к о в а р и а ц и о н н а я м а т р и ц а р а з м е р а п ! х п'. Е е д и а г о н а л ь н ы е эл ем ен т ы
(и л и и х о ц ен к и ) б е р у т с я в к ач еств е н а ч а л ь н ы х зн а ч е н и й
FC0NT — зн а ч е н и е п р а в о й ч а с т и с о о т н о ш е н и я (1 0 .1 7 .9 )
XSCEAT — р а б о ч и й м а сси в , м и н и м а л ь н ы й р а з м е р к о т о р о г о
п 1 х ( n f -1-1)
NSTEP — м а к с и м а л ь н о е к о л и ч е с т в о и т е р а ц и о н н ы х ш а го в п р и м и н и м и за ц и и
В ыходные
парам етры : DXPLUS,DXMINS —
п'-мерные векторы А х ^ \ А х ^ }
(i = l , 2 , . . . , n ;)
NSTEP — зн а ч е н и е э т о г о п а р а м е т р а п о л о ж и т е л ь н о , есл и м е т о д с х о д и т с я , в
п р о т и в н о м с л у ч а е о н о о т р и ц а т е л ь н о ( —1 о зн а ч а е т , ч т о н е у д а л о с ь
о с у щ ес т в и т ь м и н и м и за ц и ю , —2 — ч т о н е п о л у ч и л о с ь п о с т р о и т ь
д о в е р и т е л ь н ы е гр а н и ц ы )
по умолчанию : Если заданное значение параметра
равно нулю или отрицательно, то он полагается равным 1000.
В еличины
NSTEP
SUBE0UTINE MINASY(USEEFN, N , NEED, L IS T , XO, CX, FC0NT, DXPLUS,
+DXMINS,XE,NSTEP)
386
Глава 10. Минимизация функций
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
PARAMETER(NMAX=100)
DIMENSION X(NMAX),DX(NMAX),LIST(N),X R (N R E D ,NRED+1)
DIMENSION CX ( N R E D ,NRED).DXPLUS(NRED).DXMINS(NRED)
DIMENSION XO(N)
PARAMETER(MAXSTP=1000)
PARAMETER(EPS=1.D - 3 ,EPS ILN= 1.D - 4 ,T T = 1 .D - 6 ,FA C T = 1 .5D0)
PARAMETER(ZE R 0 = 0 .O D O ,0NE = 1 .D O ,HAL F=0.5 D 0 ,T W 0 = 2 .D O ,B I G = 1 .D20)
LOGICAL LENCLS
EXTERNAL USERFN
IF(NSTEP.LE.O) NSTEP=MAXSTP
IF(N.EQ.NRED) THEN
DO 10 1=1,N
LIST(I)=1
10
CONTINUE
END IF
DXMIN=BIG
DO 20 1=1,NRED
DX(I)=SqRT(CX(I,I))
DXMIN=MIN(DXMIN,DX(I))
20 CONTINUE
DXMIN=DBLE(.01)*DXMIN
NRED1=NRED-1
DO 60 IVAR=1,N
IF(LIST(I VAR).E Q .0) GO TO 60
С значение переменной IVAR зафиксировано
LIST(IVAR)=0
SAV=XO(IVAR)
DO 50 ISIGN=-1,1,2
SIGNUM=DBLE(ISIGN)
DEL=DX(IVAR)
LENCLS=.FALSE.
С переменная XSMALL полагается равной значению x точки минимума
XSMALL=XO(IVAR)
XIVAR=XO(IVAR)+SIGNUM*DEL
DO 30 1 = 1 ,NSTEP
NSTEPL=NSTEP
CALL MTXCPV(XO,X,N)
X(IVAR)=XIVAR
EPSI=ZERO
R1=DXMIN
CALL MI N S I M ( X ,N,N R E D 1 ,LIST.USERFN,R 1 ,E P S I ,NST EPL,XR)
IF(NSTEPL.LT.1) THEN
NSTEP=-1
GO TO 70
10.17.
Анализ ошибок
END IF
С проверк а услови я сходи м ости
IF (A B S (R 1 -F C 0 N T ). LT . EPS) THEN
I F (I S I G N .L T .O ) THEN
DXMINS( IV A R )=X 0( IV A R )-X (IV A R )
ELSE
DXPLUS( IV A R )=X ( IV A R )-X 0(IV A R )
END IF
GO TO 4 0
ELSE
I F ( . NOT. LENCLS) THEN
С н а преды дущ ем ш аге мы еще н е п р и б л и зи л и с ь к нулю
IF (R l.G T .F C O N T ) THEN
С н а текущ ем ш аге мы п р и б л и зи л и с ь к н ул ю , о с у щ е с т в л я е т с я
С п е р в о е д е л е н и е и н т е р в а л а п о п ол ам
LENCLS=. TRUE.
XBIG=X(IVAR)
X (IVAR)=HALF*(XBIG+XSMALL)
ELSE
С н а текущ ем ш аге мы в н о в ь н е п р и б л и зи л и с ь к нулю , д л и н а
С ш ага у в е л и ч и в а е т с я
DEL=DEL*TWO
X (IVAR)=XSMALL+SIGNUM*DEL
END IF
ELSE
С п р о д о л ж е н и е д е л е н и я и н т е р в а л а п оп ол ам
IF (R l.G T .F C O N T ) THEN
XBIG=X(IVAR)
ELSE
XSMALL=X(IVAR)
END IF
X(IVAR)=HALF*(XBIG+XSMALL)
END IF
XIVAR=X(IVAR)
END IF
30
CONTINUE
NSTEP=-2
40
50
GO TO 7 0
CONTINUE
CONTINUE
С з н а ч е н и е п е р е м е н н о й IVAR больш е н е ф и к си р о в а н о
L IS T (IV A R )= 1
6 0 CONTINUE
7 0 RETURN
END
387
388
Глава 10,
Минимизация функций
10.18. Примеры
Пример 10.1. Определение параметров распределения по результатам выбор
ки методом максимального правдоподобия. Допустим, было осуществлено N
измерений и были получены результаты уи у 2 , - . уп\ допустим также, что
можно сделать предположение о нормальной распределенности этих резуль
татов со средним а ~ xi и стандартным отклонением а — х 2 . Тогда функция
правдоподобия будет выглядеть следующим образом:
{yi - Z i)2
2 xl
Ь= П
(10.18.1)
а ее логарифм будет равен
< = _ £ ( Е _ ^ _ ЛЧп{1з^
}
(10.18.2)
г=1
2
Задача нахождения оценок максимального правдоподобия х \ , х^ для параме
тров распределения уже была решена в примере 7.8 путем приравнивания к
нулю вычисленных аналитически производных функции Е(х). Теперь попыта
емся решить эту задачу при помощи минимизации функции £(х) численными
методами. Для этого сначала приведем подпрограмму, которая вычисляет зна
чение минимизируемой функции
м(х) = -е(х).
Программа 10.15.
Ф у н к ц и я MINGLS в ы ч и с л я е т зн а ч е н и я л о г а р и ф м и ч е с к о й
ф у н к ц и и п р а в д о п о д о б и я со зн а к о м м и н у с д л я в ы б о р к и и з н о р м а л ь н о р а с п р е
дел ен н ой совок уп н ости
К о м а н д а в ы з о в а : g l s =m in g l s ( x , n )
В х о д н ы е п а р а м е т р ы : X — n -м е р н ы й в ек т о р х п а р а м е т р о в н о р м а л ь н о г о
р а с п р е д е л е н и я (х \ — с р е д н е е , х 2 — с т а н д а р т н о е о т к л о н е н и е )
N — к о л и ч ест в о п а р а м е т р о в
н а ч а л о м вы ч и сл ен и й )
п
(н у ж н о п о л о ж и т ь р ав н ы м д в у м п е р е д
ВЫХОДНОЙ ПАРАМЕТР: зн а ч е н и е ф у н к ц и и MINGLS — зн а ч е н и е ф у н к ц и и
п р а в д о п о д о б и я со зн а к о м м и н ус
К о м м е н т а р и и : Э л е м е н т ы в ы б о р к и yi, у 2 , . . yjy и к о л и ч е с т в о эл ем ен т о в в
н ей N б у д у т во в с е х п р о г р а м м а х о б о зн а ч а т ь с я з а Y и NY (см . б л о к
/CM ING S/).
DOUBLE PRECISION FUNCTION M INGLS(X,N)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DIMENSION Y ( 1 0 0 0 )
DIMENSION X (N )
COMMON /CM INGS/ Y,NY
PARAMETER(SQR2PI=2. 5 0 6 6 2 8 2 7 5 D 0 , B I G = -1 . D 1 0 , TW0=2. DO,
+SM A L L =1.D -10)
10.18.
Примеры
389
A=SQR2PI*ABS(X ( 2 ) )
IF(A .L T .SM A L L ) THEN
F=BIG
ELSE
F=L0G(A)
END IF
MINGLS=DBLE(NY)*F
DO 10 1 = 1 , NY
F = (Y (I )-X (1 ))* * 2 /(T W 0 * X (2 )* * 2 )
MINGLS=MINGLS+F
10 CONTINUE
END
Результаты минимизации логарифмической функции правдоподобия для
двух различных выборок представлены на рис. 10.16. Доверительные области
и эллипсоиды равных вероятностей в достаточной степени согласуются друг с
другом. В большей степени это выполнено для выборки большего объема. ■
Р и с . 1 0 .1 6 . Оценка парам етров х\ (ср еднее) и Х2 (стандартное отклонение) гауссов
ского распределения, найденная путем максим изации ф ун кции правдоподобия д л я
некоторой выборки. Граф ики, представленны е слева, соответствую т двум различны м
выборкам, элементы которы х изображ ены в виде одном ерной диаграм мы рассеяния
(вертикальные отрезки) н а оси у. Кривы е f(y) являю тся граф иками плотности гаус
совского распределения при оцененны х зн ачени ях парам етров. Н а граф иках, распо
лож енны х справа, на плоскости ( t i , яг) изображ ены оцененны е значения парам етров,
симметричны е ош ибки и эллипсоиды равны х вероятностей, а такж е доверительная
область при Xw = 1 и соответствую щ ие доверительны е границы (горизонтальны е и
вертикальные линии).
390
Глава 10. М иним изация
функций
Пример 10.2. Оценка параметров распределения по гистограмме выборки ме
тодом максимального правдоподобия. Зачастую при оценивании параметров
распределения вместо значений исходной выборки у\, у 2 , ..., у и (см. пример
10.1) используют соответствующую гистограмму. Если обозначить через щ ко
личество элементов выборки, попавших в интервал с центром в точке U и
длиной ЛЬ, т. е. в интервал
U - Л Ь /2 < у < U 4- Л Ь / 2,
(10.18.3)
то гистограмма будет задаваться парами точек
(и,Пг),
i = 1,2,... , п.
(10.18.4)
Если исходная выборка была получена из нормально распределенной совокуп
ности со средним значением х\ ~ а и стандартным отклонением х 2 = <т, т. е. с
плотностью распределения
( i o
' i
8
-5 )
то можно ожидать, что щ{Ьг) (по крайней мере в пределе при N —►оо) будут
оценивать величину
gi =
N ЛЬf{ti\ xi,Х 2 ).
(10.18.6)
Величины щ{и) являются целыми, а поэтому, вообще говоря, не равны дг. При
ЛЬ
0 каждое щ (и) можно рассматривать как выборку единичного объема
из пуассоновского распределения со средним
А г = gi .
(10.18.7)
Очевидно, что функция правдоподобия для такой выборки (т. е. апостериорная
вероятность наблюдения в качестве исхода значениящ{Ьг)) равна
-1тА"‘е-Л\
(10.18.8)
щ\
Тогда функция правдоподобия для всей гистограммы будет выглядеть следу
ющим образом:
i = f [ ^
t= l
Ar i e ' Ai-
(Ю .1 8 .9 )
Щ -
а ее логарифм будет равен
п
п
п
£ = — ^1ппг! + ]РпДпАг Агi=l
г=1
1=1
(10.18.10)
Если Аг вычислять по формуле (10.18.7) и найти минимум функции —£ по х\ и
Х 2 , то можно получить оценки максимума правдоподобия по группированным
данным для параметров Xi и Х 2 - Безусловно, подобные вычисления можно про
водить не только для выборок из гауссовского распределения, но и для любого
другого распределения с неизвестными параметрами. Для этого нужно просто
10.18.
Примеры
391
в с о о т н о ш е н и я х (1 0 .1 8 .5 ) и (1 0 .1 8 .6 ) и с п о л ь зо в а т ь с о о т в е т с т в у ю щ у ю п л о т н о с т ь
р асп ределен и я. А в п ри веден н ой н и ж е п одп р огр ам м е н у ж н о только в одной
стр о к е за м ен и т ь г а у с со в с к о е р а с п р е д е л е н и е н а д р у г о е .
Программа 10.16.
ш
Ф у н к ц и я MINGLP в ы ч и с л я е т зн а ч е н и я ф у н к ц и и п р а в д о п о д о
б и я с п р о т и в о п о л о ж н ы м зн а к о м д л я г и с т о г р а м м ы в п р е д п о л о ж е н и и о т о м , ч т о
в ы бор к а, п о к о т о р о й б ы л а п о с т р о е н а г и с т о г р а м м а , п о л у ч е н а и з н о р м а л ь н о р а с
п р е д е л е н н о й с о в о к у п н о с т и . П р е д п о л а г а е т с я , ч т о ч и с л о эл е м е н т о в , п о п а в ш и х в
р а зл и ч н ы е и н т ер в а л ы р а з б и е н и я н а г и с т о г р а м м е , п о д ч и н е н о п у а с с о н о в с к о м у
распределени ю .
К ом анда в ы зо в а :
g l p =m in g l p ( x , n )
В х о д н ы е п а р а м е т р ы : X — n -м е р н ы й в е к т о р х п а р а м е т р о в н о р м а л ь н о г о
р а с п р е д е л е н и я (х\ — с р е д н е е , Х2 — с т а н д а р т н о е о т к л о н е н и е )
N — к о л и ч ест в о п а р а м е т р о в
п ( н у ж н о п о л о ж и т ь р ав н ы м д в у м п е р е д
н а ч а л о м в ы ч и сл ен и й )
ВЫХОДНОЙ ПАРАМЕТР: зн а ч е н и е ф у н к ц и и MINGLP — зн а ч е н и е ф у н к ц и и
п р а в д о п о д о б и я со зн а к о м м и н у с
К о м м е н т а р и и : В п р о ц е с с е р а б о т ы п р о г р а м м ы п а р а м ет р ы г и с т о г р а м м ы
о б р а б а т ы в а ю т с я б л о к о м /CMINGH/. П ер ем ен н ы е в нем и м ею т с л е д у ю щ у ю
т р ак тов к у:
Т — А^-мерный в е к т о р (t ut 2, * ■*
к о м п о н е н т ы к о т о р о г о я в л я ю т ся
ц е н т р а м и о т р е зк о в р а з б и е н и я г и с т о г р а м м ы
HIST — Аг-м ер н ы й в е к т о р ( n i , п г , . . . , п ^ ) , к о м п о н ен т ы к о т о р о г о р авн ы
к о л и ч ест в у эл е м е н т о в в ы б о р к и , п о п а в ш и х в с о о т в е т с т в у ю щ и й и н т ер в а л
р а зб и е н и я
At
NT — к о л и ч ест в о и н т е р в а л о в р а з б и е н и я N
NEVENT — к о л и ч е с т в о э л е м е н т о в п в и с х о д н о й в ы бор к е
DELTAT — д л и н а и н т е р в а л о в р а з б и е н и я
DOUBLE PRECISION FUNCTION MINGLP(X,N)
IMPLICIT DOUBLE P R E C IS I0 N (A -H ,0 -Z )
COMMON /CMINGH/ T ( 1 0 0 ) , H IS T ( 1 0 0 ) , DELTAT,NT,NEVENT
DIMENSION X (N )
PARAMETER(ZER0=0. DO)
FN0RM=DBLE(NEVENT)*DELTAT
MINGLP=ZER0
DO 10 1 = 1 , NT
C
С
С
С
GI является значением функции плотности распределения
совокупности в точке Т(I) (путем замены RHS в следующей
командной строке нормальное распределение можно заменить
на любое другое)
G I= S D N 0R M (T (I), Х ( 1 ) , X ( 2 ) )
С нормировка в соответствии с числом элементов в выборке
392
Глава 10.
Минимизация функций
Рис. 10.17. О ценка парам етров х\ (ср еднее) и Х2 (стандартное отклонение) гауссов
ского распределения путем максим изации ф ун кции правдоподобия, построенной на
основании гистограммы . Н а граф и ках, располож енны х слева, приведены гистограм
мы, соответствую щ ие двум различны м выборкам (те ж е, ч то на рис. 10.16). Кривы е
f(y) представляю т собой граф и ки плотности гауссовского распределения, аппрокси
мирую щ ие соответствую щ ие гистограммы . Н а граф иках, располож енны х справа, на
плоскости (х \ , Тг) изображ ены сим метричны е ошибки, эллипсоиды равны х вероят
ностей и доверительная область (аналогично рис. 10.16).
GI=FN0RM*GI
ALAM=GI
IF(ALAM. GT. ZERO) THEN
N I = N I N T (H I S T (I ))
ALNLAM=L0G(ALAM)
ALNNI=GLNGAM(DBLE( N 1 + 1 ))
MINGLP=MINGLP+ALNNI-HIST( I)*ALNLAM+ALAM
END IF
10 CONTINUE
END
При помощи этой подпрограммы для двух выборок, гистограммы которых
представлены на рис. 10.16, была осуществлена минимизация, результаты ко
торой приведены на рис. 10.17. Полученные результаты сходны с результатами
из примера 10.1. Однако на этот раз ошибки для параметров стали несколько
больше. Этого следовало ожидать, поскольку при построении гистограммы по
выборке часть информации о структуре данных неизбежно теряется.
Гистограмму можно рассматривать как сжатое представление выборки. С
увеличением длины интервалов разбиения на гистограмме степень сжатия воз-
10.18.
Примеры
393
Рис. 10.18. Те ж е граф ики, что и на рис. 10.17, но дл я различны х длин интервалов
разбиения гистограммы дл я одной из выборок.
растает. Это подтверждается графиками на рис. 10.18. Видно, что для одной
и той же выборки ошибки оцененных параметров возрастают по мере увели
чения длин интервалов разбиения. Однако для выборок достаточно большого
объема увеличение длин интервалов разбиения оказывает несколько меньшее
воздействие на величину ошибок.
Пример 10.3. Оценка параметров распределения по гистограмме выборки ме
тодом наименьших квадратов. В случае если в интервалы разбиения на ги
стограмме (10.18.4) попадает достаточно большое количество щ наблюдений,
то распределение отдельных щ можно аппроксимировать гауссовским распре
делением со стандартным отклонением
Лщ = у/пг
(10.18.11)
(см. разд. 6.8). Тогда взвешенная сумма квадратов разностей между ^ —ожи
даемым количеством элементов выборки, попавших в г-й интервал разбиения
394
Глава 10.
Минимизация функций
н а г и с т о г р а м м е , в ы ч и сл я ем ы м п о ф о р м у л е (1 0 .1 8 .6 )) , и
щ — р еа л ь н ы м к о л и ч е
ств ом та к и х н а б л ю д е н и й , р а в н а
Q _ ^ (2 L Z iiL .
i— 1
(1 0 .1 8 .1 2 )
г
П р и в ы ч и сл ен и и с у м м ы к в а д р а т о в н е о б х о д и м о с о б л ю д а т ь о с т о р о ж н о с т ь (в о т
л и ч и е от п р и м е р а 1 0 .2 ), п о с к о л ь к у з д е с ь н е н у ж н о у ч и т ы в а т ь те и н т ер в а л ы
р а зб и е н и я , в к о т о р ы е н е п о п а л о ни о д н о г о н а б л ю д е н и я
(щ = 0 ). Б о л е е т о г о ,
л у ч ш е т а к ж е н е у ч и т ы в а т ь п р и в ы ч и сл ен и и эт о й су м м ы и н т ер в а л ы , в к о т о р ы е
п о п а л о н е б о л ь ш о е к о л и ч е с т в о н а б л ю д е н и й , н а п р и м е р те, д л я к о т о р ы х
щ < 4.
Следующая подпрограмма вычисляет величину суммы квадратов. В ней,
так же как и в предыдущем примере, ^ вычисляется по формуле (10.18.6).
При вычислении суммы квадратов учитываются все интервалы разбиения, для
которых щ > 0.
Программа 10.17.
Ф у н к ц и я MINGSQ в ы ч и сл я ет в зв е ш е н н у ю с у м м у к в а д р а т о в ,
являю щ ую ся м ер ой отк л он ен и я п остр оен н ой ги стограм м ы от предп ол агаем ой
п л о т н о с т и р а с п р е д е л е н и я (в д а н н о м с л у ч а е эт о н о р м а л ь н о е р а с п р е д е л е н и е ).
Р а с п р е д е л е н и е к о л и ч е с т в а эл е м е н т о в в ы б о р к и , п о п а в ш и х в с о о т в е т с т в у ю щ и е
и н т ер в а л ы р а з б и е н и я н а г и с т о г р а м м е , а п п р о к с и м и р у е т с я г а у ссо в ск и м р а с п р е
делен и ем .
К о м а н д а в ы з о в а : GSq=MiNGSq(X,N)
В х о д н ы е п а р а м е т р ы : те же, что и в программе 10.16
В ы ходн ой
п а р а м е т р : зн ач ен и е ф ун к ц и и
MINGSq — в зв е ш е н н а я с у м м а
квадратов
К о м м е н т а р и и : те же, что и в программе 10.16
DOUBLE PRECISION FUNCTION MINGSq(X,N)
IMPLICIT DOUBLE PRECISI0N(A-H,0-Z)
COMMON /CMINGH/ T (100),H IS T (100), DELTAT, NT, NEVENT
DIMENSION X(N)
PARAMETER( ZER0=0. DO)
FN0RM=DBLE(NEVENT)*DELTAT
MINGSq=ZER0
C
С
С
С
С
DO 10 1= 1,NT
GI является значением функции плотности распределения
совокупности в точке Т(1) (путем замены RHS в следующей командной
строке нормальное распределение можно заменить на любое
другое распределение)
GI=SDN0RM(T(I),Х (1 ),Х (2 ))
нормировка в соответствии с количеством элементов в выборке
GI=FN0RM*GI
IF(HIST(I).GT.ZER0) THEN
10.19.
Примеры программ
39 5
M IN G S Q = M IN G S Q + (H IS T (I)-G I)**2/H IS T (I)
END IF
10 CONTINUE
END
Р е зу л ь т а т ы , п р е д с т а в л е н н ы е н а р и с.
1 0 .1 9 , п о л у ч е н ы п у т е м
м и н и м и за
ции сум м к в а д р а т о в , в ы ч и сл ен н ы х н а о с н о в а н и и г и с т о г р а м м , п о с т р о е н н ы х н а
р и с. 1 0 .1 8 . П о ск о л ь к у в с е эт и г и с т о г р а м м ы бы л и п о с т р о е н ы д л я о д н о й и т о й ж е
в ы бор к и , т о зн а ч е н и я
щ у б ы в а ю т п р и у м е н ь ш е н и и д л и н и н т ер в а л о в р а зб и ен и я ;
в р е зу л ь т а т е п е р е с т а е т в ы п о л н я т ь ся у с л о в и е , н е о б х о д и м о е д л я и с п о л ь зо в а н и я
м е т о д а н а и м ен ь ш и х к в а д р а т о в . П о э т о м у п о л у ч е н н ы е таки м м е т о д о м оц ен к и и
и х ош и б к и н е л ь зя сч и та ть д о с т о в е р н ы м и р езу л ь т а т а м и при м ал ы х зн а ч е н и я х
д л и н и н т ер в а л о в р а з б и е н и я . Т ем н е м е н е е и з р и с у н к а в и д н о , ч т о в ел и ч и н ы
о ш и б о к , п о л у ч е н н ы х п р и н а х о ж д е н и и о ц е н о к так и м м е т о д о м , д е й с т в и т е л ь н о
в о зр а ст а ю т при у м е н ь ш е н и и д л и н и н т ер в а л о в р а з б и е н и я .
■
С л е д у е т п о д ч е р к н у т ь , ч т о м е т о д о ц е н к и п а р а м ет р о в р а с п р е д е л е н и я н а о с н о
в ан и и г и с т о г р а м м ы п у т е м м и н и м и за ц и и су м м ы к в а д р а т о в д а е т м е н е е т о ч
н ы е р е зу л ь т а т ы , н е ж е л и м е т о д м а к с и м а л ь н о г о п р а в д о п о д о б и я . Э т о п р о и с х о д и т
в с л е д с т в и е т о г о , ч т о п р е д п о л о ж е н и е о н о р м а л ь н о м р а с п р е д е л е н и и в ел и ч и н
щ
со с т а н д а р т н ы м о т к л о н е н и е м (1 0 .1 8 .1 1 ) д а е т л и ш ь п р и б л и ж е н и е , а д л я в ы п ол
н ен и я э т о г о п р е д п о л о ж е н и я н е о б х о д и м о , ч т о б ы д л и н ы и н т ер в а л о в р а зб и е н и я
н а г и с т о г р а м м е бы л и д о с т а т о ч н о б о л ь ш и м и , ч т о в св о ю о ч е р е д ь в л е ч е т з а с о б о й
п о т е р ю ч а с т и и н ф о р м а ц и и о с т р у к т у р е д а н н ы х . Т ем н е м е н е е д л я д о с т а т о ч н о
б о л ь ш и х в ы б о р о к р а з н и ц а м е ж д у р еу л ь т а т а м и э т и х д в у х м е т о д о в с т а н о в и т ся
м и н и м ал ь н ой . Э т о в и д н о и з с р а в н е н и я , к п р и м ер у , р и с. 1 0 .1 8 (в ер х н и й п р авы й
г р а ф и к ) и р и с. 1 0 .1 9 (н и ж н и й п р ав ы й г р а ф и к ).
10.19. Примеры программ
В с е п р о г р а м м н ы е ф а й л ы д о с т у п н ы в п о д д и р е к т о р и и \DATAN\EXASRC.
10.19.1. Головная программа E1MIN для демонстрации работы
подпрограмм MINSIM, MINP0W, MINCJG, MINQDR и MINMAR
В с о о т в е т с т в и и с в ы б о р о м п о л ь з о в а т е л я эт а п р о г р а м м а в ы зы в а ет о д н у и з п я ти
п одп рограм м и с ее пом ощ ью р еш ает за д а ч у н а х о ж д ен и я м и н и м ум а ф ун к ц и и
/
=
f ( x ) — f ( x 1 , ^ 2 ,Х з ). И с х о д н о й т о ч к о й при оты ск а н и и м и н и м у м а с л у ж и т
то ч к а
= ( ж£ш\ ж2Ш\ ж з П^), к о т о р а я т а к ж е з а д а е т с я п о л ь зо в а т е л е м . П р о
г р а м м а п о с л е д о в а т е л ь н о о б р а б а т ы в а е т ч е т ы р е р а з л и ч н ы х сл уч ая :
(i) Н и о д н о й п е р е м е н н о й н е ф и к с и р о в а н о (NRED=3),
(ii)
(iii)
ф и к с и р о в а н а (NRED=2),
Х2 и хз ф и к с и р о в а н ы (NRED=1),
(iv ) в се п ер ем ен н ы е ф и к с и р о в а н ы (NRED=0).
396
Глаза 10.
Минимизация функций
Р и с . 1 0 .1 9 . О ценка парам етров х\ (среднего) и Хч (стандартного отклонения) гаус
совского распределения п утем м иним изации взвеш енной суммы квадратов. П р ед
ставленные в левой части рисунка гистограммы совпадаю т с гистограмм ами на
рис. 10.18. Результаты аппроксимации и соответствую щ ие значения ош ибок, элли
псы разны х вероятностей и доверительны е области изображ ены так ж е, как и на
рис. 10.17 и рис. 10.18.
Для минимизации пользователь может выбрать одну из следующих функций:
fi(x) = r2, г = \]х\+х\ +
х |,
/ г (аз) = г 1 0 ,
/з ( ж ) = г,
/ 4 (аз) = - е - г 2 ,
fb{x) =
г6 - 2г4 +
/ 6 (аз) =
г2е~г\
г2,
/7 (ж) - - е -г 2 - 1 0 е-г2,
r2
a = (Xl - З)2 + (®2 - З)2 + (х3 - З)2.
10.19. Примеры программ
397
Указания: Проанализируйте функции f \ ......./ 7 . Все они достигают мини
мума в точке х\ = Х2 = хз = 0. Некоторые из них имеют и другие локальные
минимумы. Исследуйте скорости сходимости различных методов минимизации
для этих функций при различных исходных точках и поясните полученные ре
зультаты на качественном уровне.
10.19.2. Головная программа E2MIN
для оценки параметров распределения по выборке и демонстрации
работы подпрограммы MINC0V
Эта программа решает задачу из примера 10.1. Сначала из совокупности со
стандартным нормальным распределением берется выборка. В дальнейшем эта
выборка используется для оценки параметров х\ (среднее) и Х2 (стандартное
отклонение) этой совокупности методом минимизации функции правдоподо
бия с противоположным знаком (10.18.2). Это осуществляется путем запус
ка модуля MINSIM, который в свою очередь использует подпрограмму MINGLS.
Ковариационная матрица для параметров вычисляется при помощи модуля
MINC0V. Полученные результаты выводятся на экран в численном виде.
Следующая часть программы посвящена осуществлению графического
представления выборки в виде одномерной диаграммы рассеяния и построе
нию графика подобранной функции (см. рис 10.16 —левые графики).
Указание: Исходные точки были заданы таким образом, чтобы при запуске
программы заново строились те же графики, что и в левой части рис. 10.16.
Запустите программу также для обработки выборок больших объемов.
10.19.3. Головная программа E3MIN для демонстрации работы
подпрограмм MINASY и MINCNT
С помощью этой программы решается задача из предыдущего раздела. При
этом дополнительно, используя модуль MINASY, для параметров вычисляют
ся величины несимметричных ошибок. Затем на экран в графическом виде
на плоскости (х\,Х 2 ) выводятся полученные оценки, симмметричные ошибки,
эллипс равных вероятностей и несимметричные ошибки, а также с помощью
подпрограммы MINCNT строятся границы доверительной области. Полученные
графики аналогичны графикам, представленным на рис. 10.16 (правая часть
рисунка).
Указание: Самостоятельно постройте те же графики, что представлены
в правой части рис. 10.16. Обратите внимание на то, что построенные вами
графики и графики на рис. 10.16 по сути совпадают, однако имеют разное
графическое представление (это вызвано тем, что в программе E3MIN масштаб
выбирается автоматически). Запустите программу такж е для обработки выбо
рок больших объемов.
398
Глава 10. Минимизация функций
10.19.4. Головная программа E4MIN для
оценки параметров распределения на основании гистограммы,
построенной по выборке, и для демонстрации работы
подпрограмм MINGLP и MINGSQ
С помощью этой программы решается задача из примеров 10.2 и 10.3. Для
начала из совокупности со стандартным нормальным распределением берется
выборка объема nev и по ней строится гистограмма с щ интервалами разбие
ния на отрезке между £0 = —5.25 и £тах = 5.25. Центры интервалов разбиения
лежат в точках £* (г — 1 ,2 ,..., nt). Количество элементов выборки, попавших
в соответствующий интервал, равно щ. Затем в соответствии с выбором поль
зователя либо с помощью модулей MINSIM и MINGLP максимизируется функция
правдоподобия I (вычисляемая по формуле (10.18.10)) (т. е. минимизируется
функция —£), либо, используя модули MINSIM и MINGSQ. минимизируется сум
ма квадратов Q (вычисляемая по формуле (10.18.12)).
Полученные результаты представляются в графическом виде. Пользова
тель может выбрать, в каком именно: будет ли это гистограмма с подобранной
функцией плотности гауссовского распределения (т. е. график, аналогичный
тем, что располагаются в левых частях рисунков 10.17 и 10.18), или же на
плоскости (t i ,£ 2) будет представлена полученная оценка, а также ее симме
тричные и несимметричные ошибки, эллипс равных вероятностей и довери
тельная область (т. е. график, аналогичный тем, что изображены в правых
частях тех же рисунков).
У казания: (а) Положить nev = 100. Показать, что при максимизации
функции правдоподобия ошибки А х\ и А х 2 возрастают при уменьшении с
пь = 100 количества интервалов разбиения на гистограмме, а при миними
зации суммы квадратов, напротив, для получения осмысленных результатов
количество интервалов должно быть мало. (Ь) Показать, что при nev = 1000 и
nt = 50 или n t = 20 оба метода дают практически одинаковые результаты.
10.20. Задачи по программированию
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\S0LSRC.
10.20.1. Минимизация методом Монте-Карло для нахождения
хорошего начального приближения
Из тех функций, что представлены в программе 10.19.1, для некоторых выбор
исходной точки Хо, определяющей начальное приближение, является решаю
щим. От него зависит, будет ли метод минимизации сходиться или нет. Если
у функции имеется несколько локальных минимумов и среди них есть один
глобальный (т. е. среди локальных минимумов есть один, в котором значе
ние функции минимально), то можно использовать следующий метод. Метод
Монте-Карло служит для определения начального приближения х 0 при нахо-
10.20. Задачи по программированию
399
ждении глобального минимума в достаточно большой области параметриче
ского пространства. Этот метод состоит в моделировании в этой области рав
номерно распределенных точек х = (xi,X 2 >■• ■, %п) и выборе среди них точки,
в которой значение минимизируемой функции минимально.
На основе программы E1MIN напишите собственную программу, с помо
щью которой можно было бы найти глобальный минимум функции /7 (ж) (см.
разд. 10.19.1). Начальное приближение жо в области
—10 < xoi < 1 0 ,
i = 1,2,3,
должно определяться методом Монте-Карло. Поиск начального приближения
должен осуществляться при помощи N случайных точек. Сделайте возможным
ввод числа N в интерактивном режиме.
10.20.2. Оценка параметров распределения Брайта—Вигнера
на основании выборки
Путем модификации программы E2MIN напишите программу, которая бы по
рождала выборку из распределения Брайта—Вигнера со средним а и полной
широтой полумаксимального уровня Г, а затем оценивала численные значе
ния этих параметров методом минимизации построенной по выборке функ
ции правдоподобия с противоположным знаком. Сделать возможным ввод в
интерактивном режиме объема выборки и используемых при моделировании
параметров а и Г.
10.20.3. Оценка параметров распределения Брайта—Вигнера
на основании гистограммы, построенной по выборке
Модифицировать программу E4MIN таким образом, чтобы выборка бралась не
из нормально распределенной совокупности, а из совокупности с распределе
нием Брайта—Вигнера со средним а и полной широтой полумаксимального
уровня Г* а затем эти параметры оценивались на основании гистограммы, по
строенной по порожденной выборке.
10.20.4. Оценка параметров суммы двух распределений
Брайта—Вигнера на основании гистограммы, построенной
по выборке
Выборка должна осуществляться из совокупности с плотностью распределения
f ( y ) = wg{y, Oi, А)
+ (1 -
w)g(y,a 2 , r 2).
Здесь
g(y,a, r )
к Г 4(у - a)2 + Г 2
является плотностью распределения Брайта—Вигнера со средним а и полной
широтой полумаксимального уровня Г. Величина го, 0 < го < 1, является
400
Глава 10. Минимизация функций
-1 0
-5
0
5
10
о У
Рис. 10.20. Гистограмма соответствует выборке объема 100, взятой из совокупно
сти с плотностью распределения f(y) и параметрами w = 0.2, a \ = — 5, А = 1,
а2 = 5, А = 1. Оценки, полученные методом максимального правдоподобия, при
ведены в верхней части графика. Кривая является графиком функции f(y) с этими
параметрами.
весовым коэффициентом. На основании анализа гистограммы, построенной по
выборке, необходимо оценить пять параметров:
Х2
^1)
>^3
^1)
^4 “
^2;
^5 — Д з *
Так же как и в программе E4MIN, пользователь должен иметь возможность вы
бора между минимизацией функции правдоподобия с противоположным зна
ком (10.18.10) (с использованием распределения Пуассона) и минимизацией
суммы квадратов (10.18.12). На рис. 10.20 в качестве примера представлены
результаты для некоторой выборки. Для начала скопируйте программу E4MIN.
При вычислении значений ошибок можно ограничиться нахождением ковари
ационной матрицы (для этого можно использовать модуль MINC0V). Вначале
пользователь в интерактивном режиме должен ввести величину объема вы
борки и значения параметров. На основании этих данных будет смоделирована
выборка. Затем программа должна запросить начальные значения параметров,
которые впоследствии будут использоваться при минимизации, а также дать
возможность пользователю определить, какие из параметров будут в процес
се минимизации фиксированы. Запуская программу для конкретных значений
параметров, вы увидите, что а\ и аг, а сходимость метода обычно достигается
только в том случае, если Г\ и А полагаются фиксированными.
Глава 11
Дисперсионный анализ
Дисперсионный анализ (или ANOVA)1, разработанный Р. А. Ф и ш е р о м , при
меняется для проверки гипотезы о равенстве средних для нескольких выборок.
Подобные задачи возникают, к примеру, при сравнении результатов последо
вательностей измерений, выполненных при различных условиях, а также при
контроле качества продукции, произведенной на различных станках. При этом
цель исследования состоит в выявлении того, каким образом изменение внеш
них параметров (для наших примеров это условия эксперимента и количество
станков соответственно) влияет на полученную в результате выборку. В про
стейшем случае, когда выборок всего две, данную задачу легко можно решить
с помощью критерия равенства средних Стьюдента (см. разд. 8.3).
Если изменяется только один внешний параметр, то в этом случае говорят
об однофакторном дисперсионном анализе (или об однофакторной классифи
кации). В рамках такого анализа можно, например, решить задачу сравнения
последовательностей измерений некоторого объекта, выполненных при помощи
различных микроскопов. В случае нескольких изменяющихся переменных речь
будет идти уже о двух- (или более) факторном дисперсионном анализе (двух
факторной классификации). Так, если бы в предыдущем примере измерения
при помощи каждого из микроскопов осуществляли бы несколько исследова
телей, то тогда на основании двухфакторного дисперсионного анализа можно
было бы выявить, каким образом результаты измерений зависят от микроско
па, а также —каким образом от исследователя.
11.1. Однофакторный дисперсионный анализ
Рассмотрим выборку объема гг, которую в соответствии с некоторым правилом
А можно разбить на t групп. Безусловно, по сути это правило должно соот
ветствовать или процессу получения выборки, или процессу измерений. Будем
говорить, что полученные группы были образованы в соответствии с клас
сификацией А. Предположим, что совокупности, из которых были получены
соответствующие t подвыборок, имеют нормальное распределение с одинако
выми дисперсиями <х2. Проверим теперь гипотезу о том, что средние для этих
совокупностей также равны между собой. Если сделанная гипотеза окажется
справедливой, то это будет означать, что все выборки были взяты из одной и
той же совокупности, и тогда далее мы сможем воспользоваться результатами,
1 ANOVA —сокращенное название термина Analysis of Variance.
402
Глава 11.
Дисперсионный анализ
полученными в разд. 6.4 (выборки из подмножеств совокупности). Использу
ем те же обозначения, что и в разд. 6.4. Пусть выборка разбита на t групп
объема щ, причем
t
i=1
Обозначим j -й элемент г-й группы через х ц . Тогда выборочное среднее для
г-й группы будет равно
^
П{
( 11. 1. 1)
j=l
а среднее для всей выборки в целом будет равняться
t
^
®=-П
П{
У2
1
=~
n"
t
( 11.1.2)
У2
г= 1 j = l
г=1
Рассмотрим теперь сумму квадратов вида
t
щ
Q —^ ^^
t
П{
^ ^^
г=1 j=l
i—1 J—1
“Ь
#)
= ^ 2 Y ^ ( xij - X i ? +
i=1 .7=1
~ xi)(x i ~ x ) .
г=1
j= 1
г=1 jf=l
Последнее слагаемое в этой сумме обращается в нуль согласно равенствам
(11.1.1) и (11.1.2). Следовательно,
q
Положим
=
~ х)2 = Y ^ n ^ Xi ~ х)2+]С Y l & j ~ Xi)2-
г=1 j=l
i=1
г=1 j=l
t
t
Q a ~ ^ ^ Их{х%
г=1
X) ,
Ui
Q w ~ ^ ^ ^ ^(%ij
г=1 j = l
Я'г) ■
Тогда
Q = Q a -f Qw-
(11.1.3)
Первое слагаемое в этом выражении называется межгрупповой суммой ква
дратов, соответствующей классификации А. Второе слагаемое является сум
мой всех внутригрупповых сумм квадратов. В результате величина Q (полная
сумма квадратов) распадается на две суммы квадратов, отвечающие за раз
личные характеристики выборки —разброс средних для групп, построенных
в соответствии с классификацией А, и разброс результатов измерений внутри
соответствующих групп. Если сделанная выше гипотеза справедлива, то ве
личина Q является суммой квадратов нормально распределенных случайных
11.1. Однофакторный дисперсионный анализ 403
величин, т. е. Q /a 2 имеет хи-квадрат распределение с п —1 степенью свободы.
Аналогично для каждой из групп величина
Qi
__ 1 V~V
a 2
~
_ ч2
“ X i)
a 2
j= l
имеет хи-квадрат распределение с щ —1 степенью свободы. Тогда величина
Qw
a2
Qi_
_
2s
i~ l
а2
имеет хи-квадрат распределение с
—1) = n — t степенями свободы (см.
разд. 6.6). И наконец, величина Q a / v имеет хи-квадрат распределение с t —1
степенью свободы.
Величины
Q
оч2 -п —1
г 3
Qa
2
(11.1.4)
«л = t - 1
а2 —
_ Qw
3W
™
\2
n —t
* 3
являются несмещенными оценками для дисперсий соответствующих совокуп
ностей. (В разд. 6.5 подобные выражения назывались средними квадратиче
скими отклонениями.) Тогда отношение
F =
(11*1-5;
можно использовать для проверки нашей гипотезы при помощи .Р-критерия,
Если сделанная гипотеза ложна, то средние х г для различных групп будут
достаточно сильно отличаться друг от друга. В этом случае величина s \ ста
нет существенно больше, тогда как значение
будучи средним дисперсий
отдельных групп, практически не изменится. Это означает, что значение вы
ражения (11.1.5) будет достаточно велико, если наша гипотеза не верна. На
основании сделанных рассуждений можно построить /^-критерий, который со
стоит в следующем. Гипотеза о равенстве средних должна быть отклонена на
уровне значимости а, если
F = s 2 a/ s \v > F i_ a (t - 1, n - t).
(11.1.6)
Каждую сумму квадратов можно вычислять по любой из двух приведенных
формул (они эквивалентны между собой):
Q=
] Г ( х у - х )2 =
7'
-п $2>
3
г j
Q a = ' F П»(Х* ~ Х)2 —
i
Qw =
г j
ЩХ2 ~ ПХ2,
(11.1.7)
г
~ х*)2 =
г j
~ Y l nix2i-
г
404
Глава 11.
Дисперсионный анализ
Обычно легче считается выражение, стоящее в каждой из строк правее. По
скольку значение каждой суммы квадратов вычисляется как разность двух до
статочно больших чисел, то следует обратить особое внимание на возможные
ошибки округления. Несмотря на то, что для вычисления значения отношения
F достаточно найти только величины Q a и Q w , м ы советуем также вычи
слить значение Q, а затем с его помощью осуществить проверку полученных
результатов на основании соотношения (11.1.3), т. е. из условия Q — Q a + Q w •
Проверка будет иметь смысл только в том случае, если величина Q была най
дена по первой из формул, записанных в соотношении (11.1.3). Обычно резуль
таты дисперсионного анализа представляются в виде так называемой табли
цы дисперсионного анализа (или АN0VA-таблицы), вид которой аналогичен
табл. 11.1.
Т а б л и ц а 1 1 .1 . A N O V A -таблица д л я одноф акторн ой классификации.
Внутригрупповая
составляющ ая
П олная сумма
квадратов
t
Qw
n —t
Q
77 — 1
- 1
F
1 «о
Qa
MS
(среднее
квадратическое)
L *
DF
(число степеней
свободы)
II
М еж групповая
составляющ ая
SS
(сумма
квадратов)
Со
Источник рассеяния
Qw
Sw ~ n - t
2
Q
„2 _
п
„2
p — 1a .
sw
—1
Перед тем как начать выполнение дисперсионного анализа, следует прове
рить, действительно ли выполнены все предположения, сделанные в процессе
формулировки этого метода. В частности, необходимо проверить, справедли
во ли предположение о нормальном распределении результатов измерений в
каждой из групп. Это отнюдь не всегда можно гарантировать. Так, напри
мер, если все результаты измерений положительны (к примеру, если это длина
или вес некоторого объекта) и если величина стандартного отклонения для
них сравнима по значению с самими результатами измерений, то плотность
распределения мржет быть несимметричной, а потому распределение не бу
дет нормальным. Если же осуществить преобразование исходных результатов
измерений (обозначим их теперь за x f) при помощи, например, монотонной
функции вида
х = a\og{xf + 6),
(11.1.8)
где а и Ь соответствующим образом выбранные константы, то зачастую пре
образованные величины можно достаточно точно аппроксимировать нормаль
ным распределением. Иногда для этого используются и другие преобразова
ния, например х = у/х* или х ~ 1 /х'.
Пример 11.1. Однофакторный дисперсионный анализ влияния воздействия
различных медикаментов. У мышей, заболевших раком, часто наиболее силь-
11.1. Однофакторный дисперсионный анализ
405
ному поражению бывает подвержена селезенка. Поэтому вес селезенки можно
использовать в качестве показателя степени воздействия различных медика
ментов. Воздействие трех типов медикаментов (I, II и III) было проверено на
трех различных группах мышей (по 10 мышей в каждой группе). В табл. 11.2
приведены преобразованные по формуле х = log:*/ результаты измерений ве
са селезенки мышей (здесь :г' —исходный вес селезенки в граммах). Большая
часть промежуточных вычислений также содержится в табл. 11.2. Таблица
11.3 представляет собой ANOVA-таблицу результатов анализа. Поскольку да
же при уровне значимости 50% F -критерий дает значание То.5 (2,24) = 3.4, то
отвергнуть гипотезу о равенстве средних нельзя. Это означает, что проведен
ный эксперимент не выявил существенного различия между эффективностью
этих трех медикаментов.
■
Т а б л и ц а 1 1 .2 . Д анны е дл я примера 11.1.
Порядковый номер
эксперимента
1
2
3
4
5
6
7
8
9
10
xi
Ui
Xi
*?
группа
I
19
45
26
23
36
23
26
33
II
40
28
26
15
24
26
36
27
28
19
III
32
26
30
17
23
24
29
253
9
269
10
20 1
8
28.11
790.23
26.90
723.61
25.13
631.52
22
—
20
—
£ ,.4
—
= 20607
Ei
ХЧ = 723
п = 27
п х 2 = 19 360
х = 26.78
J2 inixi - 19398
Т а б л и ц а 1 1 .3 . A N O VA-таблица дл я прим ера 11.1.
Источник рассеяния
Межгрупповая составляющая
Внутригрупповая составляющая
Полная сумма квадратов
SS
38
1209
1247
DF
2
24
26
MS
19.0
50.4
47.8
F
0.377
406
Глава 11.
Дисперсионный анализ
11.2. Двухфакторный дисперсионный анализ
Прежде чем перейти к рассмотрению дисперсионного анализа для двух внеш
них параметров, давайте вернемся к однофакторной классификации и рассмо
трим полученные для нее результаты более внимательно. Обозначим за хц
результаты j -го измерения величины х в группе г. Для простоты предполо
жим, что все группы содержат одинаковое количество результатов измерений,
т. е. что щ = J. Число групп обозначим за I. Пусть разбиение результатов
измерений на различные группы было выполнено в соответствии с некоторым
правилом А (например, на основании инвентарного номера микроскопа, с по
мощью которого были произведены измерения). Для облегчения понимания
соответствующие обозначения приведены в табл. 11.4.
Т а б л и ц а 1 1 .4 . О дн оф ак торн ая классиф икация.
Порядковый номер
результата измерений
Классификация А
2
..
...
A,
Ai
а
1
2
£ ll
£22
£ il
XII
£12
£22
£ i2
X I
3
X \ j
£2 j
X ij
X j j
J
Х и
£2
X i J
XU
J
2
Тогда средние для отдельных групп можно записать в виде
®
Xjj,
i
3
(11.2.1)
г
Здесь точка обозначает суммирование по тому индексу, вместо которого она
написана. Такой способ обозначения легко можно обобщить на случай большо
го количества индексов. Однофакторный дисперсионный анализ базируется на
предположении о том, что все результаты измерений, попавшие в одну группу,
отличаются друг от друга только на величину, не превышающую ошибку изме
рений, которая имеет нормальное распределение со средним нуль и дисперсией
а2. Другими словами, в этом случае рассматривается модель вида
X^ij — pi + £ij.
(11.2.2)
Цель дисперсионного анализа состоит в проверке справедливости гипотезы
Яо(мх = М2 = • • • = м/ = м)-
(11.2.3)
11.2. Двухфакторный дисперсионный анализ
407
Воспользуемся соотношением (11.2.2) и, применяя метод максимального прав
доподобия к результатам измерений для конкретной группы с номером г, по
лучим оценку
pi —Xi
(11.2.4)
Если гипотзеа Но справедлива, то
Д= г =
= j'/L '& i(11.2.5)
г j
i
В этом случае альтернативная гипотеза является сложной и состоит в том,
что не все pi равны между собой. Однако мы хотим сохранить понятие общего
среднего и поэтому запишем:
Pi = р + а*.
Тогда модель (11.2.2) примет вид
хц —р +
а* +
£ij.
( 1 1 .2 .6 )
Величины ai, представляющие собой меру отклонения среднего для г-й группы
от общего среднего, удовлетворяют соотношению
У ]а* = 0.
г
Оценки максимального правдоподобия для ai равны
СЦ. — Xi — X.
(11.2.7)
( 11 . 2 . 8 )
В разд. 11.1 метод однофакторного дисперсионного анализа был выведен при
помощи тождества
Xij — х — (х^ —х) + (xij —Xi),
(11.2.9)
описывающего меру отклонения результатов отдельных измерений от общего
среднего. В соответствии с этим тождеством сумма квадратов Q таких откло
нений была разбита на два слагаемых Q a и Q w ( с м . ( 1 1 . 1 . 3 ) ) .
Сделав эти замечания, можно теперь перейти к рассмотрению двухфак
торной классификации, при которой результаты измерений разбиваются на
группы в соответствии с двумя правилами А и В. Результаты измерений x Zjk
относятся как к классу Ai, который соответствует классификации, выполнен
ной по правилу А, так и к классу B j. Индекс к обозначает порядковый но
мер измерения в группе, принадлежащей обоим классам Ai и Bj. Говорят,
что двухфакторная классификация имеет пересекающиеся факторы, если один
из классов одной классификации, например Bj, имеет одно и то же значение
для всех классов другой классификации А. Так, например, если микроскопы
классифицировать по правилу А, а исследователей —по правилу В, и если
все исследователи смогли выполнить измерения на всех микроскопах, то такая
классификация будет иметь пересекающиеся факторы. Если же сравнивается
408
Глава 11.
Дисперсионный анализ
качество микроскопов в различных лабораториях, т. е. в каждой лаборатории
своя группа из J исследователей выполняет измерения при помощи определен
ного микроскопа с номером г, то говорят, что классификация В группируется
по факторам классификации А. Тогда индекс j служит просто для нумерации
классов В внутри некоторого класса А.
Простейшим случаем является классификация с пересекающимися факто
рами всего лишь с одним результатом измерений в каждой группе. Поскольку
в этом случае к = 1 для всех результатов измерений Хць, то индекс к можно
отбросить. В этом случае модель будет иметь вид
Xij
= fjL+ di + bj н- Eij,
^ а . = 0,
5 ^ b j= 0 ,
*
( 1 1 .2 .1 0 )
3
где s —нормально распределенная случайная величина со средним нуль и дис
персией а2. Тогда нулевая гипотеза будет состоять в том, что при разбиении на
классы в соответствии с классификациями А или В нет отклонений от общего
среднего. Представим эту гипотезу в виде двух отдельных гипотез:
H^A){ai = а2 = ■■• = а/ = 0),
H {0B)(bi = Ь2 = ■■■= bj = 0).
(11.2.11)
Оценки наименьших квадратов для щ и bj равны
CLi = Xj, —X,
bj —Ху = X.
По аналогии с соотношением (11.2.9) можно записать
Xij - X = (Хг. “ х) + {x,j —х) + (Xij —Хг, —Ху + х).
(11.2.12)
Таким же образом можно переписать исходную сумму квадратов в виде
£
£ ( ® tf - x f = Q = Q a + Q b + Qw,
(11.2.13)
Q a = J £(® *. - x ) 2 = j £ x ? - U x 2,
i
i
Q b = / £ ( S . j - x)2 = / £ г * - I Jx 2,
з
з
Qw = £
^
i j
= £ £ 4
i
3
(11.2.14)
- Xi. - X.j + x)2
- J £
4 . - /£ 4
i
+ 7 j5 2 -
3
При делении каждой из этих сумм на соответствующее ей число степеней
свободы можно получить оценки для а 2 при условии, что гипотеза (11.2.11)
11.2.
справедлива. Тогда гипотезы
используя отношения
Двухфакторный дисперсионный анализ
409
и Н ^ можно проверить по отдельности,
F^
— Sq / sw
(11.2.15)
для одностороннего F -критерия таким же образом, как в разд. 11.1. Получен
ные в этом случае результаты можно обобщить и представить в виде ANOVAтаблицы (см. табл. 11.5).
Т а б л и ц а 1 1 .5 . Таблица дв ухф ак тор н ого дисперсионного анализа дл я класификации с пересекаю щ имися ф ак торам и в случае лишь одного результата изм ерений в
каж дой группе.
Источник рассеяния
SS
DF
MS
F
К лассиф икация
А
Qa
7 -1
p ( A) — Sa
s2w
К лассиф икация
В
Qb
7 -1
A A I -1
2
Qb
Sb ~ J - l
Qw
(I — 1 ) ( 7 - 1)
Q
77-1
Внутригрупповая
сумма квадратов
Полная сум м а квадратов
2
Q\V
F (B) —
s2w
Sw ~ (I - i ) ( j - 1)
J _
Q
7 7 —1
Если в каждую из групп попало более одного результата измерений, то
классификацию с пересекающимися факторами можно обобщить. Сделать это
можно различными способами. Наиболее важное обобщение состоит в учете
меры взаимодействия (реакции) между различными классами. В этом случае
анализируемая модель принимает вид
%ijk —М+ di 4- bj 4- (ab)ij -Ь £ijk-
(11.2.16)
Величина (ab)ij называется показателем взаимодействия (реакции) между
классами Ai и B j. Она описывает такое отклонение результатов измерений
от значения среднего по группе, которое является следствием специфическо
го взаимодействия классов А г и Bj. Параметры
bj, (ab)ij удовлетворяют
соотношению
Е а<= Е ь*= Е 1 > ь)у = 0-
(п-2-17)
= %i.. — х,
bj —
— x,
(ab)ij ~ Xijt + x — Xit. - x tj m.
(11.2.18)
г
j
i j
Их оценки максимального правдоподобия равны
В этом случае нулевую гипотезу можно разбить на три отдельные гипотезы:
НЬА)(<Н = 0; i = 1 , 2 , . . . , / ) ,
Н {0В\Ъ> = 0; j = 1, 2, . . . , J),
H^AB)({ab)i j = 0 -, * = 1 , 2 , . . . , / ; j = 1,2, . . . , J),
(11.2.19)
410
Глава 11.
Дисперсионный анализ
которые затем можно по отдельности проверить. При этом дисперсионный ана
лиз основывается на тождестве
%ijk —
х =
(Xi„ —
х) + (x.j. — х)
(11.2.20)
+ (Xij. + X - X i . . ~ x.j.) + (Xijk - % ) ,
позволяющем представить исходную сумму квадратов отклонений в виде сум
мы четырех слагаемых:
Q =
- s )2 = Q a + Q b + Q a b + Q w ,
(11.2.21)
i j к
QA = J K j 2 ( x i . . - x ) 2,
Qb
i
=IK^T(x.j.
- x ) 2,
3
Q ab = К
Qw ~
£ ( %
* 3
+ ^ ~ Si- ~
Уi Уj Ук^{%цк ~~%ij.) •
]
]
В табл. 11.6 приведены используемые при проверке этих гипотез величины F,
соответствующие числа степеней свободы и квадратичные средние.
Т а б л и ц а 1 1 .6 . Таблица дисперсионного анализа для случая двухф ак тор н ой клас
сификации с пересекаю щ имися ф акторам и.
Источник рассеяния
SS
DF
MS
К лассиф икация
А
Qa
I- 1
q2 _ Q a
sA
—
К лассиф икация
В
Qb
J- 1
s2
B =
В заимодействие
Q ab
Внутригрупповая
сум м а квадратов
Qw
П олная сум м а
квадратов
п
у
I- 1
(I — 1 )(J — 1)
Qb
J~ 1
Q ab
sAB — ( 7 - 1 )(J T - 1)
Qw
q2
I J (K - 1)
SW
I J ( K - 1)
т7К — Л
2—
Q
_______ ____________ 8 ~ Ц К - 1
F
pi*) - ±A_
~ sw
92
F (B) _ £ b
2
^(AB) _ SAB
В заключение опишем простейший случай двухфакторной группируемой
классификации. Так как классификация 5 определена только внутри каждого
отдельного класса Л, то слагаемые bj и (aMf/ в соотношении (11.2.10) явля
ются вырожденными, поскольку для их вычисления необходимо провести сум
мирование по i при фиксированном j. Поэтому в данном случае используется
следующая модель:
%ijk — р + СЦ + bij + Sijk,
( 11. 2. 22)
11.2.
Двухфакторный дисперсионный анализ
411
где
= 0,
S* Sj bij
—
bij —Xijm
O'i —Xi..
о,
Xi_
Величины bij являются мерой отклонения результатов измерений в классе B j,
лежащих внутри класса А*, от общего среднего для всего класса Ai. Тогда
нулевая гипотеза будет состоять в том, что
Н {0А\сч = 0-,1 = 1,2,...,1),
(11.2.23)
Н {0ЩА))(Ъц = 0; i = 1 , 2 , . . . , / ; j = 1 , 2 , . . . , J ) .
Дисперсионный анализ для проверки этой гипотезы можно выполнить, вос
пользовавшись таблицей 11.7. В этой таблице
Q a ^ J K ^ x ^ . - x )2,
г
Q b (A) = К
» з
г
Q =
Qл
j
-f
fc
Qb (a) - f Qw =
i j k
Аналогичным образом можно построить разнообразные модели двухфактор
ной и многофакторной классификации. Для каждой из этих моделей полная
сумма квадратов должна разлагаться на несколько слагаемых, также являю
щихся некими суммами квадратов. После деления на соответствующее число
степеней свободы эти слагаемые можно использовать для проверки гипотез в
рамках конкретной модели при помощи F -критерия.
Т а б л и ц а 1 1 .7 . Таблица дисперсионного анализа дл я двухф ак тор н ой группируем ой
классиф икации.
Источник рассеяния
SS
DF
К лассиф икация
А
Qa
i- i
К лассиф икация
В
Q b (A)
i { j - 1)
SB(A)
Qw
I J ( K - 1)
sw =
А
В нутригрупповая
сумма квадратов
Q
1—1
1
*
П олная сум м а квадратов
о-2 ---
II
s2A
_
I—1
В нутри класса
F
MS
p(A) __ &
sw
A B(A)
I V - 1)
F WA)) = SB(A)
q2
SW
Qw
I J ( K - 1)
Q
IJK- 1
412
Глава 11.
Дисперсионный анализ
Н ек о т о р ы е м о д е л и , п о к р а й н е й м ер е ф о р м а л ь н о , я в л я ю т ся ч а ст н ы м и с л у
ч а я м и д р у г и х м о д е л е й . Т а к н а п р и м е р , есл и ср а в н и т ь табл . 11.6 и табл . 1 1 .7 , т о
м ож н о получить соотн ош ен и е
Q b (a ) = Q b 4* Q a b •
(1 1 .2 .2 4 )
А н а л о г и ч н о е с о о т н о ш е н и е в е р н о и д л я ч и сел , я в л я ю щ и х ся с о о т в е т с т в у ю щ и м и
с т е п е н я м и св о б о д ы
fs(A) = / в + / л в .
(11.2.25)
В п р и в ед ен н о й н и ж е п р о г р а м м е м ы в о с п о л ь зу е м с я эт и м и с о о т н о ш е н и я м и . П р о
г р а м м а AVTBLE п р е д н а з н а ч е н а как д л я р е ш е н и я з а д а ч к л а с с и ф и к а ц и и с п е р е с е
к аю щ и м и ся ф а к т о р а м и , так и д л я з а д а ч с г р у п п и р у е м о й к л а с с и ф и к а ц и ей . Т и п
к л а с с и ф и к а ц и и н е о б х о д и м о в в ести т о л ь к о д л я р а с п е ч а т к и р е зу л ь т а т о в п р и п о
м ощ и с л е д у ю щ е й п р о г р а м м ы (AV0UTP).
Программа 1 1 .1 . П о д п р о г р а м м а AVTBLE о с у щ е с т в л я е т д в у х ф а к т о р н ы й д и с п е
р си о н н ы й а н а л и з и в к а ч ест в е р е зу л ь т а т а в ы д а е т эл ем ен т ы A N O V A -табл и ц ы
К оманда
вызова:
call
avtble(x , n i , n j , nk, x b, x b i , x b j ,
X B I J , Q, S , F , N D F , A L P HA )
Входные
параметры: X — м а т р и ц а р а з м е р а I х J х К , с о с т о я щ а я и з
р е зу л ь т а т о в и з м е р е н и й
I к лассов А
J классов В
NK — к о л и ч ест в о К р е зу л ь т а т о в и зм е р е н и й , п о п а в ш и х в о т д е л ь н ы е к л а ссы
N1 — к о л и ч ест в о
NJ — к о л и ч ест в о
В ыходные
параметры : ХВ — с р е д н е е зн а ч е н и е х
XBI — /-м е р н ы й в е к т о р с р е д н и х зн а ч е н и й
х^щ
XBJ — J -м ер н ы й в е к т о р с р е д н и х зн а ч е н и й х .у
XBIJ — м а т р и ц а с р е д н и х зн а ч е н и й
р азм ера
I х J
Q — в ек т о р , с о с т о я щ и й и з ш е ст и су м м к в а д р а т о в
Q s,
Q a b , Q b (A),
Qwi Q
s B , s \ B >s2B ^ , s ^ ,
S —- в ек т о р , с о с т о я щ и й и з ш е ст и о ц е н о к д и с п е р с и й
s2
NDF-— в ек т о р , с о с т о я щ и й и з ш е ст и ч и сел , я в л я ю щ и х ся ст е п е н я м и с в о б о д ы
(он и с о о т в е т с т в у ю т ш е ст и р а зл и ч н ы м зн а ч е н и я м
F — в ек т о р , с о с т о я щ и й и з ч е т ы р е х в ел и ч и н
Q)
F: F^A\ F^B\ F^AB\ F^B(A^
ALPHA — в е к т о р , с о с т о я щ и й и з ч е т ы р е х у р о в н е й зн а ч и м о с т и , п р и к о т о р ы х
при в ы п ол н ен и и F -к р и т е р и я н а о с н о в а н и и в ел и ч и н
F
нулевая ги п от еза
д о л ж н а бы ть о т к л о н е н а
SUBROUTINE AVTBLE(X,N1,NJ,NK,ХВ,XBI,XBJ,XBIJ,Q,S,F,NDF,A)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION X ( N I , N J , N K ) , X B I ( N I ) , X B J ( N J ) , X B I J ( N I , N J ) , Q ( 6 ) , D F ( 6 )
11.2.
Двухфакторный дисперсионный анализ
DIMENSION S(6),F(4),NDF(6),A(4)
PARAMETER(ZER0=O.DO, 0NE=1.D0)
AI=DBLE(NI)
AK=DBLE(NK)
AJ=DBLE(NJ)
С вычисление средних
XB=ZER0
DO 10 1=1,N1
XBI(I)=ZER0
10 CONTINUE
DO 20 J=1,NJ
XBJ(J)=ZER0
DO 20 1=1,N1
XBI J(I,J)=ZER0
20 CONTINUE
DO 40 1=1,N1
DO 40 J=1,NJ
DO 30 K=1,NK
XBIJ(I.J) =XBIJ(I,J)+X(I,J,K)
30
CONTINUE
XBIJ(I,J) =XBIJ(I,J)/AK
40 CONTINUE
DO 60 1=1,N1
DO 50 J=1,NJ
XBI(I)=XBI(I)+XBIJ(I,J)
50
CONTINUE
X B I (I)=XBI(I)/AJ
60 CONTINUE
DO 80 J=1,NJ
DO 70 1=1,N1
XBJ(J)=XBJ(J)+XBIJ(I,J)
70
CONTINUE
XBJ(J)=XBJ(J)/А1
XB=XB+XBJ(J)
80 CONTINUE
XB=XB/AJ
С вычисление суммы квадратов
DO 90 L = 1 ,6
Q(L)=ZERO
90 CONTINUE
DO 100 1=1,N1
q(i)=q(i)+(X Bi(i)-xB)**2
100 CONTINUE
Q(1)=AJ*AK*Q(1)
DO 110 J=1,NJ
413
414
С
С
С
С
С
Глава 11.
Дисперсионный анализ
Q (2)= Q (2)+(ХВJ (J)-ХВ)**2
110 CONTINUE
Q(2)=AI*AK*Q(2)
DO 120 1=1,N1
DO 120 J=1,NJ
Q(3)=Q(3)+(XBIJ(I,J)+XB-XBI(I)-XBJ(J))**2
DO 120 K=1,NK
Q(5)=Q(5)+(X(I,J,K)-XBIJ(I,J))**2
Q(6)=Q(6)+(X(I,J,K)-XB)**2
120 CONTINUE
0(3) =AK*Q(3)
Q(4)=Q(2)+Q(3)
определение числа степеней свободы
DF(1)=AI-0NE
DF(2)=AJ-0NE
DF(3)=(AI-0NE)*(AJ-0NE)
D F (4)= D F (2)+ D F (3)
D F (5)=AI*AJ*(AK-ONE)
D F (6)=AI*AJ *AK-0NE
среднее квадратическое
DO 130 L = 1 ,6
S(L)=Q(L)/DF(L)
130 CONTINUE
величина F
DO 140 L=l,4
F(L)=S(L)/S(5)
140 CONTINUE
округление числа степеней свободы до целого
DO 150 L = 1 ,6
NDF(L)=NINT(DF(L))
150 CONTINUE
уровни значимости
DO 160 L = 1 ,4
A(L)=ONE-SCFTST(F(L),NDF(L),NDF(5))
160 CONTINUE
END
Программа 11.2. Подпрограмма AVOUTP распечатывает результаты, выданные
программой AVTBLE в виде ANOVA-таблицы
К оманда
вы зо ва : c a l l AVOUTP(X, n i , n j , n k ) q , S , f , n d f ,
ALPHA,NTYPE)
В ходные
AVTBLE
парам етры : x , n i , n j , n k , q , s , f , n d f , a l p h a — cm.
программу
11.2. Двухфакторный дисперсионный анализ 415
NTYPE — о п р е д е л я е т т и п к л а с с и ф и к а ц и и , д л я к л а с с и ф и к а ц и и с
п е р е с е к а ю щ и м и с я ф а к т о р а м и NTYPE = 0 , а д л я г р у п п и р у е м о й — NTYPE = 1
SUBROUTINE AVOUTP( X , N 1 , NJ , NK, Q, S , F , NDF, ALPHA, NTYPE)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION X ( N I , N J , N K ) , Q ( 6 ) , S ( 6 ) , F ( 4 ) , N D F ( 6 ) , S 0 U R C E ( 6 ) ,
+ALPHA( 4 )
CHARACTERS SOURCE
DATA SOURCE / ' A
’ , ’B
1 , ’ I N T . ’ , ’B ( A ) ’ , * W
’ , ’ TTL. ’ /
WRITE ( * , 9 0 )
DO 10 1 = 1 , N 1
DO 10 J = 1 , N J
WRITE ( 6 , 6 0 ) I , J , ( X ( I , J , K ) , K = 1 , NK)
10 CONTINUE
WRITE ( 6 , 7 0 )
WRITE ( 6 , 8 0 )
SOURCE( 1 ) , Q ( 1 ) , N D F ( 1 ) , S ( 1 ) , F ( 1 ) , ALPHA( 1 )
I F( NTYPE. EQ. O) THEN
DO 2 0 L = 2 , 3
WRITE ( 6 , 8 0 )
20
SOURCE(L),Q(L),NDF(L),S(L),F(L),ALPHA(L)
CONTINUE
ELSE
WRITE ( 6 , 8 0 )
SOURCE( 4 ) , Q( 4 ) , NDF( 4 ) , S ( 4 ) , F ( 4 ) , ALPHA( 4 )
END I F
DO 3 0 L = 5 , 6
WRITE ( 6 , 8 0 )
SOURCE(L),Q(L),NDF(L),S(L)
3 0 CONTINUE
С о п ер а то р ы ф о р м ати р ов ан и я
4 0 FORMAT( 4 1 1 0 )
5 0 FORMAT( 1 OF1 0 , 5 )
6 0 FORMAT( ’ A ( M 2 , J) ,
B (’ ,I 2 , ’)
\(10F 10.2))
70 F O R MA T ( / / / 1 0X , ’ A n a l y s i s o f V a r ia n c e T a b le ’ / /
+ ’ Source
+ ’ Alpha’/ ’
Sum o f
D egrees o f
S q u ares
Mean
F reed o m
F Ratio
S q u are’ / / )
8 0 F 0 R M A T ( 3 X , A 4 , 2 X , F 1 0 . 2 , 5 X , I 3 , 5 X , F 1 0 . 2 , F 1 0 . 5 , F 1 5 . 12)
9 0 FORMAT( ’
DATA’ / )
END
Пример 11,2. Двухфакторный дисперсионный анализ при исследовании рако
вых заболеваний. Д в у м г р у п п а м к р ы с д е л а л и с ь и н ъ е к ц и и т и м и д и н о в о й а м и
н о к и сл о ты , с о д е р ж а щ е й н е зн а ч и т е л ь н о е к о л и ч ест в о т р и т и я — р а д и о а к т и в н о г о
и з о т о п а в о д о р о д а . К р о м е э т о г о , в о д н о й и з г р у п п ж и в о т н ы м в в о д и л ся н ек и й
к а н ц ер о ген (в о з б у д и т е л ь р а к а ) . З а д а ч а и с с л е д о в а н и я с о с т о я л а в и зу ч е н и и и н
т е н с и в н о с т и у с в о е н и я т и м и д и н а к о ж е й ж и в о т н ы х как ф у н к ц и и о т в р ем ен и п у
тем и зм е р е н и я к о л и ч е с т в а р а с п а д о в т р и т и я н а е д и н и ч н о м у ч а с т к е п о в е р х н о с т и
416
Глава 11-
Дисперсионный анализ
Т а б л и ц а 1 1 .8 . Д анны е д л я прим ера 11.2.
наблюдения
1
2
Инъекция
Т и м идии
3
4
1
2
3
4
Т и м иди н
и
канцероген
В рем я после инъекции (часы)
4
34
40
38
36
28
32
34
27
8
12
54
57
40
43
23
23
29
30
44
52
53
51
42
41
34
39
16
51
46
51
49
43
48
36
43
20
24
62
61
54
60
31
45
41
37
61
70
64
28
59
67
58
68
66
32
38
32
34
25
27
27
28
32
66
59
67
58
24
26
32
30
36
52
63
60
59
26
31
25
26
48
52
50
44
52
26
27
27
30
кожи. Построенная классификация имеет пересекающиеся факторы, посколь
ку в обеих группах подопытных животных временная зависимость измерялась
при помощи одного и того же прибора. Результаты сделанных измерений пред
ставлены в табл. 11.8. Приведенные в этой таблице величины явлются уже
преобразованными значениями полученных в результате измерений значений
интенсивностей x f. Преобразование выполнено по формуле х = 50logs;' —100.
Результаты работы приведенной выше программы представлены в табл. 11.9.
Так как значение отношения
очень велико, то, безусловно, наличие (либо
отсутствие) канцерогена (классификация А) оказывает существенное влияние
на полученные результаты. Теперь интересно проверить, зависят ли эти ре
зультаты от времени (классификация В) и существует ли взаимосвязь между
А и В на уровне значимости a = 0.01. По данным из табл. 1.8 можно найти, что
То.99 —2.72. Следовательно, гипотезы об отсутствии временной зависимости и
взаимосвязи между двумя классификациями нужно отвергнуть. В табл. 11.9
приведены также те значения а, при которых эти две гипотезы не следовало
бы отвергать. Эти значения очень малы.
■
11.3. Примеры программ
В с е п р о г р а м м н ы е ф а й л ы д о с т у п н ы в п о д д и р е к т о р и и \D AT ANNEX ASRC.
11.3.1. Головная программа E1AV для демонстрации работы
подпрограмм AVTBLE и AV0UTP
В массиве DATA этой коротенькой программы содержатся данные из примера
1 1 .2 . С помощью этой программы осуществляется дисперсионный анализ и
полученные результаты выводятся на экран в виде табл. 11.9 (это реализуется
путем запуска модулей AVTBLE и AV0UTP).
11.3. Примеры программ 417
Т а б л и ц а 1 1 .9 . Распечатка результатов работы программы д л я прим ера 11.2.
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
А(
1),
1).
1),
1),
1),
1),
1),
1),
1),
1),
2),
2),
2),
2),
2),
2),
2),
2),
2),
2),
В( 1)
В( 2)
В( 3)
В( 4)
В( 5)
В( 6)
В( 7)
В( 8)
В( 9)
В(Ю)
В( 1)
В( 2)
В( 3)
В( 4)
В( 5)
В( 6)
В( 7)
В( 8)
В( 9)
В(10)
Данные
34.00 40.00
54.00 57.00
44.00 52.00
51.00 46.00
62.00 61.00
61.00 70.00
59.00 67.00
66.00 59.00
52.00 63.00
52.00 50.00
28.00 32.00
23.00 23.00
42.00 41.00
43.00 48.00
31.00 45.00
32.00 38.00
25.00 27.00
24.00 26.00
26.00 31.00
26.00 27.00
38.00
40.00
53.00
51.00
54.00
64.00
58.00
67.00
60.00
44.00
34.00
29.00
34.00
36.00
41.00
32.00
27.00
32.00
25.00
27.00
36.00
43.00
51.00
49.00
60.00
68.00
66.00
58.00
59.00
52.00
27.00
30.00
39.00
43.00
37.00
34.00
28.00
30.00
26.00
30.00
Таблица дисперсионного анализа
Источник
рассеяния
Классификация А
Классификация В
Межгрупповая
составляющая
Внутригрупповая
составляющая
Полная сумма
квадратов
Сумма
квадратов
Число
степеней
свободы
Среднее
квадрати
ческое
Величина F
Уровень
значимости
9945.80
1917.50
1
9
9945.80
213.06
590.54725
12.65050
0.00Е-10
0.54Е-10
2 234.95
9
248.33
14.74485
0.03Е-10
1010.50
60
16.84
15108.75
79
191.25
11.3.2. Головная программа E2AV для моделирования данных
и выполнения дисперсионного анализа
Сначала программа запрашивает значение параметра <х и начальные значения
для двух датчиков случайных чисел, а также предлагает выбрать тип класси
фикации: группируемой или с пересекающимися факторами. Затем моделиру
ются данные, которые вычисляются по простой формуле
%ijk —£ijk'
418 Глава 11. Дисперсионный анализ
Здесь величины в ф — реализации нормально распределенной случайной вели
чины со средним нуль и стандартным отклонением а. Эти данные согласуются
с нулевыми гипотезами (11.2.19) и (11.2.23).
Затем выполняется дисперсионный анализ полученных данных и его ре
зультаты выводятся в численном виде.
Указание: Зафиксировать значение параметра о (например, положить
и = 0.1) и несколько раз запустить программу при различных начальных зна
чениях датчиков случайных чисел.
11.4. Задачи по программированию
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\S0LSRC.
11.4.1. Двухфакторный дисперсионный анализ для классификации
с пересекающимися факторами
Для дисперсионного анализа с пересекающимися факторами используется мо
дель представления данных (11.2.16), имеющая вид
%ijk —[I
&i
bj
[cib'jij "Ъ£{jk.
В процессе дисперсионного анализа проверяется нулевая гипотеза
&i — bj — (&fr)ij ~~ 0.
Данные, отвечающие этой нулевой гипотезе, можно смоделировать и затем
проанализировать с помощью программы E2AV (см. разд. 11.3.2).
Написать программу, аналогичную E2AV, которая должна моделировать
данные Х ф в соответствии с приведенной выше формулой, для которой
Задаваемые таким образом величины удовлетворяют условиям (11.2.7). Зна
чения £ф, как и в программе E2AV, должны являться реализацией нормально
распределенной случайной величины со средним нуль и стандартным отклоне
нием о. Сделать возможным ввод в интерактивном режиме величин а, Ь, аб, <т,
д. Программа должна осуществлять дисперсионный анализ смоделированных
данных. Проанализировать различные случаи, например, а = 0, b ф 0, ab = 0;
а ф 0, b = 0, ab = 0; а = 0, b = 0, ab ф 0; и т. д.
11.4. Задачи по программированию 419
11.4.2. Двухфакторный дисперсионный анализ с группируемой
классификацией
Модифицировать программу из задачи 11.4.1 для случая группируемой клас
сификации и данных, задаваемых по формуле ( 1 1 .2 .2 2 ), например, для
%ijk —Д +
+ bij +
где
7+ 1
а,
2
7+ 1
Л
J+1
2
+ v ~ —
ь.
Глава 12
Линейная и полиномиальная
регрессия
Подбор по результатам измерений линейной функции (или в более общем слу
чае полинома), описывающей характер зависимости этих результатов от кон
тролируемой переменной, является, наверное, одной из наиболее часто встреча
ющихся задач анализа данных. Эту задачу обычно называют задачей постро
ения линейной (или полином иальной ) регрессии . Хотя ранее мы уже решали
подобную задачу в разд. 9.4.1, рассмотрим ее теперь еще раз более подробно.
Для решения этой задачи мы будем использовать различные численные мето
ды, уточним, как правильно выбрать порядок полинома, детально проанализи
руем доверительные границы для полученных результатов, а также приведем
метод решения этой задачи для случая, когда ошибки измерений неизвестны.
12.1. Ортогональные многочлены
В разд. 9.4.1 мы аппроксимировали результаты измерений Уг{и). соответствую
щие заданному значению U контролируемой переменной t, полиномом порядка
г — 1 вида
r}(t) = Х\ 4- x 2t -\-------- 1- x rf
1
( 12. 1. 1)
В этом выражении величины rj(t) являются истинными значениями измеряе
мых величин y(t). В примере 9.2 мы видели, что существует максимальный
приемлемый порядок такого полинома, превышение которого не дает даль
нейшего уточнения построенной аппроксимации. Поэтому сейчас мы хотим
рассмотреть задачу нахождения оптимального порядка искомого полинома.
Полученные в примере 9.2 результаты показали, что при увеличении порядка
полинома все его коэффициенты дц, х 2, • • • изменяются и что, вообще говоря,
все они коррелируют между собой. Поэтому в этой ситуации достаточно трудно
сделать вывод о том, какого порядка полином нужно строить. Этих трудностей
можно избежать, если воспользоваться ортогональными многочленами.
Для этого поведение данных описывают не соотношением (12.1.1), а пред
ставляют их в виде
T](t) = Xi/i (t) + Z2/2(i) + •••+ X r f r ( t ) .
( 12 . 1. 2 )
Здесь величины f j являются полиномами порядка j — 1, т. е.
3
(12.1.3)
fc=i
12.1. Ортогональные многочлены 421
Они определяются таким образом для того, чтобы было выполнено условие
ортогональности (или, точнее, условие ортонормированности) относительно
величин U с весовыми коэффициентами ^ = l / o f :
N
(12.1.4)
— $jk'
i—1
Определяя
1ц
Aij —
Air \
Al2
(12.1.5)
A —
Am
Am
*• * A m j
«5
ь-»
и пользуясь записью весовых коэффициентов в матричном виде (9.2.9)
ю
0
)
Gy —
( 12 . 1 . 6 )
0
9N )
получаем, что соотношение (12.1.4) принимает простой вид
A TGyA = L
(12.1.7)
Таким образом, принцип метода наименьших квадратов
N
[
r
12
S Уг{и)
*=1
{
>
J
J=1
= (у - A x )TGy(y - А х) — min,
( 1 2 .1 .8 )
по-прежнему имеет вид (9.2.19), и, следовательно, решение будет иметь вид
(9.2.26)
х — —ATGyy.
(12.1.9)
Выше мы воспользовались соотношениями (9.2.18) и (12.1.7). Из соотношений
(9.2.27) и (12.1.7) следует, что
Сх = J,
(12.1.10)
т. е. что ковариационная матрица для коэффициентов
..., х Г является про
сто единичной матрицей. В частности, это означает, что все эти коэффициенты
не коррелируют между собой.
Перейдем теперь к обсуждению метода нахождения элементов матрицы
(12.1.11)
Ац = М и ) =
к= 1
422
Глава 12. Линейная и полиномиальная регрессия
Для j ~ 1 из условия ортогональности следует, что
N
( 12 . 1 . 12)
и —
Для j = 2 существует уже два уравнения, описывающих условие ортогональ
ности. Сначала используем равенство
Х ^Л (*»)Л (*г) =
i
i
1 + b22ti)bll = 0.
Отсюда следует, что
Е
&21 = “ &22
(12.1.13)
—&22^
где
(12.1.14)
^ ~ Е.9г^г/Е/?г
является взвешенной суммой тех значений контролируемой переменной U,
при которых осуществлялись измерения. Второе условие ортогональности для
j = 2 выглядит следующим образом:
= Е л (ь21 + ь22и ) 2 =
Y,9ib\2(ti - 1)2 =
i,
и, следовательно,
ь22 = i / V Z g ^ - t ) 2.
(12.1.15)
Подставляя это выражение в соотношение (12.1.13), получаем коэффици
ент &21 При j > 2 значения Ац —
можно найти при помощи рекуррентных
соотношений по j — 1 и j — 2 . Запишем в общем виде такую рекуррентную
формулу
Е &
= {U ~ 0 f j - 2 {U),
(12.1.16)
домножим ее на
просуммируем по г и получим
= T,9itt[ fj-i( ti )}2 - a E s < [ /j- i( fi)]2 “ 0 Y ,9 ifj-2 (tt)fj-i(ti).
Из условия ортогональности вторая сумма в правой части будет равна единице,
а третье слагаемое —нулю. Таким образом, получаем
сх = T , 9 i t i [ f j - i { t i ) ] 2 .
(12.1.17)
Умножая соотношение (12.1.16) на g ifj- 2 {U) и суммируя, аналогичным спосо
бом получаем, что
0 =
(12.1.18)
12.1.
Ортогональные многочлены
423
В заключение можно подсчитать, что
Е 9ifj(u) = 1 ,
и подставляя в это соотношение выражение для fj(U) из формулы (12.1.16),
получаем, что
7 2 = Eft[(*i -
- Р ! Ы и ) } 2.
(12.1.19)
Поскольку величины а, /?, j были вычислены для фиксированного j, то
коэффициенты bjk будут равны
bji = ( - a b j- 1 д - (3bj-2д)/7*
~
i,fc—l ~ otbj— —fibj—2 ,k)
1
Ьй = Ь ,- .и _ 1 / 7 .
к —2 , . . . , j — 2 ,
( 1 2 .1 .20 )
Воспользовавшись соотношениями (12.1.3) и (12.1.5), отсюда можно най
ти значения величин Aij =
Поскольку процесс вычислений является
рекурсивным, то столбец j в матрице А вычисляется на основании значений
элементов столбцов, располагающихся левее этого столбца. При этом матрица
на каждом шаге растягивается направо, а элементы исходной матрицы оста
ются неизменными. В результате при увеличении с г до г' числа слагаемых в
полиноме ( 1 2 .1 .1 ) (т. е. при увеличении порядка полинома) найденные коэф
фициенты х \ , ..., х г остаются без изменений, и приходится находить только
оставшиеся г' —г коэффициентов. Все Xj не коррелируют между собой и имеют
стандартное отклонение <Т£. = 1 . Теперь из условия
\Xj\ < с,
j >г
можно определить, какой порядок должен иметь полином, корректно описы
вающий поведение данных. Если учесть это условие, то вклад всех коэффици
ентов порядка выше, чем Xj, будет меньше, чем со^.. Простейшим вариантом
значения коэффициента с очевидно является с — 1 .
Теперь, для того чтобы при заданном г найти наилучшие оценки rji(U)
для истинных значений щ(и), соответствующих результатам измерений y%{U)^
можно подставить найденные значения bjk в соотношение (12.1.3), а значения
— B уравнение (12.1.2). Можно также вычислить значение величины
м
у * Ш и ) -У г{и )?
к
Если поведение исходных данных действительно описывается полиномом за
данного порядка, то величина М будет иметь хи-квадрат распределение с
/ = N — г степенями свободы. Ее можно использовать для проверки согла
сия данных с интересующим полиномом при помощи критерия хи-квадрат.
424
Глава 12. Линейная и полиномиальная регрессия
Программа 12.1. Подпрограмма EEGP0L осуществляет построение полиноми
альной регрессии, где в качестве полиномов выступают ортогональные много
члены
К о м а н д а в ы з о в а : call r e g p o l ( t , y , d e l t a , n , n r , х , в , а ,
CHI2)
В х о д н ы е п а р а м е т р ы : Т — n-мерный вектор контролируемых переменных U
Y — n-мерный вектор результатов измерений у*
DELTAY — n-мерный вектор ошибок измерений Л у* = я*
N — количество результатов измерений п
NR— максимальное количество параметров г
В ы х о д н ы е п а р а м е т р ы *. X — r-мерный вектор параметров x i , . . х г
В — матрица коэффициентов bjk размера г х г
А — матрица A i j =
размера п х г
CHI2 — r-мерный вектор значений минимизируемой функции М ,
отвечающих построенным полиномам порядка 0, 1, . . г — 1
SUBROUTINE REGPOL(Т,Y ,DELTAY,N ,NR,X ,В ,А ,CHI2)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
DIMENSION T(N),Y(N),DELTAY(N),X(NR),CHI2(NR)
DIMENSION В (NR,NR),A(N,NR)
PARAMETER(MAXN=1000)
DIMENSION G(MAXN)
COMMON /DASV04/ G
PARAMETER (ZER0=0.D0,0NE=1.D0)
С вычисление весовых коэффициентов G и взвешенного среднего TBAR
SG=ZER0
TBAR=ZER0
DO 10 1=1,N
G(I)=0NE/DELTAY(I)**2
SG=SG+G(I)
ТВAR=TBAR+G(I)*T(I)
10 CONTINUE
TBAR=TBAR/SG
С вычисление В и А при NR=1
В(1,1)=0NE/SQRT(SG)
DO 20 1=1,N
A(I,1)=B(1,1)
20 CONTINUE
С вычисление В и А при NR=2
IF(NR.GE.2) THEN
S=ZER0
DO 30 1=1,N
S=S+G(I)*(T(I)-TBAR)**2
30
CONTINUE
12.1. Ортогональные многочлены
B (2 ,2 )= 0 N E /S Q R T (S )
В ( 2 , 1 ) = - В ( 2 , 2 ) *TBAR
DO 4 0 1 = 1 , N
A ( I ,2 ) = В ( 2 ,1 ) + В ( 2 , 2 ) * T (I)
40
CONTINUE
END IF
С в ы ч и сл ен и е В и А при NR больш е 2
I F (N R .G T .2 ) THEN
DO 100 J = 3 ,N R
ALPHA=ZER0
BETA=ZER0
GAMMA2=ZER0
DO 5 0 1 = 1 ,N
A L P H A = A L P H A + G (I )* T (I)* A (I ,J -1 )* * 2
B E T A = B E T A + G ( I ) * T ( I ) * A ( I ,J - l) * A ( I ,J - 2 )
50
CONTINUE
DO 6 0 1 = 1 ,N
GAMMA2=GAMMA2+G(I)* ( (T (I)-A L P H A )* A ( I , J - 1 ) +
60
B E T A *A (I, J - 2 ) ) * * 2
CONTINUE
GAMMA1=0NE/SQRT(GAMMA2)
B ( J , 1)=G A M M A 1*(-A L PH A *B(J-1, l ) - B E T A * B ( J - 2 ,1 ) )
I F ( J .G E .4 ) THEN
DO 70 K = 2 , J - 2
B (J ,K )= G A M M A 1 * (B (J -1 ,K -1 )-A L P H A * B (J -l,K )-
+
70
B E T A * B (J -2 ,K ))
CONTINUE
END IF
B ( J ,J - 1 ) = G A M M A 1 * ( B ( J - 1 ,J - 2 ) - A L P H A * B ( J - l,J - l) )
B (J ,J )= G A M M A 1 * B (J -1 ,J -l)
DO 9 0 1 = 1 ,N
A ( I ,J ) = B ( J ,1 )
DO 80 K = 2 ,J
A ( I ,J )= A (I ,J ) + B ( J ,K ) * T ( I )* * ( K -1 )
80
90
100
CONTINUE
CONTINUE
CONTINUE
END IF
С в ы ч и сл ен и е X и CHI2
DO 140 J = 1,N R
X (J)=Z E R 0
C H I2(J)=Z E R 0
DO 110 1 = 1 ,N
X ( J ) = X ( J ) + G ( I ) * A ( I ,J ) * Y ( I )
110
CONTINUE
425
426
Глава 12.
Линейная и полиномиальная регрессия
DO 1 3 0 1 = 1 , N
S=ZER0
DO 1 2 0 K = 1 ,J
S = S + A (I ,K )* X (K )
CONTINUE
120
C H I2 (J )= C H I2 (J )+ G (I)* (Y (I)-S )* * 2
130
CONTINUE
140 CONTINUE
END
Пример 1 2 . 1 . Решение задачи из примера 9.2 с помощью ортогональных по
линомов. В табл. 12.1 приведены результаты работы программы REGP0L для
данных из примера 9.2. Значения минимизируемой функции в точности со
впадают с результатами, полученными в примере 9 .2 , и это неудивительно.
Построенные полиномы также имеют тот же вид, что и в примере 9.2. Что ка
сается значений величин Si, Х2 , ..., то они отличны от значений этих величин
из примера 9.2, поскольку в данном случае они вычисляются по-другому. Ра
нее мы уже подчеркивали, что ковариационная матрица х является единичной
матрицей размера г х г. Мы видим, что величины xq, х 7 , . . хю принимают
значения меньше единицы, а потому их можно считать незначительно отлича
ющимися от нуля. Гораздо сложнее определить, насколько значимым является
х$ ~ 1.08. Во многих случаях такое значение не следовало бы рассматривать
как существенно отличное от нуля. Все выше сказанное означает, что для опи
сания поведения исходных данных достаточно полинома третьего порядка (т. е.
г = 4).
■
Т а б л и ц а 12.1. Результаты работы программы
д л я данн ы х из прим ера 9.2.
г
ХТ
1
2
3
4
5
6
7
8
9
10
24.05
15.75
23.43
5.79
1.08
0.15
0.85
-0.41
-0.45
0.75
М
833.55
585.45
36.41
2.85
1.69
1.66
0.94
0.77
0.57
0.00
число степеней свободы
9
8
7
6
5
4
3
2
1
0
REGP0L
12.3. Регрессия при неизвестных значениях ошибок измерений 427
12.2. Кривая регрессии. Доверительный интервал
Если тем или иным способом определить и зафиксировать порядок полино
ма (12.1.2), то можно вычислить значения всех точек, удовлетворяющих урав
нению регрессии, или —в рамках графической интерпретации —лежащих на
кривой регрессии . Это можно сделать, подставив вычисленные рекуррентным
способом значения величин bjk при заданном t в соотношение (12.1.3), а за
тем использовав полученные таким образом значения fj (t) и параметры х для
нахождения значения выражения (12.1.2):
з
Ф ) = Y , Xj
з-
1
k- 1
53
k=l
= dT (t)x.
( 12.2 . 1)
Здесь d является r-мерным вектором, компоненты которого равны
( 12.2 .2)
Применяя формулу преобразования ковариационных матриц и дисперсий
(см. соотношение (3.8.4)), можно вычислить дисперсию величины rj(t)> Она
будет равна
4 (0 =
(12-2.3)
поскольку Сх — 7- Таким образом, нормированная величина
Ф ) -
Ф )
(12.2.4)
*Ф )
будет иметь стандартное гауссовское распределение. Это в свою очередь озна
чает, что величина rj(t) распределена по гауссовскому закону со стандартным
отклонением сгщ{Ь) и средним rj(t).
Теперь легко можно построить доверительный интервал для
Согласно
разд. 5.8, с вероятностью Р
и\ > (2(Р) = Q
(12.2.5)
где может быть, например, 12(0.95) = 1.96. Таким образом, доверительные
границы при доверительном уровне Р (например, при Р — 0.95) будут такими:
Ф )
= Ф )
±
= Ф )
± s ?j (t ).
( 1 2 .2 .6 )
12.3. Регрессия при неизвестных значениях ошибок
измерений
Если значения ошибок измерений а * = 1/y/gi неизвестны, однако можно пред
положить, что они равны между собой, т. е. что
<у%—(j,
г = 1, . . . , iV,
(12.3.1)
428
Глава 12.
Линейная и полиномиальная регрессия
то оценку s для величины а легко можно найти напрямую из уравнения ре
грессии. Величина
У'
2^
i~ 1
- y i ( t j ))2
0-2
(12.3.2)
имеет хи-квадрат распределение с / = N —г степенями свободы. Точнее, если
бы должен был быть выполнен ряд одинаковых экспериментов, в каждом из ко
торых нужно было бы осуществить N измерений, то вычисленные для каждого
из этих экспериментов значения величины М имели бы хи-квадрат распреде
ление с f — N —т степенями свободы. Их математическое ожидание равно
/ = N —г. Если же значение величины а в соотношении (12.3.2) неизвестно, то
его можно заменить некоторой оценкой s таким образом, чтобы правая часть
этого выражения равнялась математическому ожиданию величины М, т. е.
s2 =
- Vi(ti))2/( N - г).
(12.3.3)
При нахождении величин fj(ti) нужно пользоваться формулами из предыдуще
го раздела, подставляя в них значение <Ji — 1. (Действительно, в случае, когда
выполнено равенство (12.3.1), величины а и gi можно полностью исключить
из формул, по которым вычисляются X и fj(t).)
Если определить
4(i) = dTW d (*)
как значение дисперсии величины rj(t), отвечающее случаю сг* = 1, то
*l(t) = s24 (t)’
(12-3-4)
очевидно, будет являться оценкой дисперсии для rj(t), вычисляемой на осно
вании оценки (12.3.3) для дисперсии результатов измерений. Замена
на
в выражении (12.2.4) соответствует заданию величины
v = 5(0 - >?(*)
(12.3.5)
Srj(t)
которая имеет уже не стандартное нормальное распределение, а £-распределение Стьюдента с / = N —г степенями свободы (см. разд. 8.3). Тогда до
верительные границы при доверительном уровне Р = 1 —а будут выглядеть
следующим образом:
T}(t) = r j ( t )
± t l —a/ 2 $rj(t) =
v(t)
±
(12.3.6)
где
является квантилью ^-распределения Стьюдента с f = N — г сте
пенями свободы.
Следует уточнить, что в этом случае (когда ошибки измерений неизвест
ны) критерий хи-квадрат применять нельзя. Поэтому степень согласия постро
енного полинома с исходными данными нельзя проверить. А это значит, что
12.3.
Регрессия при неизвестных значениях ошибок измерений
429
м е т о д о м о п р е д е л е н и я п о р я д к а п о л и н о м а , о п и са н н ы м в к о н ц е р а з д . 1 2 .1 , у ж е
н е л ь зя б у д е т в о с п о л ь зо в а т ь с я . С л е д о в а т е л ь н о , о с т а е т с я п о л а га т ь ся н а
апри
орные п р е д п о л о ж е н и я о п о р я д к е п о л и н о м а . П о э т о м у з а ч а с т у ю с т а р а ю т с я и з
бегать п о с т р о е н и я п о л и н о м о в в ы со к о го п о р я д к а и о г р а н и ч и в а ю т ся л и н ей н о й
за в и си м о с т ь ю м е ж д у г/ и £, т. е. с л у ч а е м
Программа 12.2.
г = 2.
П о д п р о г р а м м а REGCQN в ы ч и сл я ет к о о р д и н а т ы т о ч е к , л е ж а
щ и х н а к р и в ой р е г р е с с и и , и р а с с т о я н и е о т н и х д о д о в е р и т е л ь н ы х г р а н и ц
К оманда
вы зо ва : call regcon( x , b , t , chi 2 , p , nr , n f ) eta ,
CONETA)
В ходные парам етры : Х-—r-мерный вектор х
В — матрица коэффициентов bjk размера г х г
Т — значение контролируемой переменной t
CHI 2 — зн а ч е н и е м и н и м и зи р у е м о й ф у н к ц и и М д л я п о с т р о е н н о г о п о л и н о м а
п о р я д к а г — 1 в п р е д п о л о ж е н и и , ч то в се о ш и б к и о* = 1. Е с л и з а д а н н о е
зн а ч е н и е п а р а м е т р а CHI2 < 0, т о э т о о зн а ч а е т , ч то <Ji и зв ест н ы .
Р — довери тел ьн ы й ур овен ь Р д л я дов ер и тел ьн ы х грани ц
NR — к о л и ч ест в о п а р а м е т р о в г в п о л и н о м е
NF — к о л и ч ест в о с т е п е н е й с в о б о д ы / =
В ыходные
N —г
парам етры : ЕТА — зн а ч е н и е в ел и ч и н ы
CONETA — р а с с т о я н и е
rj(t)
Srj(t) о т д о в е р и т е л ь н ы х г р а н и ц д о зн а ч е н и я fj(t)
SUBROUTINE REGCON( X , В , Т , C H I2, Р , NR, N F, ETA, CONETA)
IMPLICIT DOUBLE PRECISION ( A - H ,0 - Z )
DIMENSION X (N R ),B (N R ,N R )
PARAMETER (Z E R 0= 0. DO, 0N E = 1. DO, HALF=0. 5D 0)
PPRIME=HALF*(P+1)
I F (C H I 2 . LE. ZERO) THEN
S=QNE
FACT=SQSTNR(PPRIME)
ELSE
S=SQ R T (C H I2/D B L E (N F ))
FACT=SQSTUD(PPRIME, NF)
END IF
ETA=ZER0
C0NETA=ZER0
DO 2 0 J = 1 ,N R
D = B (J , 1 )
I F ( J . G T . l ) THEN
DO 10 K= 2 , J
D = D + B (J ,K )* T * * (K -1 )
10
CONTINUE
END IF
ETA=ETA+X(J)*D
430 Глава 12. Линейная и полиномиальная регрессия
■t> t
Рис. 12.1. (Наверху.) Результаты измерений и их ошибки, а также кривая регрессии
и ее 95 % доверительные границы. (Внизу.) Результаты измерений, ошибки которых
по предположению неизвестны и равны между собой, кривая регрессии и ее 95 %
доверительные границы.
C0NETA=C0NETA+D*D
20 CONTINUE
CONETA-FACT*S*SQRT(CONETA)
END
Пример 12.2. Доверительные границы для линейной регрессии. На верхнем
графике на рис. 12.1 представлены четыре точки, отвечающие результатам из
мерений, соответствующая кривая регрессии и ее доверительные границы при
95 % доверительном уровне. Данные взяты из примера из разд. 9.3. Очевидно,
что доверительные границы расширяются по мере удаления из той области, в
которую попали результаты измерений. Наиболее узкий участок доверитель
ной области находится вблизи точки, отвечающей результату измерений с ми
нимальной ошибкой. Этот график похож на график на рис. 9.2d. Легко можно
12.4.
Примеры программ
431
убедиться, что огибающая для кривых на рис. 9.2d соответствует 68.3 % дове
рительной границе. При построении нижнего графика на рис. 12.1 использова
лись те же самые результаты измерений, однако их ошибки полагались неиз
вестными и равными между собой. Отвечающая этому предположению кривая
регрессии и соответствующие 95 % доверительные границы также изображены
на этом графике.
■
12.4. Примеры программ
Все программные файлы доступны в поддиректории \DATAN\EXASRC.
12.4.1. Головная программа E1REG для демонстрации работы
подпрограммы REGP0L
В массиве DATA этой короткой программы содержатся данные из примеров
9.2 и 12.1. В качестве ошибок измерений были взяты статистические ошибки
Ayi ~ y/yl- Путем вызова модуля REGP0L эта программа осуществляет построе
ние полиномиальной регрессии с г = 10 параметрами. Полученные результаты
представляются в численном виде (см. также табл. 12.1).
12.4.2. Головная программа E2REG для осуществления
графического вывода самих данных, а также всех построенных
полиномов для полиномиальной регрессии
Начало этой программы полностью совпадает с началом программы E1REG. Да
лее запрашивается номер графической рабочей станции, а также максимальное
количество npoi слагаемых в полиномах, которые нужно вывести на экран. За
тем вычисляются координаты точек XPL(I,J), YPL(I, J), лежащих на кривых,
отвечающих графикам функций
з
j — 1, ...,Tlpol*
Эти кривые, а также сами результаты измерений выводятся на экран посред
ством запуска модуля GRDTMC.
Указание: Задайте последовательно npoi = 2,3,4,6,10. Попытайтесь объ
яснить, почему при nPoi = 3 или 4 аппроксимационные кривые выглядят доста
точно убедительно, несмотря на то, что при пр0\ = 10 все точки, отвечающие
результатам измерений, лежат в точности на кривой построенного полинома.
12.4.3. Головная программа E3REG для демонстрации работы
подпрограммы REGC0N и вывода на экран построенного полинома и
доверительных границ для него
Начало этой программы также повторяет начало модуля E1REG. После ввода
номера графической рабочей станции, параметра npoi и доверительного уров-
432
Глава 12.
Линейная и полиномиальная регрессия
-0.5
0
0.5
-------------> *
Р и с . 1 2 .2 . Результаты изм ерений и их ош ибки, построенны й полином и доверитель
ные границы при доверительном уровне 0.999.
н я (он и п о т р е б у ю т с я п о з д н е е ) за п у с к а е т с я м о д у л ь REGP0L, в к о т о р о м о д н и м и з
а р г у м е н т о в я в л я е т с я п а р а м е т р NP0L. Э т о н е о б х о д и м о с д е л а т ь д л я т о г о , ч т о б ы
о б е с п е ч и т ь н а л и ч и е в п а м я т и м а т р и ц ы В с NPOL-й с т р о к о й и NPOL-м с т о л б
ц о м , как э т о б у д е т п р е д п о л а г а т ь с я д а л е е п р и в ы зо в е м о д у л я REGC0N. Э т о т м о
д у л ь в ы зы в а ет ся в ц и к л е д л я в с е х т о ч е к т р е х к р и в ы х . П е р в а я к р и в а я я в л я е т с я
кривой регресси и , д в е д р у г и е — вер хн ей и н и ж н ей довери тел ьн ы м и грани цам и
п р и з а д а н н о м у р о в н е зн а ч и м о с т и . С п о м о щ ь ю за п у с к а м о д у л я GRDTMC в с е эт и
т р и к р и в ы е в ы в о д я т с я н а эк р а н . К р и в а я р е г р е с с и и и з о б р а ж а е т с я п р и п о м о щ и
сп л о ш н о й л и н и и , а д о в е р и т е л ь н ы е гр а н и ц ы — п р и п о м о щ и п у н к т и р н ы х л и н и й
(см . р и с. 1 2 .2 ).
12.4.4. Головная программа E4REG для моделирования данных
с ошибками измерений и построения по ним полиномиальной
регрессии
Эта программа моделирует данные (без учета ошибок измерений), которые
вычисляются при помощи полиномома (т —1)-го порядка, т. е. полинома с т
слагаемыми. Всего порождается п точек вида (£$,у*), соответствующих значе
ниям переменной t: t\ — —1, t 2 = —I + A t, . . . , tn = 4-1 при A t = 2/(n —1),
Vi — xi + x2U 4- ж3£? H------- h
+ £»•
Ошибки измерений е%нормально распределены со средним нуль и стандартным
отклонением о.
12.5.
-1
-0.5
Задачи по программированию
0
0.5
433
1
-------------> *
Рис. 12.3. Д анны е и их ош ибки, а такж е кривые регрессии, соответствую щ ие поли
номам различны х порядков.
Сначала в интерактивном режиме вводятся значения величин n, <т, m, а
также коэффициенты Xj. Затем осуществляется моделирование данных и по
строение полиномиальной регрессии таким же способом, что и в примере 12.4.1,
вывод результатов производится в буквенно-цифровом формате.
У казание: Убедитесь, что пока ошибки измерений достаточно малы, а задан
ные значения х ш существенно отличны от нуля, порядок полинома в процессе
анализа всегда можно определить из условия, что \хт\ > 1 и \xm+ i1« 1 (здесь
^■—коэффициенты, найденные при построении регрессии). Не путайте эти
значения коэффициентов с заданными величинами.
12.5. Задачи по программированию
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\SOLSRC.
12.5.1. Моделирование данных и вывод на экран уравнения
регрессии для полиномов различных порядков
Написать программу, которая моделирует данные, соответствующие
разд. 12.4.4, осуществляет регрессионный анализ и в итоге выводит на экран
исходные данные и кривые полиномиальной регрессии также, как описано в
разд. 12.4.2. Вы можете при этом использовать части программ E4REG и E2REG.
Пример графического вывода результатов представлен на рис. 12.3.
434 Глава 12. Линейная и полиномиальная регрессия
12.5.2. Моделирование данных и вывод на экран кривой
полиномиальной регрессии и доверительных границ
Написать программу, которая моделирует данные в соответствии с формулой
из разд. 12.4.4, осуществляет построение регрессии и в заключение выводит
на экран кривую регрессии, соответствующую полиному желаемого порядка,
а также доверительные границы таким же образом, как в разд. 12.4.3. Пре
доставить пользователю возможность выбора: будет ли при вычислении до
верительных границ величина а предполагаться известной, или же будет ис
пользоваться только информация о разбросе данных вокруг кривой регрессии.
Пример графического вывода результатов представлен на рис. 12.4.
3,
0.5
C.L. = 0.9900
0
0.5
Р и с. 12.4. Данные, кривая полиномиальной регрессии (сплошная линия) и довери
тельные границы (пунктирные кривые).
Глава 13
А нализ врем енн ы х рядов
13.1. Временные ряды. Тренд
В предыдущей главе мы рассматривали зависимость случайной величины у от
контролируемой переменной t. Так же как и там, будем далее предполагать, что
величина у состоит из двух составляющих —истинного значения измеряемой
величины 7] и ошибки измерений 5,
Уг = г]г + гг,
г = 1, 2, . . . , п.
(13.1,1)
В главе 12 мы предполагали, что щ является полиномом по t . Ошибки измере
ний £i мы считали нормально распределенными с нулевым средним.
Теперь мы хотим сделать менее строгие предположения относительно ве
личины г). В этой главе мы будем называть контролируемую переменную t
«временем», хотя во многих приложениях она будет иметь другой физический
смысл. Метод, который мы хотим обсудить, называется анализом временных
рядов и часто применяется для решения различных экономических задач. Этот
метод всегда можно использовать в случае, когда либо полностью отсутству
ет информация о виде функциональной зависимости между т] и £, либо когда
такой информации недостаточно. При решении задач по анализу временных
рядов обычно удобнее рассматривать наблюдаемые величины t/7- через равные
промежутки времени
U — ti~ 1 — A t — const,
(13.1.2)
поскольку это приводит к значительному упрощению всех формул.
Пример временного ряда представлен на рис. 13.1. На первый взгляд ре
зультаты измерений довольно сильно колеблются от точки к точке. Несмотря
на это, все эти точки, очевидно, имеют определенный тренд. В левой части
графика большинство точек положительно, а в правой части —отрицательно.
На качественном уровне можно было бы найти среднюю временную зависи
мость, от руки начертив гладкую кривую, проходящую через эти точки. Од
нако поскольку построение таких кривых субъективно, а потому эти кривые
уникальны и их невозможно заново воспроизвести, то мы должны попытаться
разработать какой-либо другой объективный метод.
Воспользуемся обозначениями переменных в уравнении (13.1.1) и назовем
т]i трендом, а ^ - случайной составляющей результатов измерений
Для
того чтобы построить гладкую кривую (функцию) по t, можно, к примеру,
подсчитать для каждого yi значение выражения
436
Глава 13.
Анализ временных рядов
Р и с . 1 3 .1 . Д анны е (круж оч к и ) и скользящ ее среднее (отрезки, объединенны е в ло
маную ) .
т. е. невзвешенное среднее результатов измерений в моменты времени
ti— кч
fc+ li
—1
■)
^ i+k •
Величина (13.1.3) называется скользящим средним для у.
13.2. Скользящее среднее
Безусловно, формула (13.1.3) для скользящего среднего очень проста по по
строению. Позднее будет показано (см. пример 13.1), что использование сколь
зящего среднего в таком виде разумно лишь в случае справедливости пред
положения о том, что на рассматриваемом интервале переменная rj линейно
зависит от времени, т. е. что
rjj —a + 0t j,
j = -/с, - к 4-1,..., к.
(13.2.1)
Здесь а и (3 являются константами. Их можно оценить на основании исходных
данных путем построения линейной регрессии.
Однако мы не будем ограничиваться рассмотрением линейного случая, а
сделаем более общее предположение о том, что г} может быть полиномом по
рядка £.
На усредняющем интервале переменная t принимает значения
tj —U + j A t,
j — - к, - к + 1, . . . , к.
(13.2.2)
Поскольку на этом интервале переменная rj является полиномом по £, т. е.
pj — di + &2 tj + CL^tj -Г • ■*+ ae+itj,
(13.2.3)
13.2. Скользящее среднее 437
то она также является полиномом и по j, другими словами
rij = X1 + x2j + хзЗ 1 н---- + xt+ ije,
(13.2.4)
так как соотношение (13.2.2) задает линейное преобразование между tj и т. е.
происходит просто смена масштаба. Теперь методом наименьших квадратов по
данным найдем коэффициенты х \ ,
x i+ \. Такая задача уже была решена
в разд. 9.4.1. Предположим (за отсутствием более детальной информации), что
все измерения были выполнены с одной и той же точностью. Это означает, что
Gy = a l, т. е. что матрица Gy равна единичной матрице 7, домноженной на не
который коэффициент. Таким образом, основываясь на соотношении (9.2.26).
вектор коэффициентов можно найти по формуле
(13.2.5)
* = - ( Л т Л ) ' 1Лт у,
где А —матрица размера (2k + 1) х (£ + 1):
/1
1
—к
-к + 1
\ 1 к
(-к)2
(—к +
...
(-*)*
\
1)2 ... (-jfc + l)'
к2
к
(13.2.6)
/
Для тренда rjo на основании соотношения (13.2.4) в центре усредняющего ин
тервала (j = 0) вычисляется оценка
fjo = xi.
(13.2.7)
Она равна первому коэффициенту данного полинома. Коэффициент х\ вычи
сляется по формуле (13.2.5) путем умножения вектора-столбца, состоящего из
результатов измерений у, слева на вектор-строку
а = ( - ( j4t .4)-1 j4t ) i ,
т. е. на первую строку матрицы
(13.2.8)
(ЛТЛ)~1.4Т. В результате получаем, что
Щ = а у - а - к У - к + a - k + i y - k + i + ■■■ + аоУо + ■■■ + а-кУк•
(13.2.9)
Это линейная функция относительно результатов измерений в пределах
усредняющего интервала. Здесь вектор а зависит не от результатов измерений,
а лишь от величин £ и fc, т. е. от порядка полинома и длины данного интервала.
Очевидно, что нужно выбирать
£ < 2к + 1 ,
поскольку в противном случае не осталось бы ни одной степени свободы в ме
тоде наименьших квадратов, используемом при построении подгонки. Компо
ненты вектора а при малых значениях величин £ и к можно найти из табл. 13.1.
438 Глава 13. Анализ временных рядов
Таблица 13.1. Компоненты вектора а, используемые при вычислении скользящего
среднего.
■Ь О- fc+i)
1
j ак)
11
* * *
11
-'и: S'
а = (а_■fc>a-fc+i)
* ■ *)
■Ofc)
t —2 и ^= 3
2
3
4
5
6
7
35
21
231
429
143
1105
к
А
3
4
5
6
231
429
429
2431
7
46189
0 -7
0-6
0-5
0-4
0-3
0—2
-3
-21
9
9
87
-78
-13
-36
0
42
ю
II
IS
А
II
к
0 -7
0-6
0 -5
0-4
-11
2145
no
-2860
18
-198
-2937
15
-45
-135
-165
0 -1
12
6
54
84
24
162
Оо
17
7
-2
14
44
16
122
147
0-3
0-2
0 -1
5
-55
-10
-30
30
60
390
75
135
120
600
131
179
143
677
7500
10125
11063
110
3755
3
39
69
21
59
89
25
167
оо
Уравнение (13.2.9) определяет скользящее среднее, соответствующее предполагаемому полиному (13.2.4). Если вектор а найден, то скользящие средние
щ = fio(i) = ay(i) = а ш _ к +
a 2y i - k+ 1
+ • ■■+ a2 k+1 yi+k
(13.2.10)
легко можно вычислить для любого значения г.
Пример 13.1. Скользящее среднее для ряда с линейным трендом. В случае
линейной функции тренда
rjj = XI + X2J ,
13.3.
Краевые эффекты
439
матрица А принимает простой вид
А =
1
1
-к
-к
1
к
\
+ 1
Тогда
1
АТА
=
1
—к
1
1
1
—к + 1
-к \
- к 4 -1
к
к
2к + 1
О
0
fc(fc + l)(2fc + l ) / 3 ,
1
Т л\-1 _
(AM)
2к + 1
О
J
п
\
О
3
&(* + 1)(2& + 1) /
о = (-(А т А )-1Ат )1 -
2к + 1
(1,1,...,1).
В этом случае скользящее среднее является просто невзвешенным средним
вида (13.1.3).
■
Для моделей более сложного вида вектор а можно найти либо путем вычи
сления значения выражения (13.2.8), либо просто по табл. 13.1. Ввиду симме
трии матрицы А можно показать, что полиномы четных порядков (т. е. те, для
которых £ = 2п, где п целое) имеют те же значения вектора а, что и полино
мы ближайшего снизу нечетного порядка, т. е. £ ~ 2п — 1. Также легко можно
показать, что вектор а симметричен, т. е. что
dj = a_j,
j
(13.2.11)
— 1.2
13.3. Краевые эффекты
Безусловно, скользящее среднее (13.2.10) можно использовать для оценки трен
да только в тех точках г, которые имеют, как минимум, соседних точек как
справа, так и слева, поскольку усредняющий интервал должен покрывать 2fc+l
точку. Это означает, что для первых и последних точек во временных рядах
нужно использовать другую оценку. Наиболее очевидным обобщением этой
оценки служит экстраполяция полинома (13.2.4) (вместо того, чтобы исполь-
к
к
440
Глава 13.
Анализ временных рядов
зовать только значения в центрах соответствующих интервалов, применяют
экстраполяцию). В этом случае опенки выглядят следующим образом:
rji = Щ = х
к^
^ (г 4- к — п) 4- х ^ 1 k\ i + к —п )2 + • *■
4- x ^ k\ i + к — п),
%> п — к.
(13.3.1)
Запись
и х^п к} здесь означает, что коэффициенты х были найдены для
первого и последнего интервалов временного ряда, центры которых находятся
в точках (к + 1) и (п —к).
Таким образом, теперь оценки можно найти даже при i < 1 и i > п. Следо
вательно, появляется возможность продолжить временной ряд (например, впе
ред—в направлении будущего). Такую экстраполяцию нужно осуществлять
очень осторожно по двум причинам:
(1) Во-первых, зачастую отсутствуют какие-либо теоретические обоснования
предположения о том, что поведение тренда описывается некоторым поли
номом. Экстраполяция лишь упрощает вычисление скользящего среднего,
однако без теоретического обоснования сделанной модели тренда экстра
поляция теряет смысл.
(ii) Во-вторых, даже в том случае, когда тренд действительно можно предста
вить в виде некоторого полинома, в области экстраполяции доверительные
границы для построенной оценки достаточно быстро расходятся и доволь
но сильно отклоняются от найденного полинома. Поэтому экстраполяция
становится очень неточной.
Имеет ли место на практике ситуация, описанная в пункте (i), следует прове
рять отдельно для каждой конкретной задачи. Проблема, описанная в пункте
(и), носит более общий характер и уже знакома нам по задачам линейной ре
грессии (см. рис. 12.1). Мы изучим эту проблему более подробно в следующем
разделе.
13.4. Доверительные интервалы
Для начала рассмотрим доверительный интервал для скользящего среднего
и*, определяемого по формуле (13.2.10). Дисперсии величин pi нам неизвест
ны, и, следовательно, их нужно оценить. На основании соотношения (12.3.2)
получаем, что выборочная дисперсия для
на интервале длины 2 к + 1 равна
(13.4.1)
13.4. Доверительные интервалы 441
где rjj вычисляется по формуле
'
Vj
= ®i + x 2j + x 3 j 2 + --- + x e+1 j e.
(13.4.2)
Тогда ковариационную матрицу для результатов измерений можно оценить
следующим образом:
G - 1 и s2
yI .
(13.4.3)
Следовательно, ковариационная матрица для коэффициентов х будет опреде
ляться на основании соотношения (9.2.27). т. е.
G - 1 « ( A T G y A ) ~ 1 = s2
y ( A T A Г 1.
(13.4.4)
Поскольку щ — щ — х \ . то оценка дисперсии щ будет иметь следующий вид:
4
= ( G - ^ n = ^ ( ( Л Т Л ) - 1)!! =
s 2ya0.
(13.4.5)
На основании соотношений (13.2.6). (13.2.7) и (13.2.8) легко можно подсчитать,
что { А ^ А ) ^ = а0) так как средняя строка матрицы А равна —(1,0,0,..., 0).
С помощью тех же рассуждений, что и в разд. 12.3, получаем, что при
доверительном уровне 1 —а
Ы * ) - Vo(i)\
Sy ClQ
< * 1 -1 -
(13.4.6)
При заданном а можно построить следующие доверительные границы:
Vo (г) = rj0 (i) ±aoSy*i- iQ-
(13.4.7)
Здесь ^ i - i a является квантилью распределения Стьюдента с 2к — £ степеня
ми свободы. Истинное значение тренда будет лежать в пределах найденных
границ с доверительным уровнем 1 —а.
Совершенно аналогичным образом, хотя и посредством более трудных вы
числений, можно построить доверительные границы в начале и конце времен
ного ряда. В этом случае скользящее среднее будет вычисляться по формуле
(13.3.1). Переобозначая аргументы в выражении (13.3.1) следующим образом:
j = г —к — 1 и j — г к ~ п, получаем, что
р = Тх.
(13.4.8)
Здесь Т является вектором-строкой длины £ Н- 1 вида
(13-4.9)
Воспользовавшись формулой преобразования ковариационных матриц и дис
персий (3.8.4), получаем, что
G- 1 = T G ~ 1 T t .
(13.4.10)
442
Глава 13.
Анализ временных рядов
В итоге, из соотношения (13.4.4) находим, что
(1 3 .4 .1 1 )
г д е Sy с н о в а о п р е д е л я е т с я п о ф о р м у л е (1 3 .4 .1 ).
Теперь величину s | можно вычислить для любого значения j, даже для тех
значений, которые лежат вне границ самого временного ряда. Таким образом,
доверительные границы имеют вид
^ ( i ) = r){i)±Srjt i _ i Q.
(1 3 .4 .1 2 )
13.5. Программа анализа временных рядов. Примеры
С помощью следующей программы можно выполнить все вычисления, необхо
димые для проведения анализа временных рядов.
П р о г р а м м а 1 3 .1 .
Подпрограмма
TIMSER
осуществляет анализ временных ря-
ДОВ
КОМАНДА ВЫЗОВА: CALL T I M S E R C Y ^ K ^ P .E T A ^ O N E T A ^ ,
АТА 1Д ТА 1А Т, SCRAT)
В
ходны е п а ра м етры
: Y — n -м е р н ы й в е к т о р , к о м п о н е н т ы
уъ к о т о р о г о
я в л я ю т с я эл ем ен т а м и в р е м е н н о г о р я д а
п эл ем ен тов в р ем ен н ого р я д а
К — п а р а м е т р к, о п р е д е л я ю щ и й д л и н у 2к А 1 у с р е д н я е м о г о и н т е р в а л а
L — порядок усредняю щ его полином а £
Р — вероятн ость Р — дов ер и тел ьн ы й ур овен ь д л я дов ер и тел ьн ы х гран и ц
SCRAT — р а б о ч и й м а с с и в , м и н и м а л ь н ы й р а з м е р к о т о р о г о (£ А 1) х (£ + 1)
N — коли чество
В ы ходны е
п арам етры
: ЕТА — ( п 4- 2& )-м ер н ы й в е к т о р с к о л ь зя щ и х с р е д н и х ;
эл ем ен т ы в н е м и д у т в с л е д у ю щ е м п о р я д к е: rji-ky Щ- k + h • - rjn+k
CONETA— (п 4- 2& )-м ер н ы й в е к т о р р а с с т о я н и й о т д о в е р и т е л ь н ы х г р а н и ц д о
с к о л ь зя щ и х с р е д н и х , эл ем ен т ы к о т о р о г о и д у т в т о м ж е п о р я д к е
А р а з м е р а (2 к 4 - 1 ) х (£ 4 - 1 )
(£ 4- 1) х {£ 4- 1)
АТА 1 АТ —- м а т р и ц а (А тА ) ~ 1А т р а з м е р а (£ 4- 1) х ( 2 к 4- 1)
А — м атрица
АТА1 — м а т р и ц а (А Т А ) - 1 р а з м е р а
SUBROUTINE TIM SER(Y, N , К , L , Р , ETA, CONETA, A , ATA1, ATA1AT, SCRAT)
IMPLICIT DOUBLE PRECISION (A -H .O -Z )
DIMENSION Y (N ),E T A (N + 2 * K ), C O N E T A (N + 2*K ),A (2*K + 1,L + 1)
DIMENSION A T A 1 ( L + 1 ,L + 1 ) , A T A 1A T (L + 1 ,2 * K + 1 ),S C R A T (L + 1 ,L + 1 )
PARAMETER (M A X =1000, Z E R 0 = 0 .D 0 , 0 N E = 1 .D 0 , H A L F =0.5D 0)
DIMENSION X(M AX ), YTMP(MAX),ETATMP(MAX),T(MAX)
COMMON /D A D V 03/ X , YTMP, ETATMP, T
С к в а н т и л ь р а с п р е д е л е н и я С т ь ю д ен т а
PPRIME=HALF*(P+1)
NF=2*K -L
13.5. Программа анализа временных рядов. Примеры 443
TALPHA=SQSTUD(PPRIME, NF)
С в ы ч и сл ен и е м а т р и ц , за в и ся щ и х т о л ь к о о т К и L
К 21=2*К +1
L1=L+1
DO 2 0 1 = 1 , К21
DO 10 J = 1 ,L 1
I F ( J . E Q . l ) THEN
A ( I , J )= -0 N E
ELSE
A ( I , J ) = A ( I , J - l) * D B L E ( I - K - 1 )
END IF
10
CONTINUE
2 0 CONTINUE
CALL M T X M A T (A ,A ,A T A 1,L 1,K 21,L 1)
CALL MTXCHI( АТА1 , SCRAT, L 1)
CALL MTXMBT( АТА1 , A , АТА1AT, L 1 , L 1 , K21)
CALL MTXMSC( ATA1 AT, ATA1AT, -ONE, L 1 , K 21)
С цик л п о в ы бран н ой в н у т р е н н е й ч а с т и в р е м е н н о г о р я д а
1А=2*К+1
IB=N
DO 6 0 I = I A ,I B
С ск о л ь зя щ и е с р е д н и е и д о в е р и т е л ь н ы е грани цы д л я в н у т р е н н и х ч а с т е й
CALL MTXGSM(Y, YTMP, N , 1 , К 2 1 , 1 , I - I А+1 , 1 )
CALL MTXMLT( АТА1АТ, YTMP, X , L 1 , К 21 , 1 )
ЕТА ( I ) =Х С1)
CALL MTXMLT( А ,Х ,Е Т А Т М Р ,К 21, L 1 , 1 )
CALL MTXADD(YTMP, ETATMP, ETATMP, K 21 , 1 )
CALL MTXMAT(ETATMP, ETATMP, S Y 2 , 1 , K 21 , 1 )
SY 2=SY 2/D B LE(N F)
A0=SQRT(ABS(ATA1( 1 , 1 ) ) )
C0NETA(I)=A0*SQRT(SY2)*TALPH A
С ск о л ь зя щ и е с р е д н и е и д о в е р и т е л ь н ы е грани цы д л я к р аев ы х т о ч е к
I F ( I .E Q .I A .OR. I .E Q .I B ) THEN
I F ( I .E Q .I A ) THEN
IADD=IA
IS = -1
ELSE
IADD=IB
IS = 1
END IF
DO 5 0 1 1 = 1 , 2*K
J= IS *I1
DO 4 0 1 2 = 1 , LI
DO 3 0 1 3 = 1 ,1 2
I F ( I 3 .E Q .l)
THEN
444 Глава 13. Анализ временных рядов
T ( I 2 )= 0 N E
ELSE
T (I2 )= T (I2 )* J
END IF
30
40
CONTINUE
CONTINUE
CALL MTXMBT( ATA1, T , SCRAT, L I , L I , 1 )
CALL MTXMLT(T, SCRAT, SETA 2, 1 , L I , 1 )
SETA2=SY2*SETA2
CALL M TXM LT(T,X,ETAI, 1 ,L 1 , 1 )
CONETA( IADD+J) =SQRT( ABS(SETA2) ) *TALPHA
ETA( IADD+J) =ETAI
50
CONTINUE
END IF
6 0 CONTINUE
END
При толковании результатов анализа временных рядов всегда следует со
блюдать особую осторожность. В основном это обусловлено двумя причинами:
1) Обычно отсутствует какое-либо априорное обоснование для использования
той или иной математической модели временного ряда. Зачастую просто
выбирается модель, с помощью которой можно «выявить и разделить» ста
тистические колебания.
2) Пользователь свободен в выборе параметров к и которые в свою очередь
существенно влияют на полученные результаты. Следующий пример дает
представление о степения этого воздействия.
Пример 13.2. Анализ временного ряда для одного и того же набора результа
тов измерений для различных усредняющих интервалов и полиномов различ
ных порядков. На рисунках 13.2 и 13.3 приведены результаты анализа вре
менного ряда, представляющего собой среднее количество пятен на солнце,
наблюдаемых в течение 36 месяцев в период с января 1962 года по декабрь
1964 года. В процессе анализа были использованы различные значения к и
L Отдельные графики, представленные на рис. 13.2, соответствуют значению
I — 1 (линейному усреднению) для интервалов различной длины (2А + 1 = 5, 7,
9 и 11). Можно заметить, что кривая скользящего среднего становится все бо
лее гладкой, а доверительные границы все более сужаются по мере возрастания
параметра к , однако при этом среднее отклонение отдельных наблюдений от
построенной кривой также возрастает. За пределами интервала, соответству
ющего периоду наблюдений, произведена экстраполяция прямой. (При £ = 0
мы бы получили те же самые скользящие средние для внутренних точек пери
ода наблюдений. Что касается внешних и экстраполированных точек, то они
лежали бы на отрезках горизонтальных прямых, поскольку полином нулевого
13.5.
к =
2, I =
1,
Программа анализа временных рядов. Примеры
Р = 0.950
к =
3, I =
1,
Р = 0.950
к =
5,
1,
Р = 0.950
445
-t
к =
=
1,
Р = 0.950
Р и с. 13.2. А н ализ временного р я д а д л я одних и тех ж е данн ы х при фиксированном
t и различны х значениях к.
Р и с. 13.3. А н ализ временного ряда д л я одних и тех ж е данны х при фиксированном
к и различны х значениях £.
446
Глава 13.
Анализ временных рядов
порядка является константой.) Графики, изображенные на рис. 13.3, соответ
ствуют длине интервалов, равной 2к 4-1 = 7, и параметрам £ = 1,2,3,4. В этом
случае кривые скользящего среднего лежат достаточно близко к исходным дан
ным, а доверительные интервалы увеличиваются с ростом значения I.
■
На основании сделанных наблюдений можно сформулировать следующие
утверждения, носящие качественный характер:
1) Не следует выбирать длину усредняющих интервалов большей, чем та
область, в которой, как ожидается, данные можно будет достаточно точ
но аппроксимировать полиномом заданного порядка. Другими словами, при
£ = 1 длину интервала 2к+1 следуют выбирать таким образом, чтобы ожида
емые нелинейные эффекты в пределах этого интервала были минимальны.
2) С другой стороны, эффект сглаживания увеличивается по мере возраста
ния длины усредняющего интервала. Эмпирические данные показывают,
что сглаживание становится более эффективным с возрастанием величины
2к + 1 -£ .
3) Необходимо соблюдать осторожность в процессе экстраполяции временных
рядов, особенно в нелинейных случаях.
Безусловно, существуют и другие, более продвинутые и более глубоко раз
работанные методы анализа временных рядову чем те, которые можно было
описать в такой короткой главе. Тем читателям, которые интересуются этим
вопросом, мы рекомендуем прочесть специализированную литературу, в кото
рой, к примеру, вместо полиномов рассматриваются гладкие функции, а также
осуществляется многомерный анализ.
13.6. Примеры программ
Все программные файлы доступны в поддиректории \DATAN\EXASRC.
13.6.1, Головная программа E1TIM для демонстрации работы
подпрограммы TIMSER
В массиве DATA этой короткой программы содержатся данные из примера 13.2.
После ввода определенных параметров при помощи вызова модуля TIMSER про
грамма осуществляет анализ временного ряда, при этом предполагается, что
к = 2, а £ = 2. Затем исходные данные, найденные скользящие средние и
расстояния до доверительных границ (при доверительном уровне 90 %) выво
дятся в численном виде.
13.6.2. Головная программа E2TIM для осуществления анализа
временных рядов и вывода на экран полученных результатов
Эта программа работает с теми же данными, что и программа E1TIM. Вначале
запрашиваются значения параметров u f , a также доверительный уровень Р .
13.7. Задачи по программированию 447
Затем с помощью программы TIMSER осуществляется анализ временного ряда.
После этого строится график, на котором исходные данные изображаются в
виде маленьких кружочков, а кривые скользящих средних —в виде ломаных,
Ломаные (другого цвета) также используются для обозначения доверительных
границ.
У казание: Воспроизвести графики, представленные на рис. 13.2 и 13.3.
13.7. Задачи по программированию
Файлы с возможными решениями предложенных задач содержатся в подди
ректории \DATAN\SOLSRC.
13.7.1. Экстраполяция в процессе анализа временных рядов
В разд. 13.3 мы подчеркивали, что в процессе интерпретации результатов ана
лиза временных рядов на границах интервала наблюдения, а также в процес
се построения экстраполяции вне этого интервала следует соблюдать особую
осторожность. В частности, мы увидели, что экстраполяция теряет смысл, если
данные не аппроксимируются некоторым полиномом. Степень этого полинома
должна быть меньше либо равна степени полинома, используемого в процессе
анализа временного ряда.
Проверьте эти утверждения путем моделирования различных временных
рядов и их анализа. Напишите программу (воспользуйтесь для этого програм
мой E2TIM), которая для п = 200, i = 1, 2, , . , , п моделирует данные в соответ
ствии в формулами
г - 100
50 '
Здесь £i должна быть нормально распределенной величиной со средним нуль
и стандартным отклонением a . Сделайте возможным ввод в интерактивном
режиме параметров т , а, /с, I и Р. После моделирования данных программа
должна осуществлять анализ временного ряда и строить такой же график, что
и программа E2TIM. Провести анализ для различных комбинаций значений т ,
и
для каждой из этих комбинаций использовать как малые значения
(например, a = 0.001), так и большие значения а (например, a = 0.1).
Уг = С + Сг?
U=
к 1\
a
13.7.2. Точки разрыва временных рядов
В процессе построения метода анализа временных рядов мы предполагали,
что результаты измерений (без учета их статистических колебаний) являются
непрерывной функцией от времени. Поэтому в тех областях, где наблюдаются
точки разрыва временного ряда, результаты анализа могут быть несостоятель
ными. Напишите программу, которая порождала бы описанные ниже три типа
временных рядов, анализировала бы их и выводила результаты на экран в гра
фическом виде. Один временной ряд должен быть непрерывным, а два других
должны обладать точками разрыва.
448
Глава 13. Анализ временных рядов
Синусообразная функция:
у* = sin(7rti/180) + £i,
U = г,
г = 1, 2 , . . . , п.
Ступенчатая функция:
* = \
( -l+€i.
1+£i)
и<Ш
t. >100,
.
.
л ОПП
= г mod 200,
. , 0
г = 1,2, . . . , гг.
Пилообразная функция:
Vi — (J'i — 50)/100 + 6 i 1
U — г mod 100,
г = 1, 2, . . . , n.
Здесь €i вновь должны быть нормально распределенными величинами со
средним нуль и стандартным отклонением <т.
Предоставить пользователю возможность выбирать одну из этих функций,
а также в интерактивном режиме задавать значения параметров п, <т, fc, £ и Р .
Проведите анализ этих временных рядов при различных значениях задавае
мых параметров и обсудите полученные результаты. На рис. 13.4 представлены
результаты анализа временного ряда для конкретных значений этих параме
тров.
Р и с. 13.4. Временной ряд, соответствующий ступенчатой функции, скользящие
средние и доверительные границы.
Приложение А
М атричное и сч и сл ен и е
В процессе анализа данных часто приходится решать переопределенные систе
мы линейных уравнений вида А х « Ь. Эту задачу можно решить оптимальным
способом, а именно с помощью метода сингулярного разложения, разработан
ного в конце 1960-х годов. В разделах А.1 и А.2 настоящего приложения собра
ны основные определения и правила матричного и векторного исчисления. В
разд. А.З приведены программы для выполнения простых действий над матри
цами. В разд. А.4 вводится понятие ортогональных преобразований, в частно
сти приводятся преобразования Гивенса и Хаусхолдера, лежащих в основании
метода сингулярного разложения.
Вслед за рядом замечаний, касающихся определителей (см. разд. А.5), сле
дует разд. А.6, посвященный обсуждению различных матричных уравнений,
а также формулировке теоремы об ортогональном разложении произвольной
матрицы, занимающей особое место в этой области матричного исчисления. В
этом разделе также рассмотрен классический метод нормальных уравнений,
который, однако, по всем параметрам уступает методу сингулярного разло
жения.
Разделы А.7 ~~ А.9 посвящены простейшему случаю полностью определен
ных невырожденных: матричных уравнений. В этом случае существует обрат
ная матрица А-1 , а решение задачи А х = Ь имеет вид х = А ~ 1 Ъ. В этом
разделе также приведены методы и программы для нахождения такого реше
ния. Важным частным случаем является случай положительно определенной
симметричной матрицы, который разобран в разд. А. 10.
В разд. А.11 вводится понятие матрицы А+ , псевдообратной для произ
вольной матрицы А. Понятия собственных векторов и собственных значений
приведены в разд. А.12, а сингулярное разложение описано в разделах А.13 —
А.14. Соответствующие компьютерные программы приведены в разд. А.15. Мо
дификации перечисленных процедур и анализ ограничений рассматриваются
в разделах А.16— А.19.
В этой книге была предпринята попытка сделать изложение скорее понят
ным и наглядным, нежели математически строгим. Поэтому доказательства
различных утверждений в тексте либо приведены лишь в общих чертах, либо отсутствуют полностью. Как уже упоминалось, метод сингулярного разло
жения пока еще не является широко распространенным. Одна из важнейших
задач этого приложения состоит в том, чтобы дать возможность использо
вать этот метод на практике. Читателям, обладающим базовыми знаниями
матричного исчисления, для этого будет достаточно материала, изложенного
в разд. А.4, А.13, А.14, А.15.1 и А.19. Разделы А.15.2 —А.15.5 посвящены раз-
450 Приложение А. Матричное исчисление
бору технических деталей построения сингулярного разложения, при первом
чтении их можно пропустить.
А.1. Определения. Простейшие операции над матрицами
Вектором в m-мерном пространстве (m-мерным вектором) а называется на
бор из т действительных чисел, являющихся компонентами этого вектора а.
Компоненты, расположенные в виде
/а 1 \
0*2
а
\
(А. 1.1)
/
образуют вектор-столбец.
Матрицей размера т х п называются расположенные в виде прямоугольной
таблицы т х п чисел, при этом таблица состоит из т строк и п столбцов, т. е.
(
А \2 ■• • Ain \
А-21
А-22
’ **
А .2 п
(А.1.2)
А =
\ Ami Am2
Amn /
Матрицу можно рассматривать как объединение п вектор-столбцов. В резуль
тате транспонирования матрицы А размера т х п получают матрицу Ат раз
мера п х ш, элементы которой определяются следующим образом:
Ajk = А ы .
(А. 1.3)
При транспонировании вектора-столбца получают вектор-строку
а — (&1,0,2 ) *• • 1&тп)*
(А.1.4)
Вектор-столбец является матрицей размера m x l , a вектор-строка —матрицей
размера 1 х т.
Над матрицами с одинаковым числом строк и столбцов можно осуще
ствлять следующие элементарные операции: сложение, вычитание; возможно
также умножение матрицы на константу:
А =Ь В = (7,
Cik ~ Aik ± B ik,
olA
(А. 1.5)
—В ,
В^к ~ &Aik•
(А. 1.6)
Произведение А В двух матриц определено только в том случае, если количе
ство столбцов в первой матрице равно количеству строк во второй матрице, в
частности для А = Атхг и В = Вех т . В этом случае
е
А В — С,
Cik — Е AijBjk(А.1.7)
Так как
r T
см = Е
3=1
^ я * = Y , Al B l = E 4 4 ..
J=1
3 -1
А.1. Определения. Простейшие операции над матрицами 451
то получаем, что
Ст = (A B f = ВТАТ .
(А. 1.8)
С помощью соотношения (А. 1.7) можно также определить произведение
вектора-строки а т на вектор-столбец Ь в случае, когда каждый из них состоит
из m компонент,
m
a b = ar b — с,
с—
(А.1.9)
з~ 1
В этом случае результат произведения будет числом, т. е. скалярной величиной.
Величина (А.1.9) называется скалярным произведением. Обычно при записи
скалярного произведения знак транспонирования опускается и его записывают
просто как а Ь. Вектора а и 6 называются ортогональными друг другу, если их
скалярное произведение равно нулю. Далее на основании соотношения (А 1.9)
будут получены различные полезные свойства произведения матриц (А. 1.7).
Элемент С ^, находящийся на пересечении г-й строки и к-го столбца матрицы
произведения С. равен скалярному произведению г-й строки первой матрицы
А и к-го столбца второй матрицы В.
Диагональными элементам,и матрицы (А.1.2) являются элементы Ац. Они
образуют главную диагональ матрицы А. Если все внедиагональные элементы
матрицы равны нулю, т. е. если Ац — 0, г Ф j, то матрица А называется диаго
нальной матрицей. Диагональная матрица размера п х п , все диагональные
элементы которой равны единице, называется n-мерной единичной матрицей
In = h
1
0
10
0
1
0
...
...
...
0
0
1
1
\
1
—
)
0
\
(А.1.10)
0
1
/
У нулевой матрицы все элементы равны нулю:
0 0 .... 0 \
0 о .... 0
(А.1.11)
0 0 .... о)
Нулевая матрица, у которой имеется всего один столбец, называется нулевым
вектором 0.
Далее мы перечислим ряд специфических свойств квадратных матриц.
Квадратная матрица называется симметричной, если
A i k = A ki.
(А.1.12)
Если
(А. 1.13)
то в этом случае матрица называется кососимметричной.
452
П рилож ение А.
Матричное исчисление
Двухдиагональная матрица В содержит ненулевые элементы только на
главной диагонали (Ьц ) и на диагонали, находящейся прямо над главной, т. е.
(&М+1)В трехдиагопальной матрице ненулевые элементы находятся также и на
диагонали, находящейся прямо под главной. У нижнетреугольной матрицы
все ненулевые элементы расположены ниже главной диагонали, а у верхне
треугольной матрицы ~ только выше ее.
Евклидовой нормой или абсолютным значением вектора называется ве
личина
___
И = IM 2 = а = V а 1а =
а].
(А.1.14)
V ^
Вектор с единичной нормой называется единичным вектором. Мы будем его
записывать в виде
а = а/а.
Другие векторные нормы имеют вид
iia iip= G C iaJ'ip)1/p’
j
|jd 1100 —max jaj j.
i<p<oo,
(А.1.15)
3
Каждой векторной норме ||з?|| по правилу
ЦА|| = шах ||Ааз||/||ж||
(А.1.16)
можно поставить в соответствие некоторую матричную норму ||А||. Матрич
ная норма обладает следующими свойствами:
1!А > 0, А / 0; А| = 0, А = 0,
||аА[| = |а|||А ||,
а — вещественное число,
(А.1.17)
(А.1.18)
IIА + В\\ < |Щ| + ||В||,
(А.1.19)
1 |А В ||< ||А || ||В||.
(А.1.20)
А.2. Векторное пространство, подпространство,
ранг матрицы
Множество всех n-мерных векторов называется п-мерным векторным про
странством. Если и и v —два некоторых вектора из этого пространства, то
векторы а и и и + v также лежат в этом пространстве, т. е. векторное про
странство замкнуто относительно операций сложения векторов и умножения
вектора на скаляр а. Векторы a i, <12 , . . . ,
называются линейно независимы
м и , если
к
У ai ai Ф о
3= 1
( А . 2.1)
А .2.
Векторное пространство, подпространство, р ан г матрицы
453
для всех ctj за исключением a?i =
—••• =
= 0. В противном случае они
называются линейно зависимыми. Максимальное количество kmSLX векторов,
которые могут быть линейно независимы в данном векторном пространстве,
равно размерности п этого векторного пространства. Множество из п произ
вольных линейно независимых векторов a j, a 2 , . . . , a n образует базис вектор
ного n-мерного пространства. Любой вектор а из этого пространства можно
представить в виде линейной комбинации базисных векторов вида
a —
(А .2 .2 )
& ja j ‘
Рассмотрим базис вида
е\
/ 1 \
0
0
/ 0 \
1
о
е2 =
V0 /
V0 /
е г} —
О\
о
о
(А.2.3)
V1 /
Эти базисные вектора являются ортонормированными, т. е. для них
1,
0,
i = ji
г фз -
(А .2 .4 )
Компонента aj вектора а равна скалярному произведению этого вектора а на
базисный вектор ej, т. е.
a e j — aj ,
(А.2.5)
см. соотношения (А.1.1), (А.1.9).
При п < 3 для векторов легко можно построить геометрическую интер
претацию. Любой вектор а можно представить в виде направленного отрезка
длины а. Базисные векторы (А.2.3) будут перпендикулярны друг другу и будут
иметь единичную длину. Проекции вектора а на базисные векторы будут да
вать отрезки, длины которых будут равны компонентам (А.2.5) этого вектора.
Такая геометрическая интерпретация представлена на рис. А.1.
Некоторое подмножество Т векторов векторного пространства S называет
ся подпространством, если оно само замкнуто относительно операций сложе
ния векторов и умножения вектора на скаляр. Максимально возможное коли
чество линейно независимых векторов в подпространстве Т равно размерности
этого подпространства Т. Результат умножения матрицы А размера га х п на
тг-мерный вектор а равен га-мерному вектору 6, т. е.
Ъ = Аа.
(А.2.6)
Выражение (А.2.6) можно рассматривать как задание отображения или пре
образования вектора а в вектор Ь.
Линейная оболочка набора векторов а \ , . . . ,
является векторным про
странством, состоящим из всех возможных линейных комбинаций и этих век-
454
П рилож ение А,
Матричное исчисление
Р и с . А .1 . В ектор а в системе коорди
нат, связанны х с ортон орм ированиям и
базисны м и векторам и e i , ег.
торов, т. е. сумм вида
к
u ~ ^ aj aj ’
3-1
(А.2.7)
Это пространство имеет размерность m < к. Пространство столбнрв матри
цы А размера т х п является линейной оболочкой п вектор-столбцов, обра
зующих матриц}7 А; в этом случае т -мерные векторы и имеют вид и = А х ,
где х —произвольный тг-мерный вектор. Очевидно, что размерность простран
ства столбцов меньше или равна min(т,гг). Аналогично можно определить
пространство строк матрицы А как линейную оболочку т векторов-строк,
образующих эту матрицу.
Нуль-пространство или ядро матрицы А состоит из множества векторов
ж, для которых
Аж = 0.
(А.2.8)
Пространство строк и пространство столбцов матрицы размера т х п имеют
одинаковую размерность. Она называется рангом матрицы. Матрица размера
т х п является матрицей полного ранга, если
Rank(A) = min (m,n).
(А.2.9)
В противном случае она является матрицей неполного ранга. Матрицу размер
ности гг х гг, для которой Rank(A) < гг, называют вырожденной.
Вектор а ортогонален подпространству Т, если он ортогонален всем
векторам t Е Т этого подпространства. (Тривиальным примером служит
t — t\e \ -f ^2 ^ 2 , & = аез, a ■t = 0.) Подпространство U ортогонально подпро
странству T, если все пары векторов и Е U ,t Е Т удовлетворяют соотношению
u t = 0. Множество векторов вида и + 1 образует векторное пространство V , ко
торое называется прямой суммой подпространств [ / и Г и записывается в виде
V = T® U.
(А.2.10)
А .2.
Векторное пространство, подпространство, ранг матрицы
455
Р и с . А . 2 . Гиперплоскость
Н
в
двум ерном
векторном
простр ан
стве.
е2
Р и с . А .З . Гиперплоскость Н и ее орто
гональное дополнение (одном ерное век
торное пространство) Т.
Размерность этого пространства равна
dim (У) - dim(T) -h dim(L0-
(А.2.11)
Если имеет место соотношение (А.2.10). то Т и U являются подпространствами
пространства V. Они называются ортогональными дополнениями друг друга,
т. е. Г = ?7Х, U = Т х . Если Т является подпространством некоторого про
странства S, то всегда существует его ортогональное дополнение Т х такое, что
S = Т 0 Т х . Тогда любой вектор а € S можно единственным образом пред
ставить в виде суммы а = t 4- и, где t G Г. а и G Т х . Нормы этих векторов
удовлетворяют соотношению а2 = t2 + и2.
Если Т является (п —1)-мерным подпространством n-мерного векторного
пространства S и если s — фиксированный вектор из S, то множество всех
возможных векторов вида h = s 4- £, где t G Т, образует (п — 1)-мерную
гиперплоскость Н в пространстве S. Если задана гиперплоскость Н и Не
произвольный фиксированный вектор, лежащий в этой гиперплоскости # , то
тогда пространство Т образовано множеством всех возможных векторов вида
t = h — Hq, /г £ if. Эта ситуация представлена на рис. А.2. Если и является
единичным вектором одномерного подпространства Т = # х , ортогонального
гиперплоскости Я , то скалярное произведение
u h —d
(А.2.12)
равно одному и тому же значению для всех h £ Н, где d —расстояние от
гиперплоскости до начала координат (см. рис. А.З).
456
П рилож ение А.
Матричное исчисление
При заданных и и d, уравнение (А.2.12) задает гиперплоскость Н. Она
делит n-мерное векторное пространство на два полупространства, первое из
которых состоит из множества векторов ж, для которых и • ж < 0, а второе —
из множества векторов ж, для которых и х > 0.
А.З. Программы для выполнения простейших операций
над матрицами и векторами
В этом разделе представлен ряд простых подпрограмм для выполнения опе
раций над матрицами и векторами. Они не требуют отдельных пояснений.
Однако пользователь должен отметить для себя следующие моменты.
Размерность векторов и матриц, являющихся аргументами этих подпро
грамм, является переменной величиной. Поэтому размерность также являет
ся одним из аргументов. Следовательно, в головной программе для хранения
этих векторов и матриц должны быть созданы массивы достаточно большого
объема.
Программа
А .1 .
Подпрограмма
MTXTRA
копирует матрицу размера т х п
К оманда
вызова:
Входные
параметры : А —матрица А размера т
call
mtxtra( a , r , m, n )
хп
М, N—размерности т , п
Выходные
параметры : R —копия R = А матрицы А
Программа
А .2 . П о д п р о г р а м м а MTXWRT п е р е д а е т м а т р и ц у
строчно на стандартное устр ой ств о вы вода
К оманда
вызова*
, call
Входные
параметры: А — м а т р и ц а А р а з м е р а т х п
А
разм ер а
т хп
по
(
m txw r t a , m , n )
M,N — р а з м е р н о с т и ш ,п
SUBROUTINE MTXWRT( A, M, N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A( M, N)
DO 2 0 1 = 1 , M
WRITE( * , 1 0 ) ( A ( I , J ) , J = 1 , N )
10 FORMAT( I X , 4 G 2 0 . 1 3 )
2 0 CONTINUE
END
Программа
К оманда
А .З .
Подпрограмма MTXADD складывает две матрицы размера т х п
вызова:
call mtxadd( a , b
, r , M,n )
А.З. Программы для выполнения простейших операций 457
Входные параметры: А — матрица А размера m х п
В—матрица В размера m х п
М, N — размерности m , п
В ыходные параметры: R — матрица R = А + В размера m х п
SUBROUTINE MTXADD( А, В, R, М, N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , B ( M , N ) , R ( M , N )
DO 2 0 J = 1 , N
DO 10 1 = 1 , M
R (I,J)=A (I,J)+B(I,J)
10
CONTINUE
2 0 CONTINUE
END
П р о г р а м м а A .4 .
Подпрограмма MTXSUBвычисляет разность матриц A n В раз
мера m х n
К оманда вызова: c a l l m t x s u b ( a , b , r , m , N)
В ходные параметры: А—матрица А размера m х п
В—матрица В размера m х п
М, N — размерности m, п
В ыходные параметры: R — матрица R = А — В размера m х п
SUBROUTINE MTXSUB( А , В , R , М, N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , B ( M , N ) , R ( M , N )
DO 2 0 J = 1 , N
DO 10 1 = 1 , M
R (I,J)=A (I,J)-B(I,J)
10
CONTINUE
2 0 CONTINUE
END
Подпрограмма MTXMLT вычисляет произведение матрицы A
размера m x l на матрицу В размера l x п
П р о г р а м м а A .5.
К оманда вызова: c a l l m t x m l t ( a , b , r , m , l , N)
Входные параметры: А —матрица А размера m x I
В—матрица В размера I х п
М, L , N — размерности m, I , п
Выходные параметры: R — матрица R = А В размера m x п
SUBROUTINE MTXMLT( А , В , R , М, L , N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
458 Приложение А. Матричное исчисление
DIMENSION A ( M , L ) , B ( L , N ) , R ( M , N )
DO 3 0 J=1 ,N
DO 20 1 = 1 , M
R ( I , J) =0 DO 10 LL = 1 , L
R(I,J)=R(I,J)+A(I,LL)*B(LL,J)
10
CONTINUE
20
CONTINUE
3 0 CONTINUE
END
Программа A.6.
р азм ер а m x £ и
П о д п р о г р а м м а MTXMBT в ы ч и с л я е т п р о и зв е д е н и е м а т р и ц ы
тр ан сп он и р ован н ой м атрицы В р а зм ер а п х £
A
К оманда вызова: CALL m t x m b t ( a , b , R , m , l , n )
Входные параметры: А — м а т р и ц а А р а з м е р а т х £
В — м атрица В р азм ер а п х
М, L , N — р а з м е р н о с т и т , £,
В ыходные
£
п
параметры : R — м а т р и ц а R — АВТ р а з м е р а т х п
SUBROUTINE MTXMBT( А , В , R , M , L , N )
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , L ) , B ( N , L ) , R ( M , N )
DO 30 J = 1 , N
DO 2 0 1 = 1 , M
R (I,J)=0,
DO 10 L L = 1 , L
R(I,J)=R(I,J)+A(I,LL)*B(J,LL)
10
CONTINUE
20
CONTINUE
3 0 CONTINUE
END
Программа A .7.
ванной м атрицы
П о д п р о г р а м м а MTXMAT в ы ч и с л я е т п р о и зв е д е н и е т р а н с п о н и р о
р азм ер а £ х т на м атрицу В р азм ер а £ х п
А
К оманда вызова: CALL mt x ma t ( a , b , r , m , L , n )
Входные параметры: А — м а т р и ц а А р а з м е р а £ х т
В — м атрица В р азм ер а
M, L, N — р а з м е р н о с т и
В ыходные
£х п
п
параметры : R — м а т р и ц а R — АГВ р а з м е р а т х п
SUBROUTINE MTXMAT( A, B, R, M, L, N)
IMPLICIT DOUBLE PRECISION ( A - H , Q - Z )
DIMENSION A ( L , M ) , B ( L , N ) , R ( M , N )
А.З. Программы для выполнения простейших операций
459
DO 30 J=1,N
DO 20 1 = 1,М
R ( I ,J ) = 0 .
DO 10 LL=1,L
R (I,J )= R (I,J )+ A (L L ,I)* B (L L ,J )
10
CONTINUE
20
CONTINUE
30 CONTINUE
END
Программа A.8. Подпрограмма MTXUNT создает единичную матрицу размера
пх п
К оманда
вы зо ва : call mtxunt( r , n )
В ходные
парам етры :
В ыходные
N — размерность п
парам етры :
R — единичная матрица Я = / п размера n x п
SUBROUTINE MTXUNT(R,N)
IMPLICIT DOUBLE PRECISION (A-H.0-Z)
DIMENSION R(N,N)
DO 20 J=1,N
DO 10 1=1,N
I F ( I .E Q .J ) THEN
R ( I , J ) = l . DO
ELSE
R ( I , J ) = 0 .DO
END IF
10
CONTINUE
20 CONTINUE
END
Программа A.9. Подпрограмма MTXZER создает нулевую матрицу размера
шхп
К оманда
вы зо ва : call mtxzer ( r , m,N)
В ходные
парам етры :
В ыходные
M,N — размерности m ,n
парам етры :
R — нулевая матрица R размера ш х п
SUBROUTINE MTXZER(R,N,M)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
DIMENSION R(N,M)
DO 20 J=1,M
DO 10 I=1,N
R ( I ,J ) = 0 .
10
CONTINUE
20 CONTINUE
END
460
Приложение А. Матричное исчисление
Программа АЛО. Подпрограмма MTXMSC умножает матрицу А размера m х п
на скалярный множитель
К оманда
вы зо ва : call mtxmsc( a , r , s , m , n )
В ходные парам етры : А— матрица А размера m х п
S —скалярный множитель s
М, N— размерности т , п
В ыходные
парам етры :
R— матрица R — sA размера m х п
SUBROUTINE MTXMSC(A,R,S,M,N)
IMPLICIT DOUBLE PRECISION (A -H ,0-Z)
DIMENSION A(M,N),R(M,N)
DO 20 J=1,N
DO 10 1= 1,M
R ( I ,J )= S * A (I,J )
10
CONTINUE
20 CONTINUE
END
Программа АЛ1. Подпрограмма MTXTRP осуществляет транспонирование ма
трицы А размера m x n
К оманда
вы зо ва :
CALL MTXTRP(A,R,M,N)
В ходные парам етры : А —матрица А размера m x n
H,N —размерности m, n
В ыходные
парам етры :
R — матрица R = Ат размера п х m
SUBROUTINE MTXTRP( A,R,M,N)
IMPLICIT DOUBLE PRECISION (A -H ,0-Z)
DIMENSION A(M,N),R(N,M)
DO 20 J=1,N
DO 10 1= 1,M
R (J , I ) = A ( I , J)
10
CONTINUE
20 CONTINUE
END
Программа A.12. Подпрограмма MTXGSM выделяет подматрицу S размера к х I
из матрицы А размера m x n
К оманда
вы зо ва :
CALL
В ходные
парам етры :
mtxgsm(A , s , m, n , k , l , m i , n i )
А —матрица А размера m x n
M, N , K , L —размерности m , n , k , t
Ml ,N1 — индексы m i. ni матрицы А . для которых A miyU1 = S i д
В ыходные
парам етры :
S — матрица S размера к х £
А .3. Програм м ы для выполнения простейших операций
461
SUBROUTINE MTXGSM(A,S,M,N,K,L,М1,N1)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION A(M,N), S(K,L)
DO 20 1= 1,К
DO 10 J=1,L
S ( I , J)=A (M 1-1+I,N 1-1+J)
10
CONTINUE
20 CONTINUE
END
Программа A.13. Подпрограмма MTXPSM заменяет подматрицу размера к х £ в
матрице А размера ш х п н а подматрицу S такого же размера
К оманда
в ы зо в а : CALL M T X P S M C A ^ M ^ K ^ M ^ N l )
В ходные парам етры : А — матрица А размера m х п
S — матрица S размера к х £
М,N,К,L —размерности ш,п, к, £
M l,N1 —индексы m i , n i матрицы А, для которых А т1}П1 = S^i
В ыходные парам етры : А — матрица А размера т х п, в которую вместо
подматрицы, для которой А тьГМ = В ц ь вставлена подматрица S
SUBROUTINE MTXPSM(A,S,M,N,K,L,M1,N1)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION A(M,N), S(K,L)
DO 20 1=1,К
DO 10 J=l,L
A(M1-1+I,N1-1+J)=S(I,J)
10
CONTINUE
20 CONTINUE
END
Программа A.14. Подпрограмма MTXGCL выделяет i-й вектор-столбец с из ма
трицы А размера т х п
К оманда
вы зо ва :
CALL MTXGCL(A,C,M,N,I)
В ходные парам етры : А— матрица А размера т х п
М, N— размерности m , п
I — индекс %столбца с матрицы А
В ыходные
парам етры :
С — ш-мерный вектор с
SUBROUTINE MTXGCL(А, С, М, N, I)
IMPLICIT DOUBLE PRECISION (A-H,0-Z>
DIMENSION A(M,N), C(M)
DO 10 J=1,M
C (J )= A (J ,I)
10 CONTINUE
END
462
П рилож ение А.
Программа АЛБ.
м ера
Матричное исчисление
П о д п р о г р а м м а MTXPCL з а м е н я е т г-й с т о л б е ц м а т р и ц ы
А
р аз
m х п н а в е к т о р -с т о л б е ц с
К ом анда
В ходные
CALL MTXPCL(A,C,M,N,I)
парам етры : А — м атрица А р азм ер а m х п
в ы зо в а :
С — m -м ер н ы й в е к т о р с
М, N — р а з м е р н о с т и ш , п
I — и н д ек с г с т о л б ц а с м а т р и ц ы
В ы ходны е
А
п ара м етры : А — м атр и ц а
А
р азм ер а
m х гг, г-й
столбец к отор ой
з а м е н е н н а в е к т о р -с т о л б е ц с.
SUBROUTINE MTXPCL( А , С , М, N , I )
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , C(M)
DO 10 J=1, M
A(J,I)=C(J)
10 CONTINUE
END
Программа A. 16.
р азм ер а m х п
К ом анда
П о д п р о г р а м м а MTXGRW в ы д е л я е т г-ю с т р о к у
г
и з м атрицы
А
в ы зо в а : CALL MTXGRW(A, R, M, N, I)
В х одн ы е
парам етры : А — м атр и ц а
M, N — р а з м е р н о с т и m , n
I — и н дек с i строк и г м атр и ц ы А
В ы х о дн ы е
А
р азм ер а
п а р а м е т р ы : R — п -м е р н ы й в е к т о р
m
х
п
г
SUBROUTINE MTXGRW(A, R, M, N, I)
IM PLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , R( N)
DO 10 J = 1 , N
R ( J ) = A ( I »J)
10 CONTINUE
END
Программа АЛ7. П одпрограмма MTXPRW заменяет г-ю строку матрицы А раз
мера m х гг на вектор-строку г
К ом анда
в ы зо в а : c a l l mt x p r w ( A , r , m , n , i )
В х одн ы е
п ара м етры : А — м атр и ц а
R — n -м е р н ы й в е к т о р г
М, N — р а з м е р н о с т и т , п
I — и н дек с г строк и г м атр и ц ы
В ы х о дн ы е
А
тпх п
А
парам етры : А — м атр и ц а
з а м е н е н а н а в е к т о р -с т р о к у г .
р азм ер а
А
р азм ер а
m х гг, г-я
строка которой
А.З
Программы для выполнения простейших операций
463
SUBROUTINE MTXPRW( A, R, M, N, I )
IMPLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION A ( M , N ) , R( N)
DO 10 J = 1 , N
A ( I , J)=R(J)
10 CONTINUE
END
Программа A.18.
П о д п р о г р а м м а MTXCPV к о п и р у е т n -м е р н ы й в е к т о р
К ом анда
в ы зо в а : c a l l m t x c p v ( U , v , n )
В х одн ы е
парам етры :
N — разм ерн ость
В ыходны е
и — n -м е р н ы й в е к т о р и
п
п а р а м е т р ы : V — к о п и я n -м е р н о г о в е к т о р а
и
SUBROUTINE MTXCPV(U, V, N)
IMPLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION U ( N ) , V ( N )
DO 10 1 = 1 , N
V(I)=U(I)
10 CONTINUE
END
Программа A.19.
П о д п р о г р а м м а MTXADV с к л а д ы в а е т д в а n -м е р н ы х в е к т о р а
К ом анда
в ы зо в а : c a l l m t x a d v ( и , v , w , N )
В ходные
п а р а м е т р ы : и , V — n -м е р н ы е в ек т о р ы
N — разм ерн ость
В ы ходны е
u ,v
п
п ара м етры : W
вектор-сумма
w = и 4* v
SUBROUTINE MTXADV(U,V,W,N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION U ( N ) , V ( N ) , W ( N )
DO 10 1 = 1 , N
V(I)=U(I)+V(I)
10 CONTINUE
END
Программа
A .2 0 . П о д п р о г р а м м а MTXSBV в ы ч и с л я е т р а з н о с т ь д в у х n -м е р н ы х
векторов п и
и
К ом анда
в ы зо в а : CALL MTXSBV(U, V, W, N)
Входные
п а р а м е т р ы ; U, V — п -м е р н ы е в е к т о р ы
N —р а зм е р н о с т ь п
u ,v
464
П рилож ение А.
В ыходные
Матричное исчисление
п а р а м е т р ы : W— в е к т о р -р а з н о с т ь
w — u —v
SUBROUTINE MTXSBV(U, V, W, N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION U ( N ) , V ( N ) , W ( N )
DO 10 1 = 1 , N
W(I)=U(I)-V(I)
10 CONTINUE
END
Программа A.21.
П о д п р о г р а м м а MTXDOT в ы ч и с л я е т с к а л я р н о е п р о и зв е д е н и е
д в у х n -м е р н ы х в е к т о р о в
К ом анда
в ы зо в а : c a l l m t x d o t ( и , v , s , n )
В х одн ы е
п а р а м е т р ы : U, V — тг-мерны е в е к т о р ы
N — р азм ер н ость п
В ы х о дн ы е
u ,v
п а р а м е т р ы : S — с к а л я р н о е п р о и зв е д е н и е
s = u v
SUBROUTINE MTXDOT( U, V, S, N)
IMPLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION U ( N ) , V ( N )
S=0.
DO 10 1 = 1 , N
S=S+U(I)*V(I)
10 CONTINUE
END
Программа A.22.
П о д п р о г р а м м а MTXNRV в ы ч и с л я е т е в к л и д о в у н о р м у п -м е р н о -
го век тора
К ом анда
в ы зо в а : CALL MTXNRV ( и , S , N )
В х одн ы е
п а р а м е т р ы : U — п -м е р н ы й в е к т о р
N — р азм ер н ость п
В ыходные
п ара м етры : S — н ор м а
s = у/ и ■и
SUBROUTINE MTXNRV( U, S, N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
CALL MTXDOT( U, U, S, N)
S=
END
SQ RTC A B S(S))
и
А.З
Программы для выполнения простейших операций
465
Программа А .2 3 . П о д п р о г р а м м а MTXMSV у м н о ж а е т n -м е р н ы й в е к т о р н а ск а
лярны й м нож и тель
К о м а н д а в ы з о в а : CALL MTXMSV ( и , V , S , N )
В х о д н ы е п а р а м е т р ы : и — n -м е р н ы й в е к т о р и
N — р азм ер н ость п
S — ск а л я р н ы й м н о ж и т е л ь
s
В ы х о д н ы е п а р а м е т р ы : V — n -м е р н ы й в е к т о р v = s u
SUBROUTINE MTXMSV( U, V, S, N)
IM PLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION U ( N ) , V ( N )
DO 10 1 = 1 , N
V(I)=S*U(I)
10 CONTINUE
END
Программа A .2 4 . П о д п р о г р а м м а MTXZRV с о з д а е т n -м е р н ы й н у л е в о й в е к т о р
К о м а н д а в ы з о в а : CALL MTXZRV ( и , N)
В х о д н ы е п а р а м е т р ы : N — р азм ер н ость п
В ы х о д н ы е п а р а м е т р ы : и — н ул евой вектор и = 0
SUBROUTINE MTXZRV(U,N)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION U( N)
DO 10 1 = 1 , N
U(I)=0.
10 CONTINUE
END
П р о г р а м м а A .25. П о д п р о г р а м м а MTXGSV в ы д е л я е т m -м е р н ы й п о д в е к т о р
n -м е р н о г о в е к т о р а и
К о м а н д а в ы з о в а : CALL MTXGSV ( и ,
v , n , m,
L IS T )
В х о д н ы е п а р а м е т р ы : и — n -м е р н ы й в е к т о р и
N , М— р а з м е р н о с т и п , ш , г д е тп < п
L I S T — в е к т о р и з п э л е м е н т о в , п р и н и м а ю щ и х з н а ч е н и я л и б о 0 , л и б о 1.
Е сл и э л е м е н т L I S T ( I ) р а в е н 1, т о U ( I ) в о й д е т в в ек т о р V.
В ы х о д н ы е п а р а м е т р ы : V — п г-м ер н ы й в ек т о р v
SUBROUTINE MTXGSV(U, V , N , NRED. LIST)
IM PLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION U ( N ) , V ( N R E D ) , L I S T ( N )
IRED=0
v из
466
П рилож ение А.
Матричное исчисление
DO 10 1 = 1 , N
I F ( L I S T ( I ) . EQ. 1 ) THEN
IRED=IRED+1
V(IRED)=U(I)
END IF
10 CONTINUE
END
Программа A .26. Подпрограмма MTXPSV заменяет
тора u на элементы m-мерного вектора v
К о м а н д а в ы з о в а *,
call m t x p s v (и
rn
элементов n-мерного век
, v , n , m, l i s t )
В х о д н ы е п а р а м е т р ы : и — n -м е р н ы й в ек т о р и
v
n, т ,
V — rn-м ер н ы й в е к т о р
N ,М —р а з м е р н о с т и
где m < п
L I S T — в ек т о р , с о с т о я щ и й и з п э л е м е н т о в , п р и н и м а ю щ и х зн а ч е н и я л и б о О,
л и б о 1. Е с л и эл е м е н т L I S T ( I ) р а в е н 1, т о зн а ч е н и е U СI) б у д е т за м е н е н о н а
с о о т в е т с т в у ю щ и й эл е м е н т в е к т о р а V.
В ы х о д н ы е п а р а м е т р ы : и —n-мерный вектор и
SUBROUTINE MTXPSV( U, V, N, NRED, LI ST)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION U ( N ) , V ( N R E D ) , L I S T ( N )
IRED=0
DO 10 1 = 1 , N
I F ( L I S T ( I ) . E Q . l ) THEN
IRED=IRED+1
U(I)=V(IRED)
END IF
10 CONTINUE
END
A.4, Ортогональные преобразования
Согласно определению (А.2.6) отображение n-мерного вектора а в п-мерный
вектор Ь осуществляется путем умножения исходного вектора на некоторую
квадратную матрицу размера п х п, т. е. Ь = Qa. Если длины векторов (А. 1.14)
при этом остаются неизменными, то говорят, что было выполнено ортогональ
ное преобразование. В этом случае b — а или 62 = а2, т. е.
ЬТЬ = ar Qr Qa = а т а,
и, следовательно,
Qr Q = I.
(А.4.1)
Говорят, что квадратная матрица Q, удовлетворяющая соотношению (А.4.1),
является ортогональной.
А.4. Ортогональные преобразования 467
Очевидно, что к ортогональным преобразованиям относятся вращение
и/или отражение исходного вектора а. Далее будут рассмотрены некоторые
конкретные ортогональные преобразования (те, которые играют важную роль
при использовании методов из данного приложения).
А .4 .1 . П р е о б р а з о в а н и е Г и в е н с а
Вращение Гивенса —это преобразование, при котором изменяются лишь две
компоненты преобразуемого вектора, лежащие в плоскости, натянутой на два
ортогональных базисных вектора, Для простоты рассмотрим сначала случай
двумерных векторов.
Любой вектор v можно представить в виде
Поворот на угол —$ приводит к тому, что вектор v переходит в вектор г / = С щ
вторая компонента которого при этом обнуляется (см. рис. А.4а). Очевидно,
что при этом
(А.4.3)
Безусловно, заданное таким образом с помощью вектора v преобразование
можно также применить к любому другому вектору и (см. рис. А.4Ь). В пмерном случае вращение Гивенса задается следующим образом:
так, что vk = 0. При этом компоненты
— vi, I ф к, I ф %остаются без
изменений, a v\ определяется таким образом, чтобы при преобразовании со-
(а)
(Ь)
—
»
Р и с . А . 4 . П рименение
преоб
разования Гивенса (а) к вектору
v , с помощ ью которого задается
это преобразование, и (Ь) к
произвольному вектору и.
U
468
П рилож ение А. М атричное исчисление
хранилась норма этого вектора, т. е. чтобы vf = v. Очевидно, что этого можно
добиться, определив
\
1
С
S
1
G=
(АЛА)
к
—s
1
п.
Однако на практике нет необходимости использовать всю эту матрицу.
Программа А.27. Подпрограмма MTXGVD определяет параметры вращения Ги
венса
К оманда
вы зо ва : call mtxgvd( v i ,V2, c , s )
парам етры : VI, V2 —компоненты вектора, с помощью которого
задается вращение Гивенса
В ыходные парам етры : С, S — константы из формул (А.4.2)
В ходные
SUBROUTINE MTXGVD(V I,V2,С ,S)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
A1=ABS(V1)
A2=ABS(V2)
IF(A1.GT.A2) THEN
W=V2/V1
Q=SQRT(1.+W*W)
C -l./Q
IF(V 1.LT.0.) C=-C
s=c*w
ELSE
IF(V2.NE.O.) THEN
W=V1/V2
Q=SQRT(1.+W*W)
S=l./Q
IF(V2.LT.O.) S=-S
C=S*W
ELSE
C=l.
S=0.
А .4.
Ортогональные преобразования
469
END IF
END IF
END
Программа
A .2 8 . П о д п р о г р а м м а MTXGVA о п р е д е л я е т п а р а м е т р ы п р е о б р а з о в а
ния Г ивенса, а затем осущ еств л я ет п р еобр азов ан и е то го век тора, с пом ощ ью
котор ого оно бы ло за д а н о
К оманда вызова: CALL MTXGVA (VI,V2,C,s)
В ходные параметры: V I , V2 — к о м п о н е н т ы в е к т о р а ,
с пом ощ ью которого
за д а ет ся п р еобр азов ан и е Г и вен са
В ыходные параметры: С, S —константы из формул (А.4.2).
VI ,V2— к о м п о н е н т ы п р е о б р а з о в а н н о г о в ек т о р а ; в ч а с т н о с т и , V2
=
О
SUBROUTINE MTXGVA(V1,V2,C,S)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
A1=ABS(V1)
A2=ABS(V2)
IF(A1.GT.A2) THEN
W=V2/V1
Q=SQRT(1.+W*W)
c=i./q
IF(Vl.LT.O-) C=-C
s=c*w
Vl=Al*q
V2=0.
ELSE
IF(V2. N E . 0. ) THEN
W=V1/V2
Q=SQRT(1.+W*W)
s=i./q
IF(V2.LT.O.) S=-S
c=s*w
V l= A 2*q
V2=0.
ELSE
C=l.
s=o.
END IF
END IF
END
Программа
A . 29. П о д п р о г р а м м а MTXGVT п р и м е н я е т п р е о б р а з о в а н и е Г и в е н с а к
д в у м к о м п о н ен т а м п р о и з в о л ь н о г о в е к т о р а
К оманда
вызова:
call
mtxgvt( z i
,Z2,c ,s )
470
П рилож ение А.
Матричное исчисление
В х о д н ы е п а р а м е т р ы : C ,S —константы, найденные при запуске модулей
MTXGVD и л и MTXGVA
Z1 ,Z2 —компоненты вектора, который нужно преобразовать
В ы х о д н ы е п а р а м е т р ы : Z 1 , Z 2 —компоненты преобразованного вектора
SUBROUTINE MTXGVT(Z1 , Z 2 , С , S)
IMPLICIT DOUBLE PRECI SI ON( А - Н , 0 - Z )
W=Z1*C+Z2*S
Z 2= -Z 1*S + Z 2*C
Z1=W
END
Л .4 .2 . П р е о б р а з о в а н и е Х а у с х о л д е р а
Вращение Гивенса используется для того, чтобы преобразовать исходный век
тор таким образом, чтобы одна из компонент этого вектора обнулилась. Более
общим является преобразование Хаусхолдера. Пусть исходный вектор имеет
вид
/ щ \
V2
(А.4.5)
\vn J
и требуется, чтобы преобразованный вектор имел вид
щ
\
—1
v' = H v =
V P+
1
(А.4.6)
Vi-1
0
О у
Другими словами, нужно, чтобы компоненты vfe, г ^ 1? . . v(n этого вектора
были равны нулю, а оставшиеся компоненты (за исключением vp) остались без
изменений. При этом компонента vfp должна измениться таким образом, чтобы
v = vf. По теореме Пифагора для пространства размерности п —£ 4- 1
п
/2
vр
А.4. Ортогональные преобразования 471
или
v = -a v H = -a
\
(A .4.7)
v$ + Y , vh
i=i
где a — ±1. Пусть
a = signup).
(A .4.8)
Построим теперь матрицу if, удовлетворяющую соотношению (А.4.6), Для
этого представим вектор v в виде суммы двух векторов
f
(
0
Vh =
\
0
V p - l
v p
0
0
V = V H + V H ±,
V l
^
VP +
»
!
^ Я -L =
1
0
Vt-1
V i
0
Vn
0
/
(А.4.9)
;
/
Здесь вектор v # принадлежит подпространству, натянутому на базисные век
торы ер, ее, e^+i, . . еп, а вектор
лежит в подпространстве, ортогональ
ном этому подпространству. Теперь построим вектор
u
(А.4.10)
- v h + crvHep
и матрицу
Н = 1П~
71
2u u 1
О
U1
(А.4.11)
*
Если теперь представить произвольный вектор а в виде суммы вектора, па
раллельного и, и вектора, перпендикулярного ему, т. е.
ft —ftii И- ftx?
где
UTl,т
XL
ft|l = ----- г - ft = “ 2 ( l l * ft) = U ( U - ft),
U*
то мы получим, что
U*
ci|| —H ft|| — “ ft и,
ft_L = ft — ftjl,
ftj_ —Я а х —
- ft i ■
Таким образом, мы видим, что это преобразование есть не что иное, как от
ражение в подпространстве, ортогональном вектору и (см. рис. А.5). Можно
472
П рилож ение А. М атричное
исчисление
Р и с . А . 5 . В ектор v при пре
образовании Х аусхолдер а с
условием v'2 = 0 переш ел в
вектор v f. Э то преобразование эквивалентно отраж ени ю
в подпространстве U, орто
гональном вспомогательному
вектору и.
\
\
\
4и
легко проверить, что матрица Н действительно задает искомое преобразова
ние вида (А.4.6).
При этом преобразовании вектор и определяется однозначно. Из формулы
(А.4.10) получаем, что компоненты этого вектора равны ир = Vp + avu, Щ = V£,
щ +1 = ^ + i, . . ип = vn и щ = 0 для всех остальных г. Если же задать вектор
v и индексы р и то нужно будет вычислить только компоненту ир. В этом
случаи величина гг2, необходимая для вычисления выражения (А.4.11), будет
равна
и2 =
и 1 + '5 2 и ! =
i—l
п
(VP+ <™я)2 +
i~t
= VP + ^ 2 Vi + У н + 2<TVffVp
г=£
—2v2H + 2<TVfjVp = 2г;# (г;# + crvp) = 2Vfjup.
Таким образом, выражение (А.4.11) можно будет переписать в виде
# = /п -6гш т ,
Ь = (у н и р)~1.
(А.4.12)
Программа А . 30. П о д п р о г р а м м а MTXHSD о п р е д е л я е т п а р а м е т р ы п р е о б р а з о в а
ния Х аусхол дер а
К оманда
вызова: CALL MTX HS D ( V , UP , B , N, L P , L)
Входные параметры: V—n-мерный вектор v
N, LP, L—индексы гг, р, £ этого вектора
А .4.
В ыходные
Ортогональные преобразования
473
параметры : UP —компонента ир вектора и
В —коэффициент
b
SUBROUTINE MTXHSD( V , U P , В , N , L P , L)
IM PLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION V( N)
C=ABS(V(LP))
DO 10 I = L , N
C= MAX( ABS ( V( I ) ) , C)
10 CONTINUE
I F ( C . L E . O . D O ) GO TO 3 0
Cl=l./C
SD=(V(LP)*C1)**2
DO 2 0 I = L , N
SD=SD+(V(I)*C1)**2
2 0 CONTINUE
VPPRIM=SD
VPPRIM=C*SQRT(ABS(VPPRIM))
I F ( V ( L P ) . GT. 0 . DO) VPPRIM=-VPPRIM
UP=V(LP)-VPPRIM
B = 1 . / ( VP P R I M* U P )
3 0 CONTINUE
END
При этом для нахождения преобразованного вектора
с' = Н с
не требуется находить матрицу Н в явном виде. Для этого достаточно найти
вектор и и константу Ъ. Однако поскольку вектор и отличается от вектора v
значением только одной компоненты ир (а также соответствующими нулевыми
компонентами), то достаточно, зная вектор и, вычислить значения величин ир
и 6, а затем при осуществлении преобразования добавить остальные компонен
ты V£, г^+i, . . vn. Они в то же время равны соответствующим компонентам
вектора и.
П рограмма А .31. П о д п р о г р а м м а MTXHST о с у щ е с т в л я е т п р е о б р а з о в а н и е Х а у с х о л д ер а д л я за д а н н о го в ек тор а
К оманда вызова: c a l l m t x h s t ( v , u p 3b , c , n , l p , l )
Входные параметры: V , N , L P , L — T e ж е , ч т о и в п р о г р а м м е
MTXHSD
U P , В — н у ж н о о п р е д е л и т ь , з а п у с т и в м о д у л ь MTXHSD
С — n -м ер н ы й в е к т о р , к о т о р ы й н у ж н о п р е о б р а з о в а т ь
Вы ходной
ПАРАМЕТР:
С—
преобразованный n-мерный вектор
SUBROUTINE MTXHST( V , U P , В , С , N , L P , L)
474 Приложение А. Матричное исчисление
IMPLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION V ( N ) , C ( N )
DUP=UP
S=C (LP)*D U P
DO 10 I = L , N
S=S+C(I)*V(I)
10 CONTINUE
S=S*B
C (L P )= C (L P )+ S *D U P
DO 2 0 I = L , N
C(I)=C(I)+S*V(I)
2 0 CONTINUE
END
A .4 .3 . П е р е м е н а зн а к а
Если диагональный элемент 1ц единичной матрицы заменить на —1, то мы
получим симметричную ортогональную матрицу
1
RW =
-1
\
1 /
Преобразуем с ее помощью вектор а, т. е. найдем
a' = R (i)a.
Это преобразование приводит к перемене знака у компоненты а* и сохраняет
все остальные компоненты неизменными. Очевидно, что матрица R ^ является
матрицей Хаусхолдера, которая задает отражение в подпространстве, ортого
нальном базисному вектору е*. Это можно увидеть напрямую, путем подста
новки u = ei в соотношение (А.4.11).
А .4 .4 . П р е о б р а з о в а н и е п е р е с т а н о в к и
Единичную матрицу (АЛЛО) размера п х п легко можно представить в виде
набора базисных векторов (А.2.3), образующих квадратную матрицу
/ 1 0 ...
0 1
о \
о
Vо о
1 У
Аг — (^1 ?^21*• *1&п) —
...
А . 5.
Определители
475
Очевидно, что эта матрица является ортогональной. Ортогональное преобра
зование 1а = а оставляет вектор а без изменений. Если теперь мы поменяем
местами два базисных вектора е* и е ь то получим симметричную ортогональ
ную матрицу Р гк. В качестве примера покажем это для случая п = 4, i — 2,
к = 4:
0
0 0
0 0
0 1
( 1
0
0
1
0
0 ^
1
0
0 )
Преобразование а' = Р ^ а приводит к перестановке элементов щ и а ^ , Все
остальные элементы остаются без изменений:
«1 \
«1 \
■
йк
\
а>%
\
,
a' = P i-ik)a =
/
\
/
Умножение матрицы А размера n х m слева на матрицу р (гк) равносильно
перестановке г-й и к-й строк в матрице А Умножение матрицы А размеров
ттг х п справа на эту матрицу приводит к перестановке г-ro и к-то столбцов.
Если D — диагональная матрица размера п х п, то элементы Du и Dkk можно
переставить между собой посредством следующего преобразования:
p)f _ р(Щ £) p{ik)
А.5. Определители
Любой матрице А размера n х п можно поставить в соответствие некоторое
число—ее определитель (детерминант) d e t A Определитель, так же как и
соответствующая ему матрица, записывается в виде набора элементов, обра
зующих квадрат. Однако в этом случае эти элементы с двух сторон ограничи
ваются вертикальными линиями. Определители второго и третьего порядков
определяются соответственно следующим образом:
detA =
detA =
А
ц
А
2 1
Ац
А
А
2 1
3 1
Ai2
А
~ А ц А22 - A A
А
A
^■32
A
A
A
1 2
(A.5.1)
2 1
2 2
1 2
2 2
1 3
2 3
3 3
=
+
+
A A A
A A A
A A A
1 1
2 2
3 3
1 2
2 3
3 1
1 3
2
3 2
1
— A A A
“ A A A
— Ai3A22^31
1
1
2 3
3 2
2
2
3 3
1
(A.5.2)
476
П рилож ение А.
Матричное исчисление
что можно переписать в виде
-^■1 1 ( ^ 22-^33 — 4234 з2)
det А = — ^ 12 (^421-^33 — 4гз 4з1)
+
4 .1 3 ( 4 .2 1 4 .3 2
— 4г24з1).
(А.5.3)
В общем случае определитель n-го порядка записывается следующим образом:
4ц
421
det 4 =
4i2
422
4 in
• ■• 4 2п
4 П1 4 п2
(А.54)
Ann
Алгебраическим дополнением A\j элемента A tj некоторой матрицы 4 на
зывается умноженный на (—1)г+:? определитель (гг — 1)-го порядка матрицы,
полученной путем удаления г-й строки и j -го столбца исходной матрицы, г. е.
4 =
4ц
421
4,12
422
■■• Al,j-1
• • ■ A 2, j - J
A 2 , j +1
4г-1,1
4г-НД
4»-1,2
4*-1-1,2
■• ■ -Аг_1.J-1
• • • A i + i,j_i
A i - 1 ,3+1
A i+ i,j+ i
...
4 П1
4 п2
A n,j+ 1
■■■ A nn
A n ,j—1
Ai.j+i
■• ■ 4 ln
*■• 4 2n
4 i_ i,n
4 i+ ijn
Определители более высокого порядка можно представить в виде суммы
всех элементов некоторой строки или некоторого столбца, умноженных на со
ответствующие алгебраические дополнения, т. е.
п
det А —
AikA\k —
k=z1
AkjA^j.
(А.5 .6 )
fc=l
Можно легко показать, что результат в предыдущей формуле не зависит от
выбора строки с номером i или столбца с номером j. Формула (А.5.3) пока
зывает, что соотношение (А.5.6) справедливо при п = 3. Определитель произ
вольного порядка можно вычислить путем разложения его на сумму алгебра
ических дополнений, домноженных на соответствующие значения. К примеру
это разложение можно продолжать до тех пор, пока не будет достигнут по
рядок два. Определитель вырожденной матрицы, т. е. квадратной матрицы,
строки и столбцы которой линейной зависимы, равен нулю.
уравнения. Метод наименьших квадратов
А .6. М атричны е
477
На основе матрицы А можно построить новую матрицу, в которой все эле
менты ij будут заменены на соответствующие алгебраические дополнения ji.
Таким образом мы получим присоединенную матрицу для матрицы А , т. е.
аAt12
а 21
At
^22
Л 1 тг
^ 2п
л и
At =
At
■*
‘'
'
А1
^Af
п2
Л п1
(А.5.7)
At
^пп
Определители обладают следующими свойствами:
det А = det Ат ,
det А В = det A det В.
(А.5.8)
(А.5.9)
Для ортогональной матрицы Q справедливо соотношение Q QT = I, поэтому
det 1 = 1 = det Q det Q
и отсюда
det Q = ±1.
(A.5.10)
A.6. Матричные уравнения. Метод наименьших
квадратов
В общем случае система т линейных уравнений с п неизвестными ari, Х2 , ..
х п имеет вид
а ц х 1 4- а\2х 2 Ч------1- ainXn — bi = О,
a2\Xi 4- а22х 2 Ч------1- а2пх п ~ Ь2 —О,
(А.6.1)
®m l X l Ч- ®т 2 Х 2 Ч~ ' * * 4“ О ' т т г Х п
^тп — О
или в матричной записи
А х —6 = 0.
(А.6.2)
В процессе отыскания решения х этого матричного уравнения следует обра
щать внимание на то, к какому типу (в зависимости от комбинации значений
параметров т , п и k = Rank(A)) можно отнести данное матричное уравнение.
Вектор А х лежит в пространстве столбцов матрицы А , имеющем размер
ность к. Поскольку b является m-мерным вектором, то, вообще говоря, данное
матричное уравнение может иметь решение только в том случае, когда к — т ,
т. е. когда к = п = m или когда к = га < п, так как к < min(m,n). При
к = п — m система состоит из п независимых уравнений вида (А.6.1) с п неиз
вестными. Эта система имеет единственное решение. Если к — т < п, то су
ществует бесконечное множество п-мерных векторов ж, которые посредством
478
П рилож ение А.
Матричное исчисление
преобразования А х можно отобразить в т-мерный вектор b таким образом,
чтобы было выполнено соотношение (А.6.2). Такая система уравнений являет
ся недоопределенной. В этом случае решение не единственно.
При к = Rank(A) ф т , вообще говоря, у матричного уравнения (А.6.2)
не существует решения. В этом случае вместо решения мы будем искать та
кой вектор ж, при котором левая часть соотношения (А.6.2) будет вектором с
минимальной евклидовой нормой. Это означает, что мы заменяем уравнение
(А.6.2) на
г2 = (А х - Ь)2 = min,
(А.6.3)
т. е. теперь мы ищем вектор ж, при котором результат отображения А х наи
менее отличается от вектора Ь.
Для заданного m-мерного вектора с только при к — Rank (А) = п суще
ствует единственный п-мерный вектор х такой, что А х = с. Поэтому толь
ко в случае к = п существует единственное решение ж. Таким образом, при
Rank(A) = п и m > п существует единственное решение ж матричного урав
нения (А.б.З). При п = т мы получили ранее, что г = 0.
Соотношение (А.б.З) часто также записывают просто в виде
А х - b ад 0
(А.б.4)
или даже (не совсем корректно) в виде (А.б.2). Вектор решения ж называется
решением матричного уравнения (А.6.4), полученным по методу наименьших
квадратов. В табл. А.1 мы еще раз перечислим все эти типы задач, возникаю
щих при различных комбинациях значений параметров т , п и к .
Т а б л и ц а А Л . В и д реш ения м атричного уравнения (А.б.З) дл я различ
ны х типов задач; га — количество строк, п — количество столбцов, а к —
ранг матрицы А.
Т и п задачи
1а
lb
2а
2Ь
За
ЗЬ
т —п
га > п
т <п
R an k (A )
О статок
к= п
к<п
к= п
к<п
к = га
к < га
г=0
г > 0
г> 0
г>0
г =0
г>0
Реш ение единственно?
да
нет
да
нет
нет
нет
Теперь сформулируем более формально те утверждения относительно вида
решения матричного уравнения (А.6.4), которые были сделаны нами в этом
разделе.
Теорема (об ортогональном разложении матрицы). Любую матрицу А разме
ра ш х п и ранга к можно представить в виде
A = HRKr.
(А.6.5)
А.б. Матричные уравнения. Метод наименьших квадратов
479
где Н — ортогональная матрица размера т х т , К — ортогональная матрица
размера п х п, a R — матрица размера т х п вида
Ru
О
R -
О
О
(А.6.6)
Здесь R n является матрицей размера к х к и ранга к.
Подставляя выражение (А.6.5) в уравнение (А.6.4) и умножая полученное
выражение слева, на Н Т , получаем, что
R К т х « Я т Ь.
(А.6.7)
Определим
Н тЬ = д =
91 А }к
92 ) } т - к
(А.6.8)
К тх = р =
Pi ^
}к
р2 )
}п-к,
(А.6.9)
и
таким образом, чтобы уравнение (А.6.7) приняло вид
Rp & д.
(А.6.10)
С учетом соотношения (А.б.6) это уравнение распадается на два независимых
уравнения:
R u Pi = 9 i
(А.6.11)
и
(А.6.12)
Если m = к и/или п = к, то в соотношении (А.6.8) и/или соотношении (А.6.9)
отсутствуют соответствующие нижние подвекторы, а в выражении (А.6.6) —
соответствующие нижние подматрицы. Поскольку в соотношении (А.6.11) Дц
является матрицей размера к х к ранга к. а векторы p i и д \ имеют размерность
к, то существует некоторый вектор р г, для которого выполнено это равенство.
В силу того что в левой части соотношения (А.6.12) присутствует нулевая
матрица, мы не можем извлечь из этого выражения никакой информации от
носительно вектора р 2 Теорема (о виде решения матричного уравнения А х
Ь). Если вектор р }
является единственным, решением уравнения (А.6.11), то справедливо следу
ющее утверждение:
(i) Все решения уравнения (А .6,3) имеют вид
х =К
Pi
Р2
(А.6.13)
480
П рилож ение А,
Матричное исчисление
Здесь р 2 —произвольный (п —к ) -мерный вектор, т. е. при к = п решение
единственно. Однако необходимо помнить, что при этом всегда суще
ствует единственное решение с минимальным абсолютным значением:
X=к ( Ъ ).
(А.6.14)
(ii) Все решения х имеют один и тот же вектор остатков
г = Ъ - Ах = Н ( ®
^ ,
(А.6.15)
абсолютное значение которого равно г = д2 = |# 2 |- Остаток обнуляется
при к = т.
Задачу А х и b всегда следует решать с помощью метода ортогонального
разложения, а еще лучш е--с помощью метода сингулярного разложения и
анализа сингулярных значений, описанных в разд. А. 13 и А.14. Что касается
точности, то получаемые с помощью этих методов результаты не менее точны,
чем результаты, найденные другими методами, а зачастую —даже более точны
(см. разд. А.14, пример А.4).
Тем не менее вдобавок мы все же кратко опишем метод нормальных урав
нений. Этот метод проще для понимания, нежели метод ортогонального раз
ложения, и поэтому он чаще излагается в различных учебных пособиях.
Рассмотрим величину (А.б.З), являющуюся квадратом вектора остатков:
г2 = (Ах — Ь)Т (Ах — Ь) = х ТА ТА х — 2bTА х + bTb
m
=
п
п
ЕЕЕ
i—1 j = l t—\
A%j AiiXj Xg
m
п
2^
^
i~ 1 j —\
m
biAijXj + ^
Щ.
г=1
Условие r 2 = min означает, что
m
n
m
dr2
—2 ^ ^ ^ AifcAigxg 2 ^ ^ b%A<ik —0,
к — 1, . . . , n.
dxk
2=1 £—1
2=1
Эти n линейных уравнений называются нормальными уравнениями. Их можно
представить в виде матрицы
А тА х = А Т Ь.
(А.6.16)
Это система из п уравнений с п неизвестными. Если эти уравнения линейно
независимы, то матрица (Ат А) размера п х п является матрицей полного ранга
(ее ранг равен п), т. е. она невырождена. Согласно разд. А.7 в этом случае не
существует такой обратной матрицы (АТА)” 1, для которой выполнено соотно
шение (АТА)~1(АТА) = I. Поэтому искомое решение матричного уравнения
(А.б.З) равно
* = (АТА )-1АТЬ.
(А.6.17)
Несмотря на свою простоту, эта формула бесполезна в случае, когда матрица
АТА вырождена или близка к вырожденной (см. пример А.4 в разд. А. 14).
А.7. Обратная матрица 481
А.7. Обратная матрица
У каждой невырожденной матрицы А размера п х п существует обратная
матрица Л” 1, которая определяется из соотношений
Л Л " 1 = / п = Л” 1 Л.
(А.7.1)
Она также является матрицей размера п х п.
Если матрица А ~1 известна, то решение матричного уравнения
Ах = Ь
(А.7.2)
х —А ~гЬ.
(А.7.3)
просто имеет вид
Как будет показано ниже, обратная матрица Л” 1 существует только у невы
рожденных квадратных матриц, поэтому по формуле (А.7.3) можно найти ре
шение только для случая 1а из таблицы А.1.
Для того чтобы найти матрицу Л-1 , положим Л-1 = X и обозначим
векторы-столбцы матрицы X за х±, ж2, *. х п. Тогда уравнение (А.7.1) можно
представить в виде системы п уравнений:
A xi - е*,
г = 1, 2, . . . , п.
(А.7.4)
Векторы, стоящие в правых частях этих уравнений, являются базисными век
торами вида (А.2.3). В случае п = 2 систему уравнений (А.7.4) можно записать
различными способами, которые эквивалентны между собой, например так:
Лц
Л12
Л 22
Л21
Л 12
Л 22
Лц
Л21
(А.7.5)
или так:
Ли
Л12 А ( Х п
Х 12
Л21
Л22 / V Х 2 1
Х 22
1 О
О 1
или в виде системы четырех уравнений с четырьмя неизвестными:
4 - Л12-У21 = Т
Л21-Х11 + Л 22 Х 21 = О,
А
ц
Х
ц
А \ \ Х \2
+ Л 12 Х 22 = О,
Л21-Х12 4 - Л 22 Х 22 — 1 .
(А.7.6)
482
П рилож ение А.
Матричное исчисление
Методом исключения неизвестных и подстановки легко можно найти решение
этой системы
А 22
Хц =
Ли А22 —A i 2A2i
■Ai 2
*1 2 =
А п А22 —А12 А21
A2i
X 21 =
А п А22 —Ai 2A2i
Ли
*2 2 =
А ц А22 —A12A2i
(А.7.7)
Это решение можно записать в матричной форме:
X = А -1 = - А - (
detA V
j 22
А-21
j 12
Ац
(А.7.8)
Матрица, стоящая в правой части этого выражения, является присоединенной
матрицей исходной матрицы, т. е.
At
(А.7.9)
det А'
Можно показать, что это соотношение справедливо для квадратных матриц
произвольного порядка. Если взглянуть на формулу (А.7.9), то становится оче
видным, что для вырожденной матрицы (т. е. матрицы с нулевым определи
телем) обратной матрицы не существует.
На практике обратную матрицу обычно вычисляют не с помощью соотно
шения (А.7.9), а, как и в нашем примере для матрицы размера 2x2, путем при
менения метода исключения неизвестных и подстановки для системы (А.7.4).
Эта система состоит из совокупности, содержащей п систем уравнений вида
А "1
А х = Ъ.
(А.7.10)
Все эти системы состоят из п уравнений с п неизвестными. Здесь А —это невы
рожденная матрица размера п х п. Сначала мы приведем алгоритм решения
этого матричного уравнения для квадратной невырожденной матрицы А, а
позднее устраним это ограничение и сформулируем метод решения для всех
видов матриц.
А.8. Метод исключения Гаусса
Запишем уравнение (А.7.10) для матрицы А размера п х п в покомпонентной
форме
АцХх
4- А
А21Х1
+ А
12 Х 2 4- * * * 4- A i nx n = 61 ,
2 2 % 2 4 - • * * 4 - A 2n^ n — &2 7
(А.8.1)
A nixi 4- А п2Х2 Н---- 4 Апп%п —
А.8. Метод исключения Гаусса 483
а затем решим эту систему методом исключения Гаусса. Для этого определим
п — 1 величин
гпц =
г —2 ,3 ,..., гг,
(А.8,2)
умножим первое уравнение на m 21 и вычтем его из второго. Затем умножим
первое уравнение на mzi и вычтем его из третьего и т. д. В результате мы
получим систему уравнений
+ ^ 12 ^ 2 + • ■■+
-4-22^2 + ' *’ + ^ 2 п Хп ~ &2 \
А $ х2 +
(А.8.3)
А{У х п = Ь(У .
■ •• +
где неизвестная величина х\ осталась только в первом уравнении. Здесь коэф
фициенты
b[2) вычисляются по формулам
A?j
=
АУ -тп,п А[1
у
&i2) = Ь{Р - тцЪ(А.
Затем вся эта процедура вновь повторяется для последнего (п —1)-го уравне
ния. В этом случае коэффициенты определяются следующим образом:
Л (2)
ТО’2 =
i = 3,4
Затем второе уравнение системы (А.8.3) умножается на соответствующий мно
житель rrii2 и вычитается из третьего, четвертого, ..., n-го уравнения систе
мы, соответственно. На fc-м шаге эта процедура выглядит следующим образом.
Множители равны
АЮ
т ц с = —щ ,
i — k + l , k + 2, . . . , n,
Акк
на их основании вычисляются значения коэффициентов
(,(№) _ j | 4
(А.8.4)
(А.8.5)
После выполнения (п ~ 1)-й итерации мы получим треугольную систему урав
нений вида
Л п ) а :1 +
А
$
х
2 +
А 2 2 Х 2
+
--
■ +
••■ +
д ( 1) г
А
(£
n nn
х
п
=
4 4
=
4 2 ).
=
61n ) .
(А.8.6)
484 Приложение А. Матричное исчисление
Последнее уравнение содержит всего одно неизвестное —х п. Путем подста
новки в остальные уравнения выражения для х пу найденного из этого уравне
ния, можно получить выражение для i n_i и т.д. В результате мы получим все
Xi = ~А& Г*° ~ ^
А ц
I
e=i
+1
А **Хе I ’
г=
J
(А.8.7)
Необходимо отметить, что преобразования, осуществляемые над элементами
матрицы А, никоим образом не зависят от значения компонент правой части
системы —вектора Ь. Поэтому таким методом можно одновременно решать не
сколько систем уравнений. Другими словами, вместо системы А х — 6 можно
решать систему более общего вида
А Х — В,
(А .8.8)
где В и X — матрицы размера п х т , при этом X — матрица неизвестных.
Пример АЛ. Обращение матрицы размера 3 x 3 . В качестве численного при
мера давайте рассмотрим задачу обращения матрицы размера 3 х 3, т. е. си
стему, в которой В = I. Промежуточные вычисления для примера
1 2
3 \
2 1 -2 \ Х = 1
1 1
2
приведены в табл. А.2. В результате получаем, что обратная матрица равна
1
1
-1
7
1
00
-4
6
-1
3
Выполняя последовательно все промежуточные вычисления, можно заме
тить, что деление приходится выполнять всего лишь в двух местах, а именно
при нахождении значений выражений (А.8.4) и (А.8.7). В обоих случаях зна
менатель дроби равен коэффициенту
г = 1 , 2,
коэффициенту, стоящему в верхнем левом углу матрицы этой системы, так на
зываемому главному элементу (г —1)-го шага метода исключения. Этот метод
не работает, если данный коэффициент равен нулю. В этом случае можно про
сто переставить местами г-ю строку матрицы нашей системы с одной из строк,
располагающихся ниже. При этом первый коэффициент этой строки должен
быть ненулевым. Очевидно, что вследствие перестановки местами двух уравне
ний сама система уравнений не изменится. Однако наш метод не даст резуль
татов в случае, если такой строки не найдется и все коэффициенты в данном
столбце будут нулевыми. В этом случае матрица А будет вырожденной и реше
ния не будет. На практике (по меньшей мере при использовании компьютеров,
А .8. М етод
исключения Гаусса,
485
Т а б л и ц а А . 2 . Реш ение задачи и з прим ера А.1 м етодом исклю чения Гаусса.
И склю чение неизвестны х
Ш аг
т
М атрица
А
1
2
1
3
-2
2
2
1
1
-3
-1
Ш аг №1
Ш аг
М атрица
1
0
0
-8
-1
-2
-1
5
3
1
3
№
В
М нож итель
0
1
0
0
0
1
—
1
0
0
1
__
1
1
—
3
2
1
1
3
П одстановка
3=i
1
23
з
22
j
-§ (-2 -8 * 1 ) = !
21
j
1 — 2 x | + 3 x | = —|
5
3= 2
1
23j
22
j
21
j
5
3VA
s)
5
-2 * § + 3*§ = §
J = 3
23
j
3
5
22
j
—§( 0 + 8 x §) = —|
21 j
2 x f —3 x | = |
когда дополнительные действия не трудно осуществить) всегда предпочтитель
но переставлять строки местами таким образом, чтобы главным элементом был
коэффициент с максимальным абсолютным значением среди всех элементов
первого столбца приведенной системы. Тогда знаменатель всегда будет иметь
максимально возможное значение. Таким образом можно максимально умень
шить ошибки округления. В основу следующей программы положен описанный
выше метод исключения Гаусса с выбором главного элемента.
486
П рилож ение А.
Матричное исчисление
Программа А.32. Подпрограмма MTXEQU для решения полностью определен
ного матричного уравнения А X = В методом исключения Гаусса с выбором
главного элемента
К оманда
Входные
вызова: CALL MTXEQU(A,B,N,M)
параметры : А—невырожденная матрица А размера п х п
В—матрица размера п х ттг. стоящая в правой части уравнения А Х — В
N, М—параметры п и т
Выходной ПАРАМЕТР: В —матрица решения X размера п х тп
К омментарии: Заданная в начале матрица А в процессе работы программы
изменяется. При этом не осуществляется проверка, является ли матрица
А вырожденной или почти вырожденной.
10
20
30
40
50
60
SUBROUTINE MTXEQU(A,B,N,M)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION A(N,N),B(N,M)
DO 70 K=1,N-1
AMAX=0.
KK=K
DO 10 L=K,N
IF(ABS(AMAX). LT. ABS(A(L, K))) THEN
AMAX=A(L,K)
KK=L
END IF
CONTINUE
IF(KK.NE.K) THEN
DO 20 J=K,N
SAVE=A(K,J)
A(K,J)=A(KK,J)
A(KK,J)=SAVE
CONTINUE
DO 30 1=1,M
SAVE=B(K,I)
B(K,I)=B(KK,I)
B(KK,I)=SAVE
CONTINUE
END IF
DO 60 I=K+1,N
DO 40 J=K+1,N
A (I, J)=A (I,J)-A (K ,J)*A (I,K )/A (K ,K )
CONTINUE
DO 50 J=1,M
B (I,J)= B (I,J)-B (K ,J)*A (I,K )/A (K ,K )
CONTINUE
CONTINUE
А .9.
LR-разложение
487
70 CONTINUE
DO 100 J=1,M
B(N,J)=B(N,J)/A(N,N)
IF(N.GT.l) THEN
DO 90 11=1,N-l
l= N -li
DO 80 L=I+1,N
B (I,J)= B (I,J)-A (I,L )* B (L ,J)
80
CONTINUE
B ( I ,J ) = B ( I ,J ) /A ( I ,I )
90
CONTINUE
END IF
100 CONTINUE
END
A.9. LR-разложение
В процессе преобразований методом исключения Гаусса [см. (А.8.6)] получаем,
что стоящие выше главной диагонали элементы
удовлетворяют соотношению
(А.9.1)
а стоящие ниже главной диагонали —соотношению
(А.9.2)
Поэтому преобразование (А.8.5) нужно выполнять только для к = 1 ,2 ,... , т\
где г = min(z — 1, j)
(А.9.3)
Суммирование по к дает
г
г
г
£ 4 +,) - £ 4 ‘>- 4 Г+11 Следовательно, элементы
в виде
= Aij исходной матрицы А можно записать
(А.9.4)
Учитывая то, что множители
положить элементы
тпц
были определены только для i > к, можно
= 1,
г = 1 ,2 ,... ,п,
и объединить два соотношения из формулы (А.9.4) в одно
р
Р = miп(г, j).
к=1
488
П рилож ение А.
Матричное исчисление
Непосредственно из этого уравнения видно, что матрицу А можно представить
в виде произведения двух матриц L и й , где L —нижнетреугольная, а й верхнетреугольная матрица:
L=
A = LR,
( шц
m<21 Ш22
\
TTlii — 1,
\ mni
/ Г11
Д=
(А.9.5)
?Tin2
Г12
^22
.
•
m nn /
гщ \\
Г2п
fn n
/
/ Aл ^п
Aл ^12
(2)
л 22
V
лл 1п
(1) \'
Л (2)
л (")
Л ПП
/
.
Таким образом исходная система уравнений (А.7.10)
А х —L Дж —b
будет эквивалентна двум системам уравнений с треугольными матрицами
L y -b ,
R x -y .
Элементы матриц L и Й можно вычислить напрямую по формулам (А.9.5),
не пользуясь при этом соотношениями из разд. А.8. В результате мы полу
чим, что
Tkj = Afcj -
m u r tj,
j = к, к + 1, . . . , n
mik = {Aik ~ Y^eZl m erekj /п * ,
г = к + 1, . . . , n
к ~ 1 ,... ,n,
(А.9.6)
т. e. при A; = 1 вычисляется первая строка матрицы R (она эквивалентна пер
вой строке матрицы А) и первый столбец матрицы L; при к — 2 вычисляется
вторая строка матрицы R и второй столбец матрицы L. В процессе работы ком
пьютерной программы, в которой реализован этот алгоритм, элементы, образу
ющие матрицы R и L, можно сохранять на месте соответствующих элементов
исходной матрицы А (элементов с теми же индексами). Это можно сделать,
поскольку при вычислении элемента Vkj требуется знать только элемент Ащ и
вычисленные ранее по формуле (А.9.6) элементы матриц R и L. Аналогичные
рассуждения можно провести относительно вычисления множителей т**.
Алгоритм (А.9.6) называется LR-разложением Дулитла. Очевидно, что
если добавить к нему выбор главного элемента, то он будет эквивалентен ме
тоду исключения Гаусса.
АЛО. Разложение Холецкого 489
А.10. Разложение Холецкого
Если А — действительнозначная симметричная положительно определенная
матрица (см. разд. А. 12), то ее можно представить в виде произведения
A = UT U,
(А. 10.1)
причем такое разложение единственно. Здесь £7 —действительнозначная верх
нетреугольная матрица с положительными элементами на главной диагонали.
Для того чтобы можно было построить разложение вида (А. 10.1), матрица
А размера п х п должна обладать рядом свойств. В частности, такое разло
жение существует в случае, когда эта матрица равна произведению некоторой
действительнозначной матрицы В размера п х т п (матрицы полного ранга, у ко
торой m > п) и соответствующей транспонированной матрицы В т , А = В В т .
Для нахождения матрицы U мы сначала построим LR-разложение, найдем
диагональную матрицу jD, диагональные элементы которой равны диагональ
ным элементам матрицы R ,
(A.10.2)
D = diag(ru, r 22,
и определим две матрицы
D ~l = diag(r1“11, r 2-2\ . . . , r~^)
(A.10.3)
D ~ 1/2 = diag(7-1“11/2, r221/2, ■• •, г~У 2).
(A.10.4)
Тогда можно записать
A = L R = L D D - 1R = L D R ' ,
R' = D _1 R.
(A.10.5)
В силу симметрии (которая имеется по предположению), получаем, что
А = А т = (R')T D L 1.
(А.10.6)
Сравнив это выражение с соотношением (А.10.5), приходим к выводу, что
Ьт =
т. е. что
L = RT D ~ \
В результате равенство (А.10.1) будет иметь место при
U = D ~ l/2R = D 1/2Lt .
(А.10.7)
Соотношение (А. 10.7) означает, что элементы иц матрицы U равны
-
uij
=
гн
1/2
1/2
Пз = Ы
т л-
Поэтому г и т в соотношении (А.9.6) можно заменить на и. В результате мы
получим следующий алгоритм построения разложения Холецкого для действи
тельнозначной положительно определенной симметричной матрицы А:
jt-i
n 1/ 2
A kk ~ 5^=1 U\kJ
f
A kj ~
X j= l
ui kU ij ) /Ukk
,
j
=
k+
1, . . . ,
П
490
Приложение А, Матричное исчисление
Поскольку для таких матриц все диагональные элементы отличны от нуля,
то выбор главного элемента для них осуществлять не нужно. Можно было
бы также показать, что выбор главного элемента не приводит к повышению
точности полученных результатов.
Программа А.ЗЗ. Подпрограмма MTXCHL осуществляет построение разложения
Холецкого для симметричной положительно определенной квадратной матри
цы
К оманда
вы зо ва :
CALL MTXCHL(А, и, N)
В ходные парам етры : А—матрица А размера п х п
N—размерность матрицы А
ВЫХОДНОЙ ПАРАМЕТР: U—верхнетреугольная матрица U размера п х п
такая, что [7Т U = А
SUBROUTINE MTXCHL(A,U,N)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
DIMENSION A(N,N),U(N,N)
CALL MTXZER(U,N,N)
DO 30 K=1,N
s=o.
DO 20 J=K,N
IF(K.GT.l) THEN
S=0.
DO 10 L=1,K-1
S=S+U(L, K)*U(L, J)
10
CONTINUE
END IF
U(K,J)=A(K, J)-S
IF(K.EQ.J) THEN
U(K, J)=SQRT(ABS(U(K, J ) ))
ELSE
U(K,J)=U(K,J)/U(K,K)
END IF
20
CONTINUE
30 CONTINUE
END
Положительно определенные симметричные матрицы занимают особое ме
сто в анализе данных. Они могут выступать в роли матрицы весовых коэф
фициентов или ковариационной матрицы. В этих случаях часто требуется вы
полнять разложение Холецкого А = UT U* а также умножение матрицы U
на. некоторую матрицу. С точки зрения вычислений в этом случае умноже
ние легче осуществлять при помощи специальной подпрограммы, в которой
учитывается, что матрица U является треугольной.
АЛО.
Программа А.34.
П одпрограм м а
U
угольной м атрицы
т
х
р азм ер а
т
Р азлож ение Х о л е ц к о го
МТХСНМ в ы п о л н я ет
х
т
ум нож ени е
491
верхнетре
А
р азм ер а
R = UA
р азм ер а
н а п р о и зв о л ь н у ю м а т р и ц у
п
К оманда вы зо в а :
mt xc hm ( u
call
, a , r , m, n)
В х о д н ы е п а р а м е т р ы : и —м а т р и ц а U р а з м е р а т х т
А —м а т р и ц а
А
р азм ер а
M,N — р а з м е р н о с т и т ,
т
х
п
п
В ы х о д н о й п а р а м е т р : R — р езул ьт ат у м н ож ен и я — м атр и ц а
т
х
п
SUBROUTINE M T X C H M C U ^ R ^ N )
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION U ( M , M ) , A ( M , N ) , R ( M , N )
PARAMETER(Z=0.DO)
DO 3 0 1 = 1 , M
DO 2 0 K=1 ,N
R(I,K)=Z
DO 10 L=I ,M
R ( I , K ) = R ( I , K ) + U ( I , L)*A(L,K)
10
CONTINUE
20
CONTINUE
30 CONTINUE
END
Особый интерес представляет задача обращения симметричной положи
тельно определенной матрицы А размера п х п. Для этого с помощью опи
санного выше метода разложения Холецкого для матрицы А нужно решить п
матричных уравнений вида (А.7.4)
A x i — UT UXi — UT yi = е г,
г = 1,...,
п.
(А.10.8)
Обозначим £~е компоненты векторов аз*, у* и е* за хц. уц и ец соответственно.
Очевидно, что хц — (А~г)ц и ец ~ 8ц, т. е. ец является (гД)-м элементом
единичной матрицы.
Найдем теперь компоненту уц. Воспользуемся для этого методом прямой
подстановки. Из соотношения (АЛО.8) следует, что
k=1
т. e. что
U nyn — Si i,
U i 2 y a + U22Vi 2 =
$i2,
492 Приложение А.
М ат ричное исчисление
а отсюда получаем, что
Уп
=
Sn/U iij
I
Ун = —
Uu
(
е~ 1
\
\ Sit - V ' UkeVik ■
\
)
Однако поскольку 5ц = 0 при i ф £, то это выражение упрощается:
ун = 0,
I<
Уг£—jj {
^ ^^ЫУгк J > £^
Теперь можно найти элементы
нент
в соотношение
к=г
методом обратной подстановки компо
UXi = Уг,
что в покомпонентной записи выглядит следующим образом:
^ ^ Ugk^ik “
fe=<
ИЛИ
“Ь" б^12^г2 "Ь *’ ' “h
—Уг11
б^22*^г2 "Ь * * * “ f“ 6^2n ^ i n —
2/г2?
UnnXin —2/гп'
В результате получаем, что
X^in —Угп/^пп?
1
2/г€
n
^ ^ UgkXik
k=e+ 1
Если мы хотим вычислить элементы ж^ только для £ > г, то в методе обратной
подстановки будут задействованы только те элементы ун> для которых £ > г,
т. е. только ненулевые элементы уц. Поэтому сохранять в памяти нулевые эле
менты ун не имеет смысла. Элементы хц для £ < г можно найти напрямую из
свойства симметрии исходной матрицы, т. е. из того, что хц = хц.
Следующая программа сначала осуществляет построение разложения Холецкого для матрицы А, а затем в цикле выполняется решение системы (А. 10.8)
для различных правых частей е*, где i — 1 ,... ,п. В результате однократной
работы цикла вычисляются элементы ж*п, х ^ п- 1 , . . хц, стоящие в г-й стро
ке. Эти элементы сохраняются в памяти на месте соответствующих элементов
А. 10.
Разложение Холецкого
493
матрицы А (эта матрица станет матрицей результатов). Компоненты вектора
у нужны только для промежуточных вычислений, поэтому этот вектор можно
сохранять в памяти на месте последней строки матрицы А. В заключение за
полняется значениями нижний треугольник матрицы (элементы, стоящие ни
же главной диагонали, в силу симметрии равны соответствующим элементам,
стоящим над главной диагональю).
Программа А.35. Подпрограмма MTXCHI осуществляет обращение положи
тельно определенной матрицы А методом разложения Холецкого
К о м а н д а в ы з о в а : CALL м т х с ш ( A , s c r a t , n )
В х о д н ы е п а р а м е т р ы : А —положительно определенная симметричная
матрица А размера п х п
SCRAT —рабочий массив, минимальный размер которого п х п
N—размерность матрицы А
В ы х о д н о й п а р а м е т р : А — А " 1 —обратная
матрица для исходной
матрицы А
С Шаг
С Шаг
10
20
С Шаг
30
SUBROUTINE MTXCHI(A,U,N)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
DIMENSION A(N,N),U(N,N)
1: Разложение Холецкого
CALL MTXCHL(A,U,N)
DO 50 1=1,N
2: Прямая подстановка
DO 20 L=I,N
IF(L.EQ .I) THEN
A(N,L)=DBLE(1.)/U(L,L)
ELSE
A(N,L)=DBLE(0.)
DO 10 K=I,L-1
A(N,L)=A(N,L)-U(K,L)*A(N,K)
CONTINUE
A(N,L)=A(N,L)/U(L,L)
END IF
CONTINUE
3: Обратная подстановка
DO 40 L=N,I,-1
IF(L.EQ.N) THEN
A(I,L)=A(N,L)/U(L,L)
ELSE
A(I,L)=A(N,L)
DO 30 K=N,L+lt - l
A (I,L)=A (I,L)-U (L,K )*A (IfK)
CONTINUE
494
П рилож ение А.
Матричное исчисление
A (I,L)=A (I,L)/U (L,L)
END IF
40
CONTINUE
50 CONTINUE
С Заполнение нижнего треугольника по принципу симметрии
IF(N.GT.l) THEN
DO 70 1=1,N
DO 60 L=1,I-1
A (I,L)=A (L,I)
60
CONTINUE
70
CONTINUE
END IF
END
A .ll. Псевдообратная матрица
Теперь мы вновь вернемся к задаче из разд. А.6, а именно займемся решением
матричного уравнения (А.6.4)
Ах
« Ь
(А.11.1)
для произвольной матрицы А размера тпхп и ранга к . Согласно соотношению
(А.6 Л4), существует единственное решение с минимальной нормой, и оно равно
Вектор pi является решением уравнения (А.6Л1) и, следовательно,
Pi = R uV
так как П ц —невырожденная матрица. В силу определения (А.6.8) в итоге
получаем, что
(А.11.2)
По аналогии с соотношением (А.7,3) можно записать, что
х
= А+ Ь.
(АЛ1.3)
Назовем матрицу
(А.11.4)
размера п х m псевдообратной матрицей к матрице А размера т х п.
А. 12.
Собственные значения и собственные векторы
495
Матрица А + однозначно определена матрицей А и не зависит от кон
кретного вида ортогонального разложения (А.6.5). Это легко можно пока
зать, обозначив j -й вектор-столбец матрицы
за а^“ = A ^ e j (здесь ej —
j -й вектор-столбец m-мерной единичной матрицы). Согласно соотношению
(А.11.3) вектор Oj будет являться решением с минимальной длиной для урав
нения Аа+ = ej, и, следовательно, он будет единственен.
А .12. Собственные значения и собственные векторы
Рассмотрим теперь уравнение для нахождения собственных значений и соб
ственных векторов
Gx = Аж,
( А .1 2 .1 )
где G —матрица размера п х п . Если это равенство выполнено, то число А назы
вается собственным значением матрицы G, а п-мерный вектор х — собствен
ным вектором этой матрицы. Очевидно, что собственный вектор х определен
с точностью до множителя. Этот множитель можно выбрать таким образом,
чтобы |ж| = 1.
Для начала рассмотрим простой частный случай, когда G является диаго
нальной матрицей с неотрицательными диагональными элементами, т. е.
\
sч2
2
G = S TS = S 2 =
(А.12.2)
Эту матрицу можно представить в виде произведения произвольной диаго
нальной матрицы S на саму себя, где
/
\
*1
52
5 =
V
(А.12.3)
/
Тогда из уравнения для нахождения собственных значений и собственных век
торов S 2x = Аж следует, что собственные значения имеют вид $2 = А*, а норми
рованные собственные векторы являются базисными векторами, т. е. х г — ег.
Теперь вместо S рассмотрим матрицу
A = U S V T.
(А.12.4)
Здесь U и V —ортогональные матрицы и при этом
G = AT A = l 7 S T S V T.
(А.12.5)
496 Приложение А. Матричное исчисление
Тогда уравнение для нахождения собственных значений и собственных векто
ров для матрицы G можно переписать в виде
G x = Хх
(А.12.6)
или
V S T S V T x = Хх.
Умножая это уравнение слева на 1/Т , получаем, что
S r S V r x = XVTx.
Если сопоставить это уравнение с соотношениями (А. 12.1) и (А. 12.2), то мы
увидим, что матрица G имеет те же самые собственые значения А* = s2, что и
матрица 5 2, однако при этом ее собственные векторы получены ортогональным
преобразованием собственных векторов матрицы S 2, т. е.
Xi = e'i = V d .
(А.12.7)
Собственные значения и собственные векторы матрицы G легко можно найти,
если определить ортогональную матрицу V, с помощью которой матрица G
преобразуется к диагональной матрице
V T G V = S T S = S 2.
(А.12.8)
Преобразование вида (А. 12.8) называется преобразованием главных осей.
Название становится понятным, если проанализировать уравнение
rTGr
(А.12.9)
= 1.
Нас интересует геометрическое расположение всех векторов г, удовлетворяю
щих соотношению (А. 12.9).
Вектор г можно представить двумя способами, которые эквивалентны между собой:
Г=
Е г^ г
(А.12.10)
E r^ei’
(А.12.11)
%
или
r =
i
где компоненты г* и г' отвечают базисным векторам ег и е' соответственно.
Используя представление вида. (А.12.11) и соотношения (А.12.5) и (А.12.7),
получаем, что
1= rTGr =
i
гт У 5 2У т г
3
= E w ^ ^ ^ E K ^ )
*
= Е ^ ^ Ез ^ )
г
з
А .12.
Собственные значения и собственные векторы
497
и в итоге
^
г?«2г = ^ 2 r? /a f = 1.
7 -1
(А.12.12)
? —1
Очевидно, что это соотношение является уравнением эллипсоида в п-мерном
пространстве, диаметры которого лежат на векторах е[ и имеют полудлины
di
1
Si
(А.12.13)
Векторы
ai - е;/в* = V e il Si
(А.12.14)
являются главными осями этого эллипсоида. По направлению они совпадают с
направлением собственных векторов матрицы G. Их длины а* — 1/ у/Щ зависят
от величин собственных значений sf этой матрицы.
Очевидно, что матрица
С = G - 1 = (АтА )-1 = VIS2)-1 У 1
имеет те же собственные векторы, что и матрица G, однако при этом ее собственные значения равны l/s j. Как было сказано выше, полудлины диаметров
этого эллипсоида равны в этом случае корням квадратным из соответствую
щих собственных значений матрицы С.
Матрица С называется матрицей невзвешенных ковариаций для матрицы
А, а описанный выше эллипсоид — невзвешенным эллипсоидом равных веро
ятностей.
Не забывайте, что все приведенные рассуждения проводились в предполо
жении о том, что исходную матрицу можно представить в виде (А. 12.5), а это
означает, что по построению эта матрица должна быть симметрична и неотри
цательно определена. т. е. она должна иметь действительные неотрицательные
собственные значения. Эллипсы с конечными полуосями можно построить
только для положительно определенных матриц. Если у матрицы несколь
ко одинаковых собственных значений, то у соответствующего эллипсоида бу
дет столько же главных осей равной длины. В этом случае возникает некая
неопределенность в выборе главных осей. Тем не менее главные оси всегда
можно выбрать ортогональными друг к другу.
До сих пор мы так и не сформулировали алгоритм нахождения собственных
значений. Уравнение для нахождения собственных значений и собственных
векторов можно записать в виде Gx = Хх или в виде
(G - Х1)х = 0.
(А.12.15)
Вторая запись позволяет рассматривать это уравнение как систему линейных
уравнений относительно вектора ж, правая часть которой равна нулевому век
тору. Согласно соотношениям (А.7.5) и (А.7.9), нетривиальное решение суще
ствует только в случае, когда
det(G - XI) = 0.
(А.12.16)
498 Приложение А. Матричное исчисление
Это уравнение называется характеристическим уравнением для определения
собственных значений матрицы А. При п — 2 это уравнение принимает вид
0п —^
012
021
022 — А
— (#11 —Л) (#22 ~ А) ~ #12021 —О,
а его решения имеют вид
\
011 + 022 _l л / Л
Л
, ( 0 И “ 022.)2
Л1,2 = ------2------ ± V ‘912021 + --------^--------■
Если матрица G симметрична, как предполагалось ранее, т. е. если
= 0 21 ,
то собственые значения будут действительными числами. Если матрица G по
ложительно определена, то они будут положительны.
Характеристическое уравнение для матрицы размера п х п имеет п реше
ний. Однако на практике при п > 2 собственные значения обычно ищут не с по
мощью характеристического уравнения, а посредством различных итерацион
ных методов (например, методом сингулярного разложения —см. разд. А. 13).
А.13. Сингулярное разложение
Рассмотрим теперь ортогональное разложение матрицы А размера m x n , ко
торое имеет вид
A = U S V T.
(А.13.1)
Здесь, а также в разделах А. 14 и А. 15, мы будем предполагать, что т > п. Если
же это не так, то матрицу А всегда можно дополнить строками с нулевыми эле
ментами таким образом, чтобы в матрице стало п строк и т — п. Разложение
(А.13.1) является частным случаем разложения (А.6.5). Здесь вместо матрицы
R стоит матрица S размера m x n , которая имеет вид
s=(? о)-
<Алз-2>
где D —диагональная матрица размера к х к, ранг которой равен к = Rank(A).
Диагональные элементы матрицы S называются сингулярными значениями
матрицы А . Если матрица А является матрицей полного ранга, то к = п и все
Si ф 0. В случае неполного ранга к < п величины = 0 при г > fc. Позднее мы
увидим, что матрицы U и V можно задать таким образом, чтобы все Si были
положительными и шли в порядке убывания, т. е. чтобы
51 > 5 2 > ... > S k.
(А.13.3)
Сингулярные значения матрицы А имеют очень простой смысл. Из утвер
ждений разд. А. 12 вытекает, что s*—это квадратные корни из собственных
значений матрицы G = АТА. Отсюда следует, что полудлины диаметров элли
псоида равных вероятностей для матрицы G равны а* = 1/5*. Если матрица G
Сингулярное разложение
А. 13.
499
невырождена, то матрица А имеет неполный ранг к < п, а п —к сингулярных
значений s^+i, . . sn равны нулю. В этом случае определитель
det G = det U det S 2 det V = det S 2 == s\s\ • • • s2
(A. 13.4)
также равен нулю.
Путем замен Н —> [/, К —>V, R —>5, Дц —> D из утверждений разд. А.б
получаем, что
А х — U S V r x « Ь,
(А.13.5)
5 У т ж « [ / т Ь.
(А.13.6)
Учитывая, что
y T® = p = ( P l )
V Р2 /
получаем, что
\ к
} та -
UTb = g = ( 9 i ) \
к
У V ^2 у } ггг - Л:
(А.13.7)
4
Sp = д,
(А.13.8)
Dpi = 5i
(А.13.9)
О Р 2 = g-i-
(А.13.10!
а это означает, что
И
Эта система уравнений имеет решение вида
(А. 13.11)
р х = D ~l gx,
или, другими словами,
Pe = 9e/se,
£= 1, 2, . . . .
к,
для произвольного Р2 . Тогда решение с минимальным абсолютным значением
будет выглядеть так:
Pi
0
x =V
(А.13.12)
Вектор остатков будет иметь вид
г — Ъ —А х — U
0
92
(А.13.13)
а его абсолютное значение будет равно
1/2
Г = |02
У 91
*=/с+1
(А.13.14)
500
П рилож ение А.
Матричное исчисление
А. 14. Анализ сингулярных значениЗ
В процессе нахождения решения уравнения А х « Ь важную роль играет то,
какой ранг к имеет матрица А. В этом случае к определяет, с какого индекса
сингулярные значения становятся нулевыми, при каком к величины
> 0,
$fc+i = 0. Каким образом следовало бы поступить в случае, если s принимает
очень малые значения, т. е. если Sk < £ для заданного малого е ?
Пример А.2. Близкие к нулю сингулярные значения. В качестве простого при
мера рассмотрим случай m — п ~ 2, U ~ У ~ 1 . Тогда имеем:
л*= t w
1* = « * = ( о
»° ) ( * )
= (£)=<■ •
то есть
х\ - b i/si,
х 2 = b2/ s 2.
(А.14.2)
Если теперь в соотношении (А.14.2) устремить s2 —» 0, то получим, что \х2\ —>
оо. Если же сразу в соотношении (А. 14.1) положить s2 —0, то на первый взгляд
результат будет совершенно другим. В этом случае мы получим, что
S\Xy =
0 ■х 2 = Ь2.
(А.14.3)
Отсюда вытекает, что х\ = 6i / s\ как и в соотношении (А.14.2), но х 2 в этом слу
чае является полностью неопределенным. При этом решение х с минимальным
абсолютным значением можно получить, положив х 2 = 0. Теперь перед нами
стоит вопрос: «Какое значение является правильным: х 2 = ос или х 2 = О?»
Ответ будет следующим: нужно положить
_ / b2/ s 2, s2 > e
Х2 ~ \
0,
52 < £
и выбирать параметр е таким образом, чтобы с точки зрения численного ре
зультата величина Ъ2/с оставалась строго определенной. Это означает, что
нужно соблюдать соотношение е/\Ь2\
2-7П, где т — количество двоичных
разрядов, имеющихся в распоряжении для представления чисел с плавающей
точкой (см. разд. 4.2). Таким образом значение Ь2 нужно вычислять до тех
пор, пока численное определение этой величины будет иметь смысл. Если же
это не так, то мы оказываемся в ситуации, близкой к s2 = 0, и тогда Ь2 не
определено, поэтому нужно положить Ъ2 — 0.
■
Пример А.З. Точка пересечения двух почти параллельных прямых. Рассмо
трим две прямые, изображенные на рис. А.6. Они задаются уравнениями
—а х 1 + £2 = 1 —0!,
а х 1 + х 2 — 1 + о.
А .14.
Анализ сингулярных значений
501
х* !
Р и с . А . 6 . Д в е прямые пересекаю тся в точке (1,1) под углом 2 7 = 2 a r c tg a .
Координаты точки пересечения этих прямых образуют вектор ж, который удо
влетворяет уравнению А х = 6, где
Легко можно убедиться, что в этом случае имеет место соотношение А =
U S V T, где
U = T 2 \-1
1 ) ’
1 о
s = V2
~
v“ v 0 a
V =
0 1
-1 О
т. е. 5i = V5, 52 = ал/2. Используя формулы
д = и ^Ь = у/2 ( _1 ^ = S p = s/2
Pi
ОС?2
р =
-1
получаем, что вектор х = V p — (J) не зависит от а.
Тем не менее если S2 = a V 2 < е, то можно положить 52 = 0 и мы получим,
что
р=(~о1)1
х = №
Взглянув на рис. А.6, можно заметить, что в пределе при а —» 0 эти две
прямые приближаются друг к другу и практически сливаются с прямой Х2 = Т
При этом координата по оси х\ их «точки пересечения» является полностью
неопределенной. Она полагается равной нулю, поскольку в этом случае вектор
решения х имеет минимальную длину [см. (А.6.14)].
Так же как и в случае «косвенных измерений» (см. главу 9), предположим
теперь, что вектор Ь равен вектору у , состоящему из результатов измерений.
502 Приложение А. Матричное исчисление
описывающих эти две прямые, и что ошибки этих измерений задаются ко
вариационной матрицей Су = G y1. В простейшем случае (когда ошибки не
коррелируют и имеют равные дисперсии) получаем, что
Су = G - 1 = a2I.
Из формулы (9.2.27) следует, что ковариационная матрица для неизвестных х
равна
Сх = (ATGyA )~1.
Поэтому для случая некоррелирующих между собой ошибок она будет равна
Сх = сг2(А т А) 1 = <72С.
Таким образом, с точностью до множителя а2 она равна матрице невзвешен
ных ковариаций С = (АТА)“ 1 для матрицы А. Для нашей матрицы А получа
ем, что
1/2а2 0
С = (АТА)“ 1
0
1/2
Полудлины соответствующего эллипса равны а /а у /2 и ег/л/2- Тогда в слу
чае равных и некоррелирующих между собой ошибок измерений полудлины
диаметров эллипса равных вероятностей для х будут равны между собой (при
этом их нужно еще домножить на сг). Их длины будут равны аХ1 = сг/ау/ 2
и сгХ2 — а/у/2. Очевидно, что в этом случае нужно положить х\ = 0, если
для фиксированного конечного х\ выполнено неравенство х\
сгХ1 (т. е. если
а\/2 <$С&).
■
Таким образом принятие решения о том, нужно ли заменить малое син
гулярное значение на нуль, зависит от результатов анализа точности и ана
лиза ошибок измерений. Следующий метод анализа сингулярных значений,
несмотря на свой обобщенный характер, на практике оказывается достаточно
полезным. Он состоит в следующем.
1. Сначала с помощью компьютерной программы нужно построить сингуляр
ное разложение. В результате, помимо всего прочего, будут найдены упо
рядоченные сингулярные значения
Sl > S2 > *■* > sk‘
2. Далее в зависимости от конкретной задачи нужно выбрать положительную
константу / < 1.
3. Затем все сингулярные значения, удовлетворяющие условию s7; < / s i , сле
дует положить равными нулю. Таким образом, вместо к ненулевых син
гулярных значений теперь будет I < к таких сингулярных значений, что
Si = 0 при г > L
А. 14. Анализ сингулярных значений 503
4. Теперь все формулы из разд. А. 13 остаются в силе после замены параметров
к —+ £ и
1 = • - * = Sk = 0.
Величина остатка увеличится, поскольку теперь выражение (А.13.14) при
мет вид
(А.14.4)
т. е. теперь в стоящую в этом выражении сумму будет входить большее число
слагаемых, чем это было в выражении (А. 13.14).
Эта процедура в ряде случаев позволяет снизить ранг к матрицы А до
значения £ < к. Если матрица А была матрицей полного ранга, то его мож
но снизить. Это дает большое преимущество, поскольку позволяет избежать
проблем с вычислением значений выражений, в которые входят малые сингу
лярные значения. В отличие от других методов (например, от методов Гаусса
и Холецкого), пользователь в этом случае не должен проверять, является ли
матрица G — А тА вырожденной или почти вырожденной.
Несмотря на то, что анализ сингулярных значений позволяет найти реше
ние х с минимальным абсолютным значением для задачи А х
5, все же мы
рекоменуем применять его с особой осторожностью в случае £ < п (вне зави
симости от того, к < п или £ < к = гг). В этом случае неизвестные дц, ...,
х п (практически) линейно зависимы. Поэтому решение х будет не единствен
ным решением этой задачи, а лишь решением с минимальным абсолютным
значением среди возможных решений.
В разд. А.6 мы уже отмечали, что метод сингулярного разложения дает
более точные результаты, нежели другие методы. Особенно это касается ме
тода нормальных уравнений. Более подробное обсуждение этого вопроса (см.
например [18]) выходит за рамки этой книги. Поэтому мы ограничимся одним
примером.
Пример А.4. Преимущество точности метода сингулярного разложения по
сравнению с точностью метода нормальных уравнений. Рассмотрим задачу
А х ~ 6 с матрицей
Сингулярные значения матрицы А равны корням квадратным из собственных
значений матрицы
и их можно найти по формуле (А. 12.16). Они равны
*1 = \/2 + р 2,
S2 = \Р\.
504
П рилож ение А.
Матричное исчисление
Мы нашли эти значения методом сингулярного разложения, не используя при
этом матрицу G. Если точность вычислений равна е и если /З2 < £, но при этом
/3 > е, то получаем, что
Si
= \/2,
S2 =
|/3|,
т. е. оба сингулярных значения остаются ненулевыми. Если же вместо метода
сингулярных значений воспользоваться методом нормальных уравнений в виде
А тА х = Gx —А ТЬ,
то матрица G будет участвовать в вычислениях в явном виде. При /З2 < е она
будет равна
1 1
G—
1 1
Эта матрица вырожденная, так как det G — 0, поэтому ее нельзя обратить
(а это требуется сделать для нахождения решения по формуле (А.6.17)). Это
также скажется на величинах сингулярных значений. В этом случае они будут
равны
51 = \/2,
52 = 0 .
■
АЛ5. Алгоритм построения сингулярного разложения
А.15.1. Суть метода
Ниже будет приведен алгоритм построения сингулярного разложения и реа
лизация этого алгоритма на языке FORTRAN. За основу нашего изложения
положены работы Л о у с о н а и Х а н с о н а [18], которые в свою очередь опирают
ся на работы Г о л у б а и К а н а [19], Б а з и н г е р а и Г о л у б а [20], а также Г о л у б а
и Р е й н ч а [21]. Суть алгоритма состоит в последовательной ортогонализации
(последовательном применении ортогональных преобразований).
На первом шаге матрица А преобразуетеся к двухдиагональной матрице
С, т. е. осуществляется разложение
А = Q C Н т.
(А.15.1)
Здесь ортогональные матрицы Q и Н являются в свою очередь произведени
ями матриц преобразования Хаусхолдера.
На втором шаге матрица С путем итераций приводится к диагональному
виду:
C = U ' S f V fT.
(А.15.2)
Здесь матрицы U1и V f представляются в виде произведений матриц преобразо
вания Гивенса, а также (в случае необходимости) матриц отражения. Умноже
ние на матрицу отражения обеспечивает неотрицательность всех диагональ
ных элементов.
А.15. Алгоритм построения сингулярного разложения 505
На третьем шаге вычисляются ортогональные матрицы Uf/ и V й (это про
изведения матриц перестановок). С помощью умножения на эти матрицы до
биваются, чтобы диагональные элементы полученной в результате матрицы
S = U"T S 'V "
(А.15.3)
были упорядочены в порядке убывания (так же, как в соотношении (А.13.3)).
В результате после трех первых шагов становятся известны матрицы
U = QU' U",
V = HV'V",
(А.15.4)
которые вместе с диагональными элементами si, 52 , . - Sk образуют сингуляр
ное разложение вида (А.13.1).
На четвертом шаге осуществляется заключительный этап алгоритма —
анализ сингулярных значений. Проще говоря, все сингулярные значения, удо
влетворяющие неравенству
^ Smm,
(А.15.5)
полагаются равными нулю. Таким образом в итоге мы получаем вектор реше
ния х , который удовлетворяет уравнению
А х и b.
(А.15.6)
На практике уравнение вида (А.15.6) часто приходится решать одновремен
но для различных правых частей, из которых можно составить матрицу
В = (bi, 62 , . . . , bg)
размера т х £. В результате вместо вектора решения х можно получить ма
трицу
X — (cci, Х 2 ) • - • 1 set)
размера n х I, являющуюся решением уравнения
АХъВ.
(А.15.7)
Это решение можно найти с помощью следующей программы, которая со
стоит всего лишь из четырех строк. Посредством этих строк запускаются че
тыре модуля, в которых реализованы четыре описанных выше шага. Работа
этих модулей описана более подробно в следующих разделах.
Программа А.36. Подпрограмма MTXSVD осуществляет построение сингуляр
ного разложения и анализ матрицы А размера т х п
К оманда
вы зо ва : call mtxsvd(А,в , x , r , m, n , l , frac , ok)
В ходные парам етры : А—матрица А размера т х п
В —матрица В размера т х I
М, N, L —размерности m, n, I
FRAC—коэффициент / . Если smax является максимальным сингулярным
значением, то smin = / - smax, а в результате анализа все сингулярные
значения, удовлетворяющие условию < smin: полагаются равными нулю.
506
П рилож ение А.
Матричное исчисление
В ы х о д н ы е п а р а м е т р ы : X—матрица решения размера п х £
N —количество сингулярных значений, которые не равны нулю
0К —логическая переменная (она равна . TRUE. (и с т и н а ) в случае
сходимости второго шага и .FALSE, (ложь) в случае, если метод на втором
шаге не сошелся)
R—^-мерный вектор квадратов остатков (А. 14.4) для £ столбцов
матрицы В
SUBROUTINE MTXSVD(А, В, X, R,М, N,NB,FRAC, 0К)
IMPLICIT DOUBLE PRECISION ( A - H , Q - Z )
PARAMETER( NMAX=1 0 0 0 )
DIMENSION A ( M , N ) , B ( M , N B ) , X ( N , N B ) , R ( N B ) , D ( N M A X ) , E ( N M A X )
COMMON /D A S V 0 1 / D ,E
LOGICAL OK
С Шаг 1: П р и в е д е н и е матрицы А к д в у х д и а г о н а л ь н о м у в и д у
CALL MTXSV1 ( А , В , D , Е , М, N , NB)
С Шаг 2 : П р и в е д е н и е д в у х д и а г о н а л ь н о й матрицы к д и а г о н а л ь н о м у в и д у
CALL MT X S V 2 ( A , B , D , E , M, N , N B , 0 K )
С Шаг 3: У п о р я д о ч и в а н и е си н гул я р н ы х з н а ч е н и й и п е р е с т а н о в к а
CALL MTXSV3 ( A, B, D, M, N, NB)
С Шаг 4 : А н ализ си н гу л я р н ы х з н а ч е н и й
CALL MTXSV4( А , В , D , X , R , М, N , NB»FRAC)
END
Обычно интерес представляет только матрица X, являющаяся решением
задачи А Х & В, а иногда также количество сингулярных значений, не при
равненных нулю. Тем не менее изредка бывает необходимо иметь возможность
осуществлять определенные действия с элементами матриц U и V, а также с
самими сингулярными значениями. Доступ к этим величинам можно обеспе
чить с помощью следующей программы.
Программа А.37. Подпрограмма MTXDEC осуществляет построение сингуляр
ного разложения А = U S V 1 матрицы А размера m х п, а также выдает ма
трицы f7, 5, V и псевдообратную матрицу X
К о м а н д а ВЫЗОВА: CALL MTXDEC( A, B, X, R, M, N, FRAC, OK, D , U , V)
A— матрица А размера m x n
В —рабочий массив, минимальный размер которого m x m
М, N—размерности m, п
FRAC —коэффициент / , Если smax является максимальным сингулярным
значением, то sm-m = / • smaX) а в результате анализа все сингулярные
значения, удовлетворяющие условию < smm, полагаются равными нулю.
В ходные п арам етры :
X—матрица А + размера п х т, псевдообратная к
матрице А
U —матрица U размера т х т
V—матрица V размера п х п
D—n-мерный вектор, состоящий из диагональных элементов матрицы S
В ыходные п арам етры :
А. 15.
Алгоритм построения сингулярного разложения
507
ОК — логическая переменная (она равна . TRUE. ( и с т и н а ) в случае
сходимости и .FALSE, (л о ж ь ) в случае, если метод не сошелся)
N — количество сингулярных значений, которые не равны нулю.
R—^-мерный вектор квадратов остатков (А. 14.4) для £ столбцов
матрицы В
К о м м е н т а р и и : Если введенное значение параметра N и значение этого
параметра на выходе отличаются, это означает, что в матрице D и при
вычислении матрицы X одно или более сингулярных значений были
положены равными нулю.
SUBROUTINE MTXDEC( A, B, X, R, M, N, FRAC, OK, D , U , V)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
PARAMETER( NMAX=1 0 0 0 )
DIMENSION A ( M , N ) , B ( M , M ) , X ( N , M ) , R ( M )
DIMENSION D( N) , E( NMAX)
DIMENSION U ( M , M ) , V ( N , N )
COMMON /D A S V 0 4 / E
LOGICAL OK
С Шаг 0 : М атрица В п о л а г а е т с я р а в н о й е д и н и ч н о й (N х N ) -м а т р и ц е
CALL MTXUNT(B,M)
С Шаг 1: П р и в ед ен и е матрицы А к д в у х д и а г о н а л ь н о м у в и д у
CALL MTXSV1 ( А , В , D , Е , М, N , М)
С Шаг 2 : П р и в е д е н и е д в у х д и а г о н а л ь н о й матрицы к д и а г о н а л ь н о м у в и д у
CALL MTXSV2(ASB , D , E , M , N , M SOK)
С Шаг 3 : У п о р я д о ч и в а н и е с и н гу л я р н ы х з н а ч е н и й и п е р е с т а н о в к а
CALL MTXSV3( А , В , D , М, N , М)
CALL M T X G S M( A , V , M, N , N , N , 1 , 1 )
CALL MTXTRP( В , U , M, M)
С Шаг 4 : А н али з си н гу л я р н ы х з н а ч е н и й
CALL MTXSV4( A, B, D, X, R, M, N, M, FRAC)
END
A.15.2. Приведение матрицы к двухдиагональному виду
Цель данного раздела состоит в нахождении матрицы С размера m х п, удо
влетворяющей соотношению (А.15.1). Пусть теперь матрица С имеет вид
(А.15.8)
а С" является двухди агональной матрицей размера п х п, т. е.
\
с?2 ез
(А.15.9)
508 Приложение А.
М ат ричное исчисление
Эту задачу можно решить путем умножения матрицы А на соответству
ющие матрицы преобразования Хаусхсшдера (чередующиеся как справа, так
и слева):
с
= Qn(- ■■({Q i A)H 2) ■• - Я п) = Qr A H .
(А.15.10)
Матрица Q\ вычисляется на основании элементов первого столбца матри
цы А, а затем матрица А (а также матрица В) умножается на нее слева. В
результате этих действий в первом столбце матрицы А остается только один
ненулевой элемент, имеющий индексы (1,1). Матрица # 2 вычисляется на осно
вании первой строки матрицы Q \A , а затем матрица Q \A умножается на нее
справа. У полученной в результате матрицы элемент с индексами (1,1) оста
ется без изменений, элемент (1,2) пересчитывается по формуле, а элементы с
индексами (1,3), . . (1,п) полагаются равными нулю. Таким образом после
выполнения этих двух действий мы получим
. \
.
.
,
.
0
■ )
■ ■
о
о
•
•
• . .
0 . .
0 . .
0 . .
Q l A H 2
—
0
0
0
0
.
.
.
.
.
.
.
.
.
.
.
.
)
Здесь знак «•» обозначает элемент, который в дальнейшем останется без изме
нений и будет стоять на этом же месте в итоговой двухдиагональной матрице
С", а знак «.» —элементы, которые позднее будут пересчитываться. Теперь на
основании второго столбца матрицы Qi А Н 2 нужно найти такую матрицу Q 2 .
чтобы при умножении на нее слева во втором столбце первый элемент оста
вался без изменений, а остальные элементы пересчитывались; при этом только
второй элемент должен остаться ненулевым, элементы с третьего по тп-й бу
дут равны нулю.
В итоге суть этого метода можно сформулировать следующим образом. В
результате умножения матрицы Qi слева на векторы-столбцы матрицы, най
денной на предыдущем шаге, получаем матрицу, в которой во всех столбцах
элементы с первого по (г —1)-й оставлены без изменений, а элементы с г-ro по
m-й вычислены заново. Эти действия соответствуют ортогональному преобра
зованию в подпространстве, натянутом на векторы-столбцы с индексами г, ...,
тп. При этом во время умножения на матрицу Qi элементы, стоящие в этих
столбцах с первой по (г — 1)-ю строку, уже равны нулю, поэтому достаточно
ограничиться умножением матрицы Qi на столбцы с г-го по п-й. Аналогичные
рассуждения можно провести и для матрицы Щ. Эта матрица умножается
справа на векторы-строки предыдущей матрицы, при этом во всех строках
без изменения остаются элементы с первого по (г —1)-й. Эта операция соот
ветствует ортогональному преобразованию в подпространстве, натянутом на
векторы-строки с индексами г, ..., п. В результате умножения на эту матрицу
элементы с первого по (г —2)-й во всех этих строках становятся равными нулю.
При этом достаточно ограничиться умножением матрицы Hi только на строки
А. 15.
Алгоритм построения сингулярного разложения
509
с номерами г—l , . . . , m —1. Поскольку нужно осуществить преобразование толь
ко (п —1)-й строки матрицы А , то матрица Нп в соотношении (А. 15.10) будет
единичной матрицей, a Qn будет единичной только в том случае, если m = п.
Помимо преобразованной матрицы QTA H в памяти компьютера сохраня
ется также матрица Н = # 2 # з - • - # n-i- Для того чтобы это сделать, нужно
сохранять все матрицы Н%. Как мы установили в конце разд. А.4, достаточно
сохранять только величины ир жЪ (см. разд. А.4), а также элементы с (г 4- 1)-го
по n-й в (г —1)-й строке матрицы Н{. Эти элементы можно сохранять в том
же массиве, в котором изначально была записана исходная матрица, посколь
ку именно эти элементы из предыдущей матрицы будут обнулены в результате
текущего преобразования, а это значит, что в дальнейшем они больше не будут
участвовать в вычислениях. Следовательно, нужно ввести только две дополни
тельные переменные (для величин ир и Ь) для каждой из матриц
После того
как все необходимые преобразования будут выполнены, диагональные элемен
ты di и элементы ег, стоящие над диагональю, будут записаны в массивы Е и
D. В итоге на месте первых п строк массива, содержащего исходную матрицу
А, будет записана матрица Н = Н 2 Н 3 • **Hn- \ L Строки будут идти в следую
щем порядке: # n_ i/, Hn- 2 {Hn- i I ) ,
Такая реализация этого метода будет
наиболее оптимальной, поскольку в ней матрица преобразования Хаусхолдера будет умножаться только на те столбцы исходной матрицы (стоящие в ней
справа), которые действительно будут изменены в процессе этого преобразо
вания. Единичная матрица I строится в процессе преобразований и при этом
увеличивается. Она записывается в нижних строках того массива, в котором
была записана исходная матрица А. Для этого имеется ровно столько места,
сколько необходимо (до этого момента на этом месте сохранялась информация
о виде примененных преобразований Хаусхолдера).
Программа А.38. П о д п р о г р а м м а MTXSV1 о с у щ е с т в л я е т п р и в е д е н и е м а т р и ц ы А
р а з м е р а m х п к д в у х д и а г о н а л ь н о м у в и д у , т. е. п о с т р о е н и е р а з л о ж е н и я в и д а
А = Q C Н т, г д е С — д в у х д и а г о н а л ь н а я м а т р и ц а
К о м а н д а в ы з о в а : ca ll m t x s v i ( a , b , d , e , m , n , l )
В х о д н ы е п а р а м е т р ы : А— м а т р и ц а А р а з м е р а m x п
В р азм ер а m х £
M,N,L —размерности т , п, £
В — м атрица
В ы х о д н ы е п а р а м е т р ы : А—матрица Н размера n х п (стоящая на месте
первых п строк матрицы А)
В —матрица QTB размера m x £
D—вектор, компоненты которого являются диагональными элементами
матрицы С
Е —вектор, компоненты которого являются элементами, стоящими над
главной диагональю матрицы С
SUBROUTINE MT X S V 1 ( A , B , D , E , M, N , N B )
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
■510
С
С
С
С
С
С
С
С
С
П рилож ение А.
Матричное исчисление
PARAMETER(NMAX=1000)
DIMENSION A(M,N),B(M,NB),V(NMAX),S(NMAX).UPS(NMAX),D(N) ,E(N)
DIMENSION BBS(NMAX)
COMMON /DASVOO/ V,S,UPS,BBS
DO 50 1=1,N
определение параметров преобразования Хаусхолдера, т.е. матрицы Q(I)
IFCI.LT.N .OR. M.GT.N) THEN
CALL M T X G C L (A ,V ,M ,N,I)
CALL MTXHSDCV,UP,BB,M,1,1+1)
применение отображения Q(I) к матрице A
DO 10 J=I,N
CALL M T X G C L (A,S,M,N,J)
CALL MTXHSTCV,UP,BB,S,M,1,1+1)
CALL M T X P C L ( A ,S ,M ,N,J)
10
CONTINUE
применение отображения Q(I) к матрице В
DO 20 К = 1 ,NB
CALL M T X G C L (В,S ,M ,N B ,К)
CALL MTXHSTCV,UP,BB,S,M,1,1+1)
CALL MTXPCLCB,S,M,NB,K)
20
CONTINUE
END IF
IFCI.LT.N-l) THEN
определение параметров преобразования Хаусхолдера, т.е. матрицы HCI)
CALL MTXGRWCA,V,M,N,I)
CALL MTXHSDCV,UP,BB,N,I+1,1+2)
сохранение матрицы HCI)
UPSCI)=UP
BBS(I)=BB
применение отображения H(I) к матрице A
DO 40 J=I,M
CALL M T X G R W C A ,S ,M ,N,J)
CALL MTXHSTCV,UP,BB,S,N,I+1,1+2)
сохранение элементов 1+2,... в Л-й строке матрицы А
IF CJ.EQ.I) THEN
DO 30 K=I+2,N
S(K)=V(K)
30
CONTINUE
END IF
CALL M T X P R W C A ,S ,M ,N,J)
40
CONTINUE
END IF
50 CONTINUE
копирование диагонали преобразованной матрицы А в вектор D,
а наддиагональные элементы матрицы А в вектор Е
А.15. Алгоритм построения сингулярного разложения 511
IF(N.GT.l) THEN
DO 60 1=2,N
D(I)=A(I, I)
E(I)=A(I-1, I)
60
CONTINUE
END IF
D(1 )=A(1,1)
E(1)=0.
С осуществление перемножения матриц H=H(2)*H(3)* . . . *H(N), H(N)=I
DO 90 I=N,1,-1
IF(I.LE.N-l) CALL MTXGRW(A,V,M,N,I)
DO 70 K=1,N
A(I,K)=0.
70
CONTINUE
A( I , I ) = l .
IF(I.LT.N-l) THEN
DO 80 K=I,N
CALL MTXGCL(A, S, M,N,K)
CALL MTXHST(V,UPS(I),BBS(I),S,N,I+l,I+2)
CALL MTXPCL(A, S , M,N,K)
80
CONTINUE
END IF
90 CONTINUE
END
A.15.3. Приведение матрицы к диагональному виду
Теперь мы будем приводить двухдиагональную матрицу С, ненулевые элемен
ты которой записаны в массивах D и Е, к диагональному виду с помощью
соответствующего преобразования Гивенса. Суть метода диагонализации за
ключается в том, что сначала обнуляется нижний внедиагональный элемент
этой матрицы, а затем снизу вверх и справа налево —все остальные ненулевые
внедиагональные элементы. В результате матрица С становится диагональной.
Все преобразования, осуществляемые путем умножения матрицы С слева на
некоторую матрицу, применяются также к матрице, записанной в массиве В. А
все преобразования, осуществляемые путем умножения этой матрицы справа
на некоторую матрицу, применяются также к матрице, находящейся в массиве
А. (Диагонализируемая матрица на каждом шаге обозначается за С.)
На данном этапе только верхняя левая подматрица С&, состоящая из к
строк, пока еще не является диагональной, а поэтому ее мы и будем рассма
тривать. Индекс к определяется из условия, что
ф 0 и ej = 0, j > к. Это
означает, что программа запускается в цикле для к = n, п —1, ..., 2. Перед
тем как начать обнулять нижний внедиагональный элемент исходной матри
цы путем итерационной процедуры, необходимо проверить, не имеет ли место
5 12
П рилож ение А.
Матричное исчисление
один из двух следующих частных случаев (в этих частных случаях вычисления
можно упростить, используя специальный алгоритм).
Частный случай №1, dk = 0 (этот частный случай обрабатывается модулем
MTXS21). Матрица Гивенса W умножается слева на исходную матрицу и при
этом элемент
становится равным нулю. Матрица w равна произведению ма
триц Wfc-iWk - 2 Матрица Wi умножается на г-й и к-й столбцы матрицы
С*;, но при этом изменяются только те строки, в которых эти столбцы име
ли ненулевые элементы. В ( к — 1)-й строке матрица W k-i обнуляет элемент
ек =
и изменяет значение элемента Ck-i,k-i> Кроме того, в ( к — 2)-й
строке матрица Wk- 1 изменяет значение элемента
и приводит к тому,
что в fc-м столбце появляется ненулевой элемент Н —Ск-2,к- Затем проводится
умножение на матрицу W k- 2 - При этом обнуляется элемент Н = Ск- 2 ,к* а на
пересечении ( к ~ 3)-й строки и к - го столбца появляется ненулевой элемент. В
конце лишний ненулевой элемент, появившийся в первой строке, можно обну
лить путем умножения на матрицу W\. В результате применения этого алго
ритма для частного случая №1 матрица Ск распадается на две подматрицы:
Ск- i размера ( к — 1) х ( к —1) и нулевую матрицу размера 1 x 1 .
Частный случай №2: матрица Ск распадается на подматрицы (этот част
ный случай обрабатывается модулем MTXS22). Если eg = 0 для некоторого £,
где 2 < £ < к, то матрица
( d\
\
е2
de- i
О
de
Се-г
О
e £4_i
О
С
dk- 1 ^к
dk )
\
распадается на две подматрицы Се- 1 и С. Сначала можно привести к диаго
нальному виду матрицу С, а затем — матрицу Се- 1 - В частности, если £ = к,
то получаем, что
c fc- i
О
О
dk
Здесь dk является сингулярным значением, а поэтому можно сократить ко
личество прогонов цикла на единицу, т. е. заменить к на к — 1. Однако сна
чала нужно рассмотреть случай dk < 0 (см, ниже «изменение знака»). Если
de- 1 = 0 и при этом ее Ф 0, то все равно матрицу С можно представить в виде
двух подматриц. Для этого нужно домножить эту матрицу слева на матрицу
преобразования вида Т = TkTk- 1 *- * ^ + ь где Тг изменяет значения в строке £
и в столбцах i и i-f 1. В частности, при умножении на матрицу
обнуляется
элемент ее =
и появляется новый ненулевой элемент Н = Се,е+2 - Этот
А. 15. Алгоритм построения сингулярного разложения
513
элемент обнуляется впоследствии при умножении на матрицу Zi+2 , а вместо
него появляется новый ненулевой элемент Н — Ciy+ 3 . В конце при умножении
на матрицу
последний лишний ненулевой элемент Н = Сек обнуляется и
выделяется подматрица Скк — dfc.
После того как осуществлена проверка на наличие одного (или обоих) част
ных случаев и, в случае их наличия, проведена соответствующая процеду
ра, остается только привести матрицу С к диагональному виду. Эта матрица
является подматрицей матрицы С и состоит из строк и столбцов с индексами
I , . . . , к. Если второй частный случай не имел места, то i — 1 . Задача приведе
ния матрицы к диагональному виду решается с помощью QR-алгоритма.
QR-алгоршпм (выполняется модулем MTXS23): Сначала обозначим квадрат
ную матрицу С, которая будет получена на выходе, за С\. Затем найдем ор
тогональные матрицы Ui, Vi и выполним преобразования
Ci+ 1=U?CiVi,
i = 1,2,...,
в результате коорых получим диагональную матрицу S, где
И т С\ = S.
г—>оо
Для нахождения матриц Ui и Vi используется следующий алгоритм:
(A) Вычисляются собственные значения \ \ , А2 подматрицы размера 2 x 2 , стоя
щей в правом нижнем углу матрицы C jC i. За Oi обозначается собственное
значение, ближайшее по величине к тому элементу матрицы CffCi, кото
рый стоит в ее правом нижнем углу.
(B) Матрица V%должна быть такой, чтобы матрица V ^ (C jC t —аг1) была верх
нетреугольной.
(C) Матрица Щ должна быть такой, чтобы матрица С4+1 — UjCiVi была двух
диагональной.
По теореме Ф рен с и с а [22] матрица V i, удовлетворяющая условию из пункта
(В), существует, если
(a) матрица C jC i является трехдиагональной с ненулевыми элементами над
главной диагональю,
(b ) матрица V является ортогональной,
(c) <Ji —произвольная константа,
(d) матрица V ^(C jC \)V i является трехдиагональной и
(e) в первом столбце матрицы V ^{C jC i — аД) все элементы за исключением
первого равны нулю.
514
П рилож ение А. М атричное
исчисление
Условие (а) выполнено, поскольку матрица Ci является двухдиагональной, а
частный случай №2 был рассмотрен отдельно. Условие (Ь) также имеет место,
так как по построению матрица V является произведением матриц преобра
зования Гивенса. Это также обеспечивает выполнение условий (d) и (е). В
частности, получаем, что
V{ —Ri R 2 ***Rn—l 1
~ L n - l i n ' ’ *dj\1
где матрица R j изменяет значения в j -м и (j 4- 1)-м столбцах матрицы С ,
матрица Lj изменяет значения в j -й и (у + 1)-й строках матрицы С , матрица Ri
определяется из условия (е). матрицы Li, R 2 , L 2 , ... определяются из условия
(е) таким образом, чтобы при этом не нарушалось условие (d).
Мы получаем, что
dn-\
t
а — d„ + ет
где
+ / 2,
/ > о,
t = f - y /l + f 2,
/ < 0,
t = f + V i
j. _ 4 - 4 - i + 4 - en -i
2endjT,_i
Первый столбец матрицы (C fC i — &il) равен
( d\ - a \
d\e>2
0
V
0
/
Затем из условия равенства нулю всех элементов, за исключением первого,
стоящих в первом столбце матрицы R j( C jC i — Oil), мы находим матрицу Ri
(она задает преобразование Гивенса). Однако при этом умножение матрицы С{
справа на матрицу R\ приводит к возникновению лишнего ненулевого элемента
Н = С21 и в результате матрица Ci перестает быть двухдиагональной:
/
.
.
/
\
.
\
Н
а =
CiRi =
\
/
АЛ5. Алгоритм построения сингулярного разложения
515
После умножения на матрицу Li этот элемент исчезает и оказывается над глав
ной диагональю нашей матрицы. Однако при этом возникает новый ненулевой
элемент—это Я = С 13 :
/ .
. Я
\
L\CiRi —
\
-/
Продолжая эту процедуру таким же образом дальше, в результате мы при
ходим к тому, что лишний ненулевой элемент, перемещаясь вниз и вправо, в
итоге исчезает на последнем шаге:
\
\
Гп-1
= с .г+1-
Я
/
V
Если нижний внедиагональный элемент матрицы С*+1 равен нулю, то ниж
ний диагональный элемент является сингулярным значением исходной матри
цы. В противном случае данную процедуру придется повторить (при этом сна
чала нужно будет проверить, не находимся ли мы в условиях одного из двух
описанных частных случаев). Обычно этот метод сходится примерно за 2 А:
итераций (здесь к —это ранг исходной матрицы А). Если же даже после 10 к
итераций метод так и не сошелся, нужно признать, что метод не сходится, и
закончить его выполнение.
Изменение знака. Если мы нашли сингулярное значение dfc, т. е. если —0 ,
то нужно проверить, не является ли оно отрицательным. Если это так, то осу
ществляется простое ортогональное преобразование, с помощью которого эле
мент dk — Сkk матрицы С и все элементы к-то столбца матрицы, записанной в
массиве А, умножаются на —1. В результате индекс к можно понизить на едини
цу. Далее в соответствии с формулой (А. 13.6) матрицу В нужно умножить сле
ва на матрицу UT. Это осуществляется путем последовательного умножения
матрицы В на матрицы, определяемые отдельными элементами матрицы UT.
Программа
А .3 9 . П о д п р о г р а м м а MTXSV2 с п о м о щ ь ю
С к диагональн ом у
S f = UfTC V f
приводит двухди агон ал ьн ую м атрицу
стр ои тся ди агон ал ьн ая м атр и ц а
КОМАНДА ВЫЗОВА: CALL M T X S V 2 ( A , B , D , E , M , N , L , 0 K )
В ходные параметры: А — м а т р и ц а Я р а з м е р а n х п
п ер в ы х
итерац ионного м етода
в и д у, в р е зу л ь т а т е
%
(о н а з а п и с а н а н а м е с т е
п с т р о к м а с с и в а А)
В — м атрица
QT В
разм ер а
m
х
I
D — в е к т о р , к о м п о н е н т ы к о т о р о г о я в л я ю т с я д и а г о н а л ь н ы м и эл ем ен т а м и
м а тр и ц ы С
51 6
Матричное исчисление
П рилож ение А.
Е — вектор,
компоненты которого являются наддиагональными
элементами матрицы С
M, N, L — размерности т , п, £
В ыходные параметры: А — матрица Н V' размера п х п (она записана на
месте первых п строк массива А)
В — матрица UfTQTB размера m х £
D — вектор, компоненты которого являются диагональными элементами
матрицы S*
0К-— логическая переменная (она равна .TRUE, ( и с т и н а ) , если метод
сошелся, и . FALSE, (л о ж ь ) в случае, если это не так
SUBROUTINE MTXSV2( А , В , D , Е , М, N , NB, ОК)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , B ( M , N B ) , D ( N ) , E ( N )
LOGICAL 0K,ELZER0
PARAMETER(ZER0=0.DO)
0 K= . TRUE.
NITERM=10*N
NITER=0
BMX=D(1)
I F ( N . G T . l ) THEN
DO 10 I =
2, N
B M X = MA X ( A B S ( D ( I ) ) + A B S ( E ( I ) ) ,BMX)
10
CONTINUE
END IF
DO 6 0 K = N , 1 , - 1
20
CONTINUE
I F ( K . N E . l ) THEN
I F ( (BMX+D( К ) ) -BMX. EQ. ZERO) THEN
С Так к а к D ( K ) . E Q . O . ,
то в р е зу л ь т а т е п р ео б р а зо в а н и я Г ивенса
С получ им Е ( К ) = 0 .
CALL M T X S 2 1 ( A , D , E , M, N , N B , K )
END I F
С Н ахож ден и е L ( 2 .
С либо D ( L - 1 ) = 0 .
LE. L , LE.
К) т а к о г о , ч т о л и б о E ( L ) = 0 ,
Во в т о р о м с л у ч а е о с у щ е с т в л я е т с я п р е о б р а з о в а н и е ,
С п р и в одя щ ее к т о м у , ч т о E ( L ) = 0 .
В об о и х сл уч ая х м атрица р а з б и в а е т с я
С н а подм атрицы так и м о б р а з о м , ч тобы нижний правы й м инор н а ч и н а л ся
С с L- й с т р о к и . Е сли т а к и х L н а й д е н о н е бы л о, т о L п о л а г а е т с я равным 1 .
D0 3 0 L L = K, 1 , - 1
$
L=LL
IF(L.EQ.l)
THEN
ELZER0=. FALSE.
GO TO 4 0
ELSE I F ( ( BMX- E ( L ) ) -BMX. EQ. ZERO) THEN
ELZER0=.TRUE.
А. 15.
Алгоритм построения сингулярного разложения
517
GO ТО 4 0
ELSE I F ( ( B M X + D ( L - 1 ) ) - ВМХ. EQ. ZERO) THEN
ELZERO=.FALSE.
END I F
30
CONTINUE
40
IF
( L . G T . 1 . AND.
.NOT.ELZERO) THEN
CALL MTXS22( B, D , E , M, N , NB, К , L)
END I F
I F ( L . N E . K ) THEN
С еще о д и н з а п у с к QR-а л г о р и т м а д л я матрицы р а з м е р н о с т и К
CALL M T X S 2 3 ( A , B , D , E , M , N , N B , K , L )
NITER=NITER+1
I F ( N I T E R . L E . NITERM) GO TO 20
С п р и с в о е н и е з н а ч е н и я п е р е м е н н о й , о б о зн а ч а ю щ е й , ч т о м е т о д н е с х о д и т с я
0 К = . FALSE.
END I F
END I F
IF(D(K).LT. 0 . )
THEN
С д л я о т р и ц а т е л ь н ы х си н гу л я р н ы х з н а ч е н и й о с у щ е с т в л я е т с я
С и зм ен ен и е зн а к а
D(K)=-D(K)
DO 5 0 J = 1 , N
A(J,K)=-A(J,K)
50
CONTINUE
END IF
С н а следую щ ем ш аге п о р я д о к у м е н ь ш а е т с я н а е д и н и ц у
6 0 CONTINUE
END
с ---------------------------------------------------------------------------------------------------------------------------------------------------------------SUBROUTINE MTXS21 ( А , D , Е , И , N , NB, К)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , D ( N ) , E ( N )
DO 2 0 I = К- 1 ,
1 , - 1
I F ( I . E Q . K - l ) THEN
CALL M T X G V A ( D ( I ) , E ( I + 1 ) , C S , S N )
ELSE
CALL MTX GV A( D( I ) , H, CS , S N)
END I F
IF(I.GT.l)
THEN
H=0.
CALL MT X GV T ( E ( I ) , H , C S , S N )
END I F
DO 10 J =
1 ,N
CALL MTXGVT(A(J, I ) , A ( J , K ) , C S , S N )
10
CONTINUE
518 Приложение А. Матричное исчисление
2 0 CONTINUE
END
SUBROUTINE MTXS22( В , D , Е , М, N , NB, К , L)
IMPLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION B ( M , N B ) , D ( N ) , E ( N )
DO 2 0 I = L , K
I F ( I . E Q . L ) THEN
CALL M T X G V A ( D ( I ) , E ( I ) , C S , S N )
ELSE
CALL MT X GV A( D( I ) , H , CS , S N)
END I F
IF(I.LT.K)
H =0.
THEN
CALL MT X G V T ( E ( I + 1 ) , H , C S , S N )
END I F
DO 10 J = 1 , N B
10
CALL M T X G V T ( C S , S N , B d , J ) , B ( L - 1 , J ) )
CONTINUE
2 0 CONTINUE
END
C----------------------------------------------------------------------------------------------------------------------------------SUBROUTINE MTXS23( A, В , D , E , M, N , NB, К , L)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , B ( M , N B ) , D ( N ) , E ( N )
С оп р едел ен и е парам етра сд в и г а
F=((D(K-1)-D(K))*(D(K-1)+D(K))+(E(K-1)-E(K))*(E(K-1)+E(K)))/
+
(2.*E(K)*D(K-l))
I F ( A B S ( F ) . GT. 1 . E 1 0 ) THEN
G=ABS(F)
ELSE
G=SQRT( 1. +F*F)
END I F
I F ( F . G E . O . ) THEN
T=F+G
ELSE
T=F-G
END IF
F= ( (D (L ) -D ( K ) ) * (D ( L) +D ( К ) ) +E (K) * (D ( K - l ) / Т -E ( K ) ) ) / D (L)
DO 3 0 I = L , K - l
I F ( I . E Q . L ) THEN
С О п р е д е л е н и е R( L)
CALL M T X G V D ( F , E ( I + 1 ) , C S , S N )
ELSE
С О пределение R ( I ) , I . N E . L
А, 15. Алгоритм построения сингулярного разложения 519
CALL MT X G V A ( E ( I ) , H , C S , S N )
END I F
CALL M T X G V T ( D ( I ) , E ( I + 1 ) , C S , S N )
H=0.
CALL MT X GV T ( H, D ( I + 1 ) , C S , S N )
DO 10 J =
1,
N
CALL M T X G V T ( A ( J , I ) , A ( J , I + 1 ) , C S , S N )
10
CONTINUE
С О пределение T ( I )
CALL MTXGVA( D( I ) TH , C S , S N )
CALL M T X G V K E C I + D ^ d + D ^ S ^ N )
IFd.LT.K -1)
THEN
H=0.
CALL MT X G V T ( H , E ( I + 2 ) , C S , S N )
END I F
DO 2 0 J =
20
1,
NB
CALL MTXGVT(Bd,J)
CONTINUE
,B (I+ 1,J)
, CS , S N)
3 0 CONTINUE
END
АЛ5.4. Сортировка сингулярных значений (упорядочение и
перестановка)
С помощью следующей программы осуществляется сортировка сингулярных
значений, в результате которой они выстраиваются в порядке убывания. Сор
тировка производится посредством последовательных перестановок тех сосед
них сингулярных значений, у которых последующее значение больше преды
дущего. При этом матрицы, записанные в массивах А и В, умножаются на
соответствующую последовательность матриц перестановок (см. (А.15.4)).
Программа АЛО.
П о д п р о г р а м м а MTXSV3 о с у щ е с т в л я е т с о р т и р о в к у д и а г о н а л ь
н ы х эл е м е н т о в м а т р и ц ы
S " = UfrTS fV",
S f п утем
п е р е с т а н о в о к , в р е зу л ь т а т е с т р о и т с я м а т р и ц а
ди агон ал ьн ы е эл ем ен ты котор ой сл ед у ю т в п ор я дк е убы ван и я
К оманда вызова: call mtxsvsC A ^ d . m^ l )
Входные параметры: А — матрица Н V' размера
месте первых п строк массива А)
В —м а т р и ц а UfTQr B р а з м е р а m х £
п
х
п
(она записана на
D — в е к т о р , к о м п о н е н т ы к о т о р о г о я в л я ю т с я д и а г о н а л ь н ы м и эл ем ен т а м и
м атрицы
Sf
М, N, L — р а з м е р н о с т и ш , п ,
В ыходные
£
параметры : А — м а т р и ц а H V ' V " р а з м е р а m
п с т р о к м а с с и в а А)
В — м а т р и ц а UffTUfTQr В р а з м е р а m х
н а м е с т е п ер в ы х
£
х
п (о н а за п и с а н а
52 0
П рилож ение А.
Матричное исчисление
D—вектор, компоненты которого являются диагональными элементами
матрицы S"
SUBROUTINE MTXSV3( А , В , D , М, N , NB)
IMPLICIT DOUBLE PRECISION ( A - H . O - Z )
DIMENSION A( Mf N ) , B ( M , N B ) , D ( N )
С У п о р я д о ч ен и е си н гу л я р н ы х з н а ч е н и й
I F ( N . G T . l ) THEN
10
DO 20 1 = 2 , N
IF(D (I).G T.D (I-l))
20
GO TO 30
CONTINUE
RETURN
30
CONTINUE
DO 70 I =
2,
N
T=D(I-1)
K=I-1
DO 4 0 J = I
, N
IF(T.LT.D(J))
THEN
T= D ( J )
K=J
END IF
40
CONTINUE
I F ( K . N E . I - l ) THEN
С о с у щ е с т в л е н и е п е р е с т а н о в к и си н гу л я р н ы х з н а ч е н и й
D ( К ) = D ( I —1)
D(I-1)=T
С осущ ествл ен и е п ер ест а н о в о к в м атрице А
DO 5 0 J =
1, N
Т = А ( J , К)
А(J,K)=A(J,1-1)
A (J, I-1)=T
50
CONTINUE
С осущ ествл ен и е п е р ест а н о в о к в м атрице В
DO 6 0 J =
1,
NB
T=B(K,J)
B(K,J)=B(I-1,J)
B(I-1,J)=T
60
CONTINUE
END IF
70
CONTINUE
GO TO 10
END IF
END
А. 15.
Алгоритм построения сингулярного разложения
521
А.15.5. Анализ сингулярных значений
В заключение осуществляется анализ сингулярных значений (он описан в
разд. А.14). Сначала при заданном значении коэффициента f ^ 1 из условия
Si < f s i при i > £ определяется значение £ < к. Затем по формуле (А. 13.11)
преобразуются первые £ элементов столбцов массива В (на месте этих столбцов
в данный момент записаны векторы д) , т. е. тем самым находятся векторы р г, а
остальные элементы £ + 1 , . . п полагаются равными нулю. И в заключение по
формуле (А. 13.12) вычисляются векторы решения ж, которые являются столб
цами матрицы решения X .
Программа А.41. Подпрограмма
значений
MTXSV4
осуществляет анализ сингулярных
К оманда
вызова: call mtxsv4 ( a , b ) d , x , r , m, n , l , frac)
В ходные
параметры :
месте первых
В — м атрица
п
А—матрица H V fV ff размера n х
строк массива
п
(она записана на
А)
U '^ U '^ Q ^ В р а з м е р а m х
£
D — в е к т о р , к о м п о н ен т ы к о т о р о г о я в л я ю т с я д и а г о н а л ь н ы м и эл ем ен т а м и
м а т р и ц ы S " , т. е. э т о в е к т о р с и н г у л я р н ы х зн а ч е н и й м а т р и ц ы А,
располож енны х в порядк е убы вания
M , N , L - ~ р а з м е р н о с т и га, п ,
£
FRAC —абсолютная
величина параметра FRAC равна константе / . Если
^шах — максимальное сингулярное значение, то sm-1П = f ■s mах, а в процессе
анализа все сингулярные значения, которые меньше smin? полагаются
равными нулю. (Если / < 10—15, например, если / —0, то этот параметр
полагается равным f = 10~15.)
В ыходные
параметры : X — м а т р и ц а р е ш е н и я р а з м е р а п х £
N — к о л и ч е с т в о о с т а в ш и х с я н е н у л е в ы х зн а ч е н и й
К— £-мерный вектор, компоненты которого равны среднеквадратичным
остаткам (А. 14.4) для £ столбцов матрицы В
SUBROUTINE MT X S V4 ( A, B , D, X, R, M, N, NB, F RAC)
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
DIMENSION A ( M , N ) , B ( M , N B ) , D ( N ) , X ( N , N B ) , R ( N B )
PARAMETER ( E P S I L N = 1 . D - 1 5 )
FRACT=ABS(FRAC)
I F( FRACT. LT. EPSILN) FRACT=EPSILN
SINMAX=0.
DO 10 I =
1,
N
SINMAX=MAX(SINMAX, D ( I ) )
10 CONTINUE
SINMIN=SINMAX*FRACT
KK=N
DO 2 0 1 = 1 , N
522
Приложение А. Матричное исчисление
20
30
40
50
60
70
80
90
IF (D ( I).LE.SINM IN) THEN
KK=I-1
GO TO 30
END IF
CONTINUE
CONTINUE
DO 60 I = 1, M
IF(I.LE.K K ) THEN
S 1 = 1 ./D (I)
DO 40 J=1,NB
B ( I ,J ) = B ( I ,J ) * S 1
CONTINUE
ELSE
DO 50 J=1,NB
IF(I.EQ.KK+1) THEN
R (J )= B (I,J )* * 2
ELSE
R (J)= R (J )+ B (I, J)* * 2
END IF
IF (I.L E .N ) B ( I ,J ) = 0 .
CONTINUE
END IF
CONTINUE
DO 90 1=1,N
DO 80 J=1,NB
X ( I,J )= 0 .
DO 70 K=1,N
X (I,J )= X (I,J )+ A (I,K )* B (K ,J )
CONTINUE
CONTINUE
CONTINUE
N=KK
END
A.16. Метод взвешенных наименьших квадратов
На практике часто приходится сталкиваться не с задачей (А.6.3)
г2 = {Ах - Ь)т(Ах — Ь) = min,
(А.16.1)
а с ее обобщением, когда в этой формулировке такж е присутствует положи
тельно определенная симметричная матрица G весовых коэффициентов раз
мера гах га. т. е. когда
г2 — {Ах ~ b)TG{Ax —Ъ) — rnin .
(А.16.2)
А.17. Метод наименьших квадратов с изменением масштаба
523
Соотношение (А.16.1) является частным случаем при G — I, Воспользовавшись
разложением Холецкого (А.10.1) матрицы G, т. е. разложением вида G — UTU,
получаем, что
г2 = (Ах —b)T UTU(Ax — Ь) = m in.
(А.16.3)
Если ввести обозначения
A'
=
UA>
bf - U 6,
(А.16.4)
то соотношение (А.16.3) примет вид
г2 — (А!х —6')т (Afx — bf) = min .
(А.16.5)
В результате с помощью замены (А.16.4) задача (А.16.2) сводится к исходной
задаче (А.16.1).
В разд. А. 12 мы называли матрицу
С = ( А ТА)~1
(А.16.6)
размера п х п матрицей невзвешенных ковариаций для неизвестных х из за
дачи (А.16.1). Вместо нее в задаче (А.16.2) фигурирует матрица взвешенных
ковариаций
Сх = (AfTA f)~l = (ATG A )~ 1.
(А.16.7)
АЛ 7. Метод наименьших квадратов с изменением
масштаба
Цель задачи вида
(Ах - b)T (Ax —b) — min
(А.17.1)
состоит в нахождении максимально точной численной оценки вектора решения
х и ковариационной матрицы С. Изменение масштаба элементов матрицы А,
а также масштаба компонент векторов Ь и х может привести к повышению
точности полученных результатов.
Предположим, что априори существуют некоторые предположения отно
сительно значений вектора х и матрицы С, обозначим их соответствующие
приближенные значения за z и К. Разложение Холецкого для матрицы К вы
глядит следующим образом: К ~ LTL. Тогда путем замен
А! = AL,
Ь9 = Ъ - A z ,
х 9 = L ~ l (x - z),
соотношение (А.17.1) можно привести к виду
(А9х ! —bf)T (Afx f —b) ~ min .
(А.17.2)
524
Приложение А. Матричное исчисление
Понять, что теперь скрывается за новым вектором неизвестных х !, легко
можно для частного случая, когда К является диагональной матрицей. За
пишем
\
К =
(
«3
L =
\
<*2
at
/
где величины о\ равны оценкам дисперсий неизвестных Xi. Отсюда г-я компо
нента вектора x f будет иметь вид
,
Xi-Zi
Если Xi действительно равно z*, а соответствующая дисперсия —сг?, то х\ — О,
а его дисперсия равна единице. Если сделанные оценки имеют порядок, соот
ветствующий истинному значению оцениваемых величин, то х\ будут близки к
нулю, а их дисперсии будут порядка единицы. Кроме того, если с достаточной
точностью оценивалась матрица полного ранга, то компоненты вектора х ! не
будут сильно коррелировать друг с другом.
На практике преобразование вида (А. 17.2) осуществляют крайне редко.
Для этого нужно найти «приемлемые» оценки переменных, фигурирующих
в формулах (А. 17.2). Обычно этот метод используется применительно к гра
фическому представлению данных. Если, например, известно, что напряжение
U изменяется в пределах а равного десяти милливольтам, вокруг значения J70,
равного одному вольту, то графики лучше строить не для величины U, а для
величины Uf = (U — U q ) / ct ( и л и для некой подобной величины).
А .18. Модификация Маркардта метода наименьших
квадратов
Давайте теперь вместо задачи вида
(Ах — Ь)т(Ах — Ь) = min,
(А.18.1)
которую можно также записать в сокращенной форме
А х —6 ^ 0 ,
(А.18.2)
рассмотрим модифицированную задачу
m
П
{ /Л "
X
{ и /
Ь\ } m
к0У } n '
(А.18.3)
А. 18.
Модификация Маркардта метода наименьших квадратов
525
Здесь I —единичная матрица размера п х п, а А—некоторое неотрицатель
ное число. С задачей в такой модифицированной формулировке приходит
ся сталкиваться при аппроксимации нелинейных функций с помощью метода
наименьших квадратов (см. разд. 9.5), а также при минимизации различных
функций (см. разд. 10.15). При А = 0 уравнение (А.18.3) сводится к уравнению
(А. 18.2). С другой стороны, если А очень велико, или, точнее, если оно срав
нимо по модулю со значениями элементов матрицы А и вектора Ь, то решение
х определяется по последней «строке» уравнения (А. 18.3) и равно нулевому
вектору при А —►оо.
Для начала выясним, какое направление имеет вектор х при больших зна
чениях А. Нормальные уравнения для задачи (А. 18.3) (см. (А.6.16)) имеют вид
(Ат , А / ) ( ^ ) я = (АХА + X2I ) x = (Ат , AI ) Q
= АТ Ь,
а их решением является вектор
х = (АТА + А21)~1А т Ь.
При больших значениях А второе слагаемое в выражении, стоящем в скобках,
существенно превышает первое слагаемое, и мы получаем просто, что
х = А~2А т Ь.
Это означает, что при больших значениях А вектор решения по направлению
стремится к вектору А Т Ь.
Покажем теперь, что при заданном А решение
уравнения (А.18.3) легко
можно получить методом сингулярного разложения, построенного для нахо
ждения решения х уравнения (А.18.2). Сингулярное разложение (А.13.1) для
матрицы А имеет вид
A=U
V T.
Подставляя это выражение в соотношение (А. 18.3) и умножая его слева на
соответствующую матрицу, получаем, что
о vTА
м
ит о
0 Vх
или
S
о
XI
(А.18.4)
Здесь мы воспользовались следующими обозначениями из разд. А.13:
р = У х ж,
9 = UT b.
526
П рилож ение А. М атричное
исчисление
С помощью преобразования Гивенса матрицу, стоящую в левой части уравне
ния (А.18.4), можно привести к диагональному виду. Тогда получим, что
Р=
у
а)\
.h W Г
где
(А) _ 9I s г
9i
“ (А) ’
(А)
9г
г = 1 ,... ,п,
i = n + 1 ,..., т,
= 9й
hw = _ 9г
(А)’
г = 1,
та,
si
^1А) = лД? + Л2
и, следовательно,
(A)
«
Qi$i
м
-W T T*=Pi sf*2 + Л2
=0,
г = 1 ,..., к,
г — к + 1 ,..., п.
Тогда решение сс^ уравнения (А.18.3) будет иметь вид
х {Х) = V p {x).
С помощью следующей подпрограммы можно найти векторы решения этой
задачи при двух значениях Л.
Программа А.42. Подпрограмма MTXMAR находит векторы Si и Ж2 , являющи
еся решением задачи А х « Ь
К о м а н д а ВЫЗОВА: CALL MTXMAR( А, В , ALAM, XI,Х2, М, N , FRAC, 0К)
В х о д н ы е п а р а м е т р ы : А—матрица А размера т х п
В —n-мерный вектор Ь
ALAM—положительное число А
М, N —размерности ш, п
FRAC—те же, что и в программе А.36
В ы х о д н ы е п а р а м е т р ы : XI —вектор решения х \ для множителя
Маркардта, равного Ai = А
Х2 —вектор решения ж2 Для множителя Маркардта, равного А2 = А/10
N—количество сингулярных значений, не равных нулю
0К —логическая переменная (она принимает значение . TRUE. (истина),
если метод построения сингулярного разложения сходится, и . FALSE,
(ложь), если это не так)
А .18.
Модификация Маркардта метода наименьших квадратов
52 7
SUBROUTINE MTXMAR( А , В , ALAM, X I , Х 2 , М, N , FRAC, ОК)
IM PLICIT DOUBLE PRECISION ( A - H . O - Z )
PARAMETER(NMAX=1 0 0 0 )
DIMENSION A ( M , N ) , B ( M , 1 ) , X 1 ( N ) , X 2 ( N ) , D ( N M A X ) , E ( N M A X )
LOGICAL OK
COMMON /D A S V 0 1 / D ,E
PARAMETER(NB=1)
С Шаг 1: П р и в ед ен и е матрицы А к д в у х д и а г о н а л ь н о м у в и д у
CALL M T X S V 1 ( A , B , D , E , M, N , N B )
С Шаг 2: П р и в ед ен и е д в у х д и а г о н а л ь н о й матрицы к д и а г о н а л ь н о м у в и д у
CALL MTXSV2( А , В , D , Е , М, N , NB, QK)
С Шаг 3 : У п о р я д о ч е н и е си н г у л я р н ы х з н а ч е н и й и о с у щ е с т в л е н и е п е р е с т а н о в о к
CALL MTXSV3( А , В , D , М, N , NB)
С Шаг 4 :
А н ализ си н гу л я р н ы х з н а ч е н и й и п р и м е н е н и е м е т о д а М аркардта
CALL MTXSVM( А , В , D , ALAM, X1 , Х 2 , М, N , FRAC)
END
SUBROUTINE MTXSVM( А , В , D , ALAM, X I , Х 2 , М, N , FRAC)
IM PLICIT DOUBLE PRECISION ( A - H . O - Z )
PARAMETER(NMAX=1000)
DIMENSION A ( M , N ) , B ( M ) , D ( N ) , X 1 ( N ) , X 2 ( N ) , P 1 ( N M A X ) , P 2 ( N M A X )
COMMON /DASVOO/ P 1 , P 2
PARAMETER ( E P S I L N = 1 . D - 1 5 )
FRACT=ABS(FRAC)
I F( FRACT. L T . EPSILN) FRACT=EPSILN
SINM AX=DBLE(0.)
ALAM2=ALAM**2
ALAMP=ALAM*DBLE(0. 1 )
ALAMP2=ALAMP**2
DO 10 I =
1, N
SINMAX=MAX(SINMAX, D(I))
10 CONTINUE
SINMIN=SINMAX*FRACT
KK=N
DO 2 0 1 = 1 , N
I F ( D ( I ) . L E . S I N M I N ) THEN
KK=I - 1
GO TO 30
END I F
2 0 CONTINUE
3 0 CONTINUE
DO 4 0 I =
G=B(I)
1, M
I F ( I . L E . K K ) THEN
DEN1 =1 . / ( D( I ) * * 2 + AL AM2 )
528 Приложение А. Матричное исчисление
DEN2=1. / ( D ( I ) **2+ALAMP2)
P1(I)=G*D(I)*DEN1
P2(I)=G*D(I)*DEN2
ELSE
I F ( I . L E . N ) THEN
P1(I)=0.
P2(I)=0.
END I F
END IF
4 0 CONTINUE
DO 6 0 1 = 1 , N
X1(I)=0.
X2(I)=0.
DO 5 0 K=1, N
X1(I)=X1(I)+A(I,K)*P1(K)
X2(I)=X2(I)+A(I,K)*P2(K)
50
CONTINUE
6 0 CONTINUE
N=KK
END
A.19. Метод наименьших квадратов с ограничениями
На практике часто приходится сталкиваться с задачей (А.6.3)
г2 = (Ах - Ь)2 = min
(А.19.1)
E x = d.
(А.19.2)
при ограничениях вида
Здесь, как и раньше, А является матрицей размера m х n, а Е —матрица раз
мера £ х п. Далее мы ограничимся рассмотрением часто встречающегося на
практике случая
R ank-Б = i < п.
(А.19.3)
Задача нахождения экстремальных значений при ограничениях в большин
стве учебников решается с помощью метода множителей Лагранжа. Мы же
воспользуемся методом ортогональных преобразований. Представленный ни
же метод был разработан Л оусоном и Х а н со н ом [18]. Он основан на знании
базиса ядра матрицы Е. Для начала мы построим ортогональное разложение
матрицы Е вида (А.6.5), т. е. представим матрицу Е в виде
E = H R K T.
(А.19.4)
А .19.
Метод наименьших квадратов с ограничениями
529
Здесь ортогональная матрица К размера п х п по построению является объ
единением матрицы К\ размера п х £ и матрицы К 2 размера п х (гг —£), т. е.
К = ( К и К 2).
(А.19.5)
Согласно соотношениям (А.6.6) и (А.6.7), все решения уравнения (А. 19.2) име
ют вид
ж = К гр г + К 2р 2 = х + К 2р 2.
(А.19.6)
Здесь ж —это единственное решение уравнения (А.19.2) с минимальным абсо
лютным значением. Для краткости мы будем записывать это решение в виде
х — E+d (см. соотношение (А.11.3)). Вектор р 2— это произвольный (п - £)мерный вектор такой, что векторы К 2р 2 принадлежат ядру матрицы Е , т. е.
Е К 2р 2 = 0.
(А.19.7)
Таким образом, ограничения (А.19.2) означают, что вектор ж, при котором
выражение (А. 19.1) достигает минимума, принадлежит множеству векторов
вида ж, т. е.
( А х - Ь)2 = ( А ( х + К 2р 2 ) - b f
= ( А К 2Р 2 — (Ь — А х ) ) 2 = m in.
(А.19.8)
Таким образом мы перешли к задаче наименьших квадратов без ограничений,
а значит, мы можем для нее найти (п-^)-мерный вектор р 2. Выпишем решение,
воспользовавшись соотношением (А. 11.3). Оно будет иметь вид
р 2 - ( А К 2) + ( Ь - А х ).
(А.19.9)
В итоге, подставляя это выражение в соотношение (А.19.6), получаем, что ре
шение уравнения (А.19.1) при ограничениях (А.19.2) имеет вид
ж - ж + А+ (Ь - А х ) = E+d + К 2(А К 2)+(Ь - A E + d ) .
(А.19.10)
С помощью следующего алгоритма можно найти решение вида (А.19.10).
При этом в начале согласно соотношению (А.19.3) можно положить Н — L
Шаг 1. Найдем ортогональную матрицу К = (К \ , К 2) вида (А.19.5) такую,
что Е К — (Е
Е К 2) = (Ei, 0), где Е\ —нижнетреугольная матрица. Кроме
того, нужно вычислить А К = ( A K i, А К 2) = {А\, А 2).
Шаг 2. Найдем решение р г уравнения Е\р\ = d. Это можно легко сделать,
поскольку Ei является нижнетреугольной матрицей ранга £. Очевидно, что
при этом ж = KiPiШаг 3. Найдем вектор Ъ — b — А \ р г = b —А К\ K j x — Ь - А ж.
Шаг 4■Методом наименьших квадратов найдем решение р 2 для задачи без
ограничений вида (А2р 2 — Ь)2 — min [см. (А.19.8)].
530 Приложение А. Матричное
Х1
исчисление
Р и с . А , 7. Реш ение х дл я задачи из прим ера
А .5 л еж и т на прямой, задаваем ой уравнением
ограничения х\ 4- Х2 = 1.
Шаг 5. На основании результатов, полученных на втором и четвертом ша
гах, найдем решение задачи (А.19.1) при ограничениях вида (А. 19.2), которое
равно
КгЬ
К 2 Р2
Рассмотрим теперь простой пример, в котором задача с ограничениями ре
шается методом наименьших квадратов по приведенному выше алгоритму. Д а
лее мы также приведем программу для решения подобных задач.
Пример А.5. Решение задачи с ограничениями методом наименьших квадра
тов. Предположим, что выражение в соотношении (А. 19.1) имеет простой вид
г2 = х 2 — min и п — 2. Тогда m = n = 2, А = / и 6 = 0. Пусть уравнение
ограничения имеет вид х\ + Х2 = 1, т. е. пусть I — 1, Е = (1,1), d — L
Задача была подобрана таким образом, чтобы ее можно было решить на
глядно без сложных математических вычислений. Функция г — х 2 = х\ 4- х2
описывает параболоид в пространстве переменных (xi.X 2 ,z), минимум кото
рого находится в точке х\ — х-2 = 0. Однако нам не нужен минимум но всей
плоскости изменения переменных (х ьх г), а нужно найти минимум вдоль пря
мой х\ 4- Х2 = 1 (см. рис. А.7). Очевидно, что минимум находится в той точке
прямой, которая менее всего удалена от начала координат, т. е. находится в
точке Хх = Х2 — 1/2.
Безусловно, тот же самый результат мы могли бы получить и с помощью
изложенного выше алгоритма. При
мы бы получили, что Е\ — у/2, р, = 1 /\/2
А.19. Метод наименьших квадратов с ограничениями 531
Задачу {А2 Р 2 — Ь)2 = min мы бы решили методом нормальных уравнений
р2 = ( Д
а 2) - 1^
Ь = (л/2)—1 -0 = 0.
В итоге решение имело бы вид
Г )
\Р г/
-
л/2
1 -1
1
1
Программа А.43. Подпрограмма MTXLSC решает задачу {Ах —Ь)2 = min с ли
нейными ограничениями E x = d методом наименьших квадратов
К оманда вызова: CALL mtxlsc( a , b , e , d , x , r ,A2,m,N, l , frac ,0K)
В ходные параметры: А—матрица А размера ш х п
В —т- мерный вектор Ь
Е —матрица Е размера £ х п
D— мерный вектор d
А2 —рабочий массив, минимальный размер которого составляет т х (п —£)
М, N, L —размерности т, п, £
FEAC —тот же, что и в программе А.36
В ыходные параметры: X—n-мерный вектор х
R—значение минимизируемой функции г2
0К —та же, что и в программе А.36
SUBROUTINE MTXLSC(A,B,E,D,X,R,A2,M,N,L,FRAC, OK)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
DIMENSION A(M,N),B(M),E(L,N),D(L),X(N)
LOGICAL OK
PARAMETER(LMAX=1050,NMAX=1000)
DIMENSION UP(LMAX),BB(LMAX),A2(M,*),P2(NMAX),S(NMAX),V(NMAX)
common / dasvo2 / и р .в в .р г .э .у
С шаг 1
NMINL=N-L
DO 40 1=1,L
CALL MTXGRW(E,V,L,N,I)
CALL MTXHSD(V,UP(I),BB(I),N,1,1+1)
DO 20 J=I,L
CALL MTXGRW(E,S,L,N,J)
CALL MTXHST(V,UP(I),BB(I),S,N,1,1+1)
IFCJ.EQ.I .AND. N.GT.I) THEN
DO 10 K=I+1,N
S(K)=V(K)
10
CONTINUE
END IF
CALL MTXPRW(E,S,L,N,J)
532
П рилож ение А.
20
Матричное исчисление
CONTINUE
DO 3 0 J=1, M
CALL MTXGRW(A, S, M, N, J)
CALL M T X H S T ( V , U P ( I ) , B B ( I ) , S , N , 1 , 1 + 1 )
CALL MTXPRW( A, S, M, N, J)
30
CONTINUE
4 0 CONTINUE
С шаг 2
X ( 1 ) —D ( 1 ) /Е ( 1 , 1 )
I F ( L . G T . l ) THEN
DO 6 0 J = 2 , L
X(J)=D(J)
DO 5 0 K = 1 , J - 1
X(J)=X(J)-E(J,K)*X(K)
50
CONTINUE
X ( J ) = X ( J ) / Е ( J , J)
60
CONTINUE
END IF
С шаг 3
DO 8 0 J=1, M
DO 7 0 K=1 , L
B(J)=B(J)-A(J,K)*X(K)
70
CONTINUE
8 0 CONTINUE
С шаг 4
L 2=l
CALL MTXGSM(A, A 2 , M, N , M, NMINL, 1 , L + l )
CALL MTXSVD( A 2 , В , P 2 , R , M, NMINL, L 2 , FRAC, OK)
I F( OK) THEN
CALL MTXPSM(X, P 2 , N , 1 , NMINL, 1 , L + l , 1 )
DO 9 0 I = L , 1 , - 1
CALL MTXGRW( E , V , L , N , I )
90
CALL M T X H S T ( V , U P ( I ) , B B ( I ) , X , N , 1 , 1 + 1 )
CONTINUE
END IF
END
A.20. Примеры программ для выполнения простейших
операций
В с е п р о г р а м м н ы е ф а й л ы д о с т у п н ы в п о д д и р е к т о р и и \DATAN\EXASRC.
А. 20,
Примеры программ д ля выполнения простейших операций
533
А.20Л. Головная программа Е1МТХ для выполнения простейших
операций матричной и векторной алгебры и демонстрации работы
подпрограмм MTXTRA, MTXWRT, MTXADD, MTXSUB, MTXMLT, МТХМВТ,
МТХМАТ, MTXUNT, MTXZER, MTXMSC, MTXTRP, MTXCPV, MTXADV, MTXSBV,
MTXDOT, MTXMSV, MTXZRV
В массиве DATA этой программы содержатся матрицы
и векторы
Простейшие операции над этими матрицами и векторами можно выполнить с
помощью соответствующих подпрограмм. Полученные в результате матрицы и
векторы выводятся на экран с помощью модуля MTXWRT. К числу простейших
операций относятся следующие:
R = A,
z = w,
R —А 4~ В, ж~гл4-г>,
R — А — В, х = u — v,
R = АС,
d —U 'V ,
S = А В Т,
|и|,
s = |u|,
0.5и,
u
Т = А ТВ , хх == 0.5
—0.
R ~ L
х —
Д = 0.5А,
R = AT ,
А.20.2. Головная программа Е2МТХ для выполнения операций над
подматрицами и подвекторами и демонстрации работы подпрограмм
MTXGSM, MTXPSM, MTXGCL, MTXPCL, MTXGRW, MTXPRW, MTXGSV, MTXPSV
В массиве DATA этой программы содержатся матрицы
и векторы
534
П рилож ение А.
Матричное исчисление
В процессе работы этой программы сначала из матрицы А выделяется не
кая подматрица 5, а также некоторая подматрица матрицы А заменяется на
подматрицу D. Затем из матрицы А выделяются некий вектор-столбец и некая
вектор-строка, а потом они добавляются к матрице А . В заключение работы
программы из вектора и в соответствии с некоторым списком выбираются
элементы, из которых образуется вектор z, а элементы вектора w помещают
ся на определенные места (задаются в соответствии с некоторым списком) в
векторе и.
А.21. Примеры программ на ортогональные
преобразования
A.21.L Головная программа ЕЗМТХ для осуществления
преобразования Гивенса с помощью подпрограмм MTXGVD, MTXGVT и
MTXGVA
Сначала
в
массив
DATA
этой программы записываются два вектора
Затем с помощью модуля MTXGVD вычисляются и выводятся на экран с и s —па
раметры преобразования для вектора и . После этого с помощью модуля MTXGVT
осуществляется преобразование Гивенса с этими параметрами для вектора гх.
В результате находят вектор
В з а к л ю ч е н и е с п о м о щ ь ю м о д у л я MTXGVA в ы ч и с л я ю т с я п а р а м е т р ы с и
s
для
в е к т о р а гг, а за т е м о с у щ е с т в л я е т с я с о о т в е т с т в у ю щ е е п р е о б р а з о в а н и е э т о г о в е к
тора.
А.21.2. Головная программа Е4МТХ для осуществления
преобразования Хаусхолдера с помощью подпрограмм MTXHSD и
MTXHST
Сначала в массив
DATA
этой программы записываются два вектора
V—
1 ^
2
0
,
4
3
4 )
( 1 \
С=
2
0
4
3
4 /
полагаются равными п = 6,
мощью программы MTXHSD при заданных параметрах для вектора
г;
строится
А .22.
Примеры программ для решения матричных уравнений
535
преобразование Хаусхолдера. Далее с помощью двухкратного вызова модуля
MTXHST осуществляется построенное преобразование векторов v и с. Результа
ты выводятся на экран в буквенно-цифровом формате.
А.22. Примеры программ для решения матричных
уравнений
А.22.1. Головная программа Е5МТХ для решения матричных
уравнений методом Гаусса с помощью подпрограммы MTXEQU
Сначала в массив DATA этой программы записываются матрица
2
3 \
А=
2 1 -2
V 1 1
2 /
( 1
и единичная матрица В размера 3 x 3 . Затем с помощью модуля MTXEQU реша
ется матричное уравнение А Х = В, т. е. вычисляется матрица X, обратная к
А. Матрица А здесь взята из примера А.1. В этом примере алгоритм решения
задачи разобран по шагам.
А.22.2. Головная программа Е6МТХ для построения разложения
Холецкого и обращения матрицы с его помощью, а также для
демонстрации работы подпрограмм MTXCHL, MTXCHI и МТХСНМ
Сначала в массив DATA этой программы записываются матрицы
£=
/ 1
3
\
5
7 13 \
9 17
,
11 19 /
/1 1
С=
1 1
\ 1 1
и вычисляется симметричная положительно определенная матрица А =
В ТВ. Затем с помощью модуля MTXCHL строится разложение Холецкого вида
А — UTU, и на экран выводится треугольная матрица U. Умножение матрицы
UT на матрицу U действительно дает R = UTU = А. Далее с помощью мо
дуля МТХСНМ вычисляется матрица R = UC. В заключение с помощью модуля
MTXCHI методом Холецкого вычисляется матрица А-1 , обратная к матрице А.
Умножение ее на исходную матрицу А дает R = А А ~ Х = I.
А.22.3. Головная программа Е7МТХ для построения сингулярного
разложения с помощью подпрограммы MTXSVD
Эта коротенькая программа практически идентична программе Е5МТХ (см.
разд, А.22.1). Однако теперь обращение матрицы осуществляется с помощью
модуля MTXSVD. Кроме того, вычисляется и выводится на экран вектор остатков
г для матрицы X, обратной к матрице А размера 3 x 3 . Так как А является
матрицей полного ранга, то г = 0.
536
П рилож ение А. М атричное
исчисление
Во всех наших программах, в частности при решении задач методом наи
меньших квадратов и при минимизации функций, матричные уравнения прак
тически всегда решаются с помощью модуля MTXSVD. Однако для демонстрации
работы метода сингулярного разложения и ортогональных преобразований бо
лее подходящим является модуль MTXDEC. В следующем разделе приведена эта
программа для девяти различных типов матричных уравнений. Все эти задачи
можно было также решить с помощью модуля MTXSVD.
А.22.4. Головная программа Е8МТХ для решения матричных
уравнений девяти различных типов методом сингулярного
разложения с помощью подпрограммы MTXDEC
В разд. А.6 мы перечислили различные типы матричных уравнений вида
А х ~ Ь. Если матрица А имеет размер т х п, то возможны следующие ва
рианты: т ~ п (тип №1), т > п (тип №2) и т < п (тип №3). Дальнейшее раз
биение на типы производится в зависимости от ранга матрицы А. Если ранг
к матрицы А удовлетворяет условию к ~ min(m, п), то это уравнение типа
1а (или 2а, или За соответственно). Если же к < min(m,n), то такие уравне
ния относятся к типу lb (или 2Ь, или ЗЬ соответственно). Ранг матрицы равен
числу ее ненулевых сингулярных значений. В процесе вычислений (точность
которых всегда конечна) всегда приходится уточнять, что мы подразумеваем
под понятием «ненулевые». Для того чтобы это сделать, можно воспользовать
ся методом анализа сингулярных значений (см. разд. А. 14), в соответствии с
которым сингулярное значение следует полагать равным нулю в случае, если
оно меньше, чем величина, равная максимальному сингулярному значению,
умноженному на некоторый коэффициент / . Количество оставшихся ненуле
вых сингулярных значений называется псевдорангом матрицы. Поэтому кроме
описанных шести типов уравнений мы будем выделять еще три типа: 1с, 2с и
Зс. Для них матрица А является матрицей полного ранга, но не является при
этом матрицей полного псевдоранга.
Данная программа состоит из двух вложенных циклов. Внешний цикл со
ответствует перебору типов 1, 2, 3, а внутренний —вариантов а, Ь, с. В любом
случае матрица А состоит из отдельных векторов. При варианте b два из них
полагаются равными между собой. В случае с все компоненты этих векторов
совпадают, за исключением одной. Эта компонента для одного вектора отли
чается на е от значения для другого вектора. В случае № 3 система линейных
уравнений, задаваемая матричным уравнением Ах — 5, имеет меньше уравне
ний (т ), чем неизвестных (гг). Этот случай не встречается на практике и по
этому он выходит за рамки программ MTXSVD и MTXDEC. Здесь он моделируется
следующим образом. В случае №3 при т — 2 и п — 3 матрица А достраива
ется до матрицы размера 3 x 3 путем добавления новой строки, все элементы
которой равны нулю. При этом т уже полагается равным 3.
Для всех типов уравнения с помощью модуля MTXDEC строится сингулярное
разложение матрицы А, т. е. А — U S V T . Затем на экран выводятся исходная
А .22.
Примеры программ для решения матричных уравнений
537
матрица А , ее псевдообратная матрица X, вектор остатков г, вектор d, компо
ненты которого являются диагональными элементами матрицы 5, т. е. вектор
упорядоченных сингулярных значений, а также матрицы преобразований U и
V. Для проверки справедливости построенного разложения вычисляется так
же результат произведения матриц U S V T \ он должен быть равен исходной
матрице А. Если в результате сингулярного анализа данных получается, что
одно или несколько сингулярных значений меньше, чем максимальное сингу
лярное значение, умноженное на коэффициент / , то они полагаются равными
нулю. Затем для модифицированной соответствующим образом диагональной
матрицы 5 вычисляется матрица U S V T .
Подробно изучая результаты, полученные для различных типов матричных
уравнений, легко можно проверить утверждения, сделанные относительно со
ответствующих значений остатков в табл. А.1. (При этом не нужно принимать
во внимание третью компоненту вектора г для случая №3, поскольку она не
появилась бы, если бы не была добавлена лишняя строка к матрице А.)
В программах MTXSVD и MTXDEC коэффициент / , используемый в процессе
анализа сингулярных значений (имя этой переменной в программах FRACT), по
лагается равным / = 10—15, если значение, заданное пользователем было равно
нулю. В этом случае в нашем примере варианты 1с, 2с, Зс были бы разрешимы,
если бы матрица А имела полный ранг вне зависимости от значения е = 10“ 12.
Однако в нашем примере программы анализ сингулярных значений уменьшает
количество ненулевых сингулярных значений, так как мы задали / = 10~10.
Упомянутые выше числовые данные соответствуют высокой устойчивости
метода анализа сингулярных значений.
А.22.5. Головная программа Е9МТХ для демонстрации работы
подпрограммы MTXMAR
Модуль MTXMAR будет редко использоваться сам по себе. Он был написан как
подпрограмма для модулей LSQMAR и MINMAR. Для полноты мы приведем здесь
коротенькую головную программу, использующую этот модуль. С помощью
этой программы решается задача А х яз Ь в модификации вида (А. 18.3) при
Ai — А и А2 = А/10, а также заданных А, b и А, а затем на экран выводятся
полученные в результате векторы х \ и Х 2 -
А.22.6. Головная программа Е10МТХ для нахождения решения задачи
с ограничениями методом наименьших квадратов с помощью
программы MTXLSC
С помощью этой программы решается задача из примеров 9.9 и 9.10, т. е. по
результатам измерений х\ = 89, х2 = 31, хз = 62 углов треугольника при
условии х\ + Х2 + Хз = 180 оцениваются истинные значения этих углов. Для
538 Приложение А. Матричное исчисление
этого выражение (Ах —Ь)2 минимизируется при условии E x = d, где
/ 1 0 0 \
А=
0 1 0
,
\ 0 0 1J
/ 89 \
Ь=
31
,
\ 62 /
Е = (1,1,1),
d = 180.
Матрицы и векторы А, Ь. Е и d содержатся в массиве данных программы.
Решение ищется с помощью модуля MTXLSC. Безусловно, полученный результат
совпадает с результатами, найденными в указанных примерах.
Приложение В
Комбинаторика
Рассмотрим п различных объектов а\ , аг, . ■.. оп. Попытаемся найти
число способов, которыми можно разместить к из них на к местах. Это число
называется числом размещений. К примеру при п = 4, к = 2 существуют
следующие варианты размещений:
О]. 0 2 ,
CL1CL3,
0404,
a 2a l,
O2O3,
O 2O 4 ;
O3O1,
O3O2,
0304,
O 4O 1,
0402,
0403,
а значит,
= 12. В общем случае ответ к этой задаче можно получить при
помощи следующих рассуждений. Существует п способов выбора первого эле
мента (элемента, который будет стоять на первом месте). После того как первое
место будет занято, в исходном списке останется всего п —1 объект, поэтому
второй объект (который будет стоять на втором месте) можно выбрать п —1
способом и т. д. В итоге получаем, что
р£ — n (n - l)(n - 2) ■• ■(n —k 4-1).
(В.1)
Это выражение можно также переписать в виде
n
{n-k)V
(В.2)
(В.З)
Зачастую при размещении к объектов порядок элементов бывает не важен (к
объектов можно к\ способами расставить на к местах). При этом интерес пред
ставляет число способов, которыми можно выбрать к объектов среди п объ
ектов. Это число называется числом сочетаний. Число возможных сочетаний
к элементов из п равно
(В.4)
Биномиальные коэффициенты (£) удовлетворяет простому рекуррентному со
отношению
(В-5)
540
Комбинаторика
П рилож ение В,
п
\к)
0
1
2
3
1
1
1
1
1
б
1
i
1
8
/
0
/
1
15
21
7
1
3
1
4
10
5
б
1
6
4
1
5
2
3
1
4
1
10
20
35
1
5
15
21
35
1
б
7
8
28
56
70
56
28
8
/
/
3
/
4
/
5
/
/
/
2
б
7
8
Р и с . В . 1 . Треугольник П аскаля.
которое легко можно доказать путем несложных вычислений:
(тг —1)!
(
(п —1)!
+
к\(п — к — 1)1 (к — l)!(n —fc)!
(п —к)(п —1)! + к(п —1)!
fc!(n —к)\
П!
к\(п —fc)!
Эта рекуррентная формула лежит в основе знаменитого треугольника Па
скаля, который изображен на рис. В.1. Название «биномиальный коэффици
ент» позаимствовано из известной теоремы о биноме Ньютона
(в+ ч п = Ё
0 а‘г ‘ .
м
к= 0 ' '
доказательство которой (оно осуществляется по индукции) мы оставляем чи
тателю. Мы воспользуемся биномом Ньютона, чтобы доказать одно важное
свойство коэффициента (£). Для этого выпишем бином при Ь = 1, т. е.
( а + 1 )" = £ ( " ) < . * ,
к—0 \
а затем сделаем это еще раз и получим, что
(a + l ) n+m = (a + l ) n ( a + l ) m ,
n+m
Е
п+т
,
е
, а' = Е
з=о
п
а-
Е
к=О
т
а
,к ,
Если сопоставить коэффициенты, стоящие перед а*, то в результате мы полу
чим, что
(В.7)
Приложение С
Формулы и программы для
различных статистических функций
С Л. Биномиальное распределение
Мы приведем здесь две подпрограммы для вычисления вероятностей биноми
ального распределения (5.1.3)
(C .l.l)
и д л я в ы ч и сл ен и я ф у н к ц и и р а с п р е д е л е н и я
Р( к < К ) = Т Г W£.
(С.1.2)
Для обеспечения численной устойчивости при вычислениях используется ло
гарифм гамма-функции Эйлера (программа D.2).
Программа С Л.
Ф у н к ц и я SDBINM в ы ч и сл я ет в е р о я т н о ст ь д л я б и н о м и а л ь н о г о
распределени я
К ом анда вы зо в а :
f =s d b i n m ( k , n , p
)
В х о д н ы е п а р а м е т р ы : к , N , P —параметры к ,п,р из формулы (С.1.1)
ВЫХОДНОЙ ПАРАМЕТР: значение функции SDBINM — вероятность (С.1.1)
DOUBLE PRECISION FUNCTION SDBINM( К , N , P )
IMPLICIT DOUBLE PRECISION ( A - H , 0 - Z )
PARAMETER(ZER0=0. DO, 0NE=1. DO, SMALL=. 0001D0, BIG=100D0)
AK=DBLE(K)
AN=DBLE(N)
IF(N.LT.l
.OR. K. LT. O
.OR. K. GT. N) THEN
SDBINM=ZERO
ELSE
ALBINC=GLNGAM( AN+ONE)-GLNGAM( AK+ONE)-GLNGAM( AN-AK+ONE)
I F ( P . L E . Z E R O) THEN
I F ( K . E Q . O ) THEN
SDBINM=ONE
ELSE
SDBINM=ZERO
END IF
ELSE I F ( P . GE . ON E ) THEN
54 2
П рилож ение
С. Ф ормулы и программы для статистических функций
IF(K.EQ.N) THEN
SDBINM=ONE
ELSE
SDBINM=ZERO
END IF
ELSE
ALFACT=LOG(P)*AK+L0G(ONE-P)* ( AN-AK)
ARG=ALFACT+ALBINC
ABSARG=ABS(ARG)
IF(ABSARG.LT.SMALL) THEN
SDBINM=ONE
ELSE IF(ABSARG. GT.BIG) THEN
SDBINM=ZERO
ELSE
SDBINM=EXP( ARG)
END IF
END IF
END IF
END
Программа C.2. Функция SCBINM вычисляет значение функции распределения
для биномиального распределения
К оманда вызова: f =scbinm ( k , n , p )
Входные
параметры : K,N,P —параметры К , п , р
из формулы (СЛ.2)
В ы х о д н о й параметр: значение функции SCBINM —функции распределения
из формулы (С.1.2)
DOUBLE PRECISION FUNCTION SCBINM(К,N,P)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
S=DBLE(0.)
IF(K.GT.O) THEN
DO 10 J=0,K-1
S=S+SDBINM(J,N,P)
10
CONTINUE
END IF
SCBINM=S
END
C.2. Гипергеометрическое распределение
С помощью двух следующих программ вычисляются вероятности для гипер
геометрического распределения (5.3Л)
С .2.
Гипергеометрическое распределение
543
и соответствующая функция распределения
b J -i
p {k < k ') =
(C.2.2)
Y , w k.
fc=0
Программа С.З. Функция SDHYPG вычисляет вероятность для гипергеометри
ческого распределения
К оманда
В ходные
вызова: f =sdhypg( k , n , kk , nn)
параметры :
К,N,KK,NN—параметры k,n,K,N из формулы
(С.2.1)
В ы ходной ПАРАМЕТР: значение функции SDHYPG—вероятность (С.2.1)
DOUBLE PRECISION FUNCTION SDHYPG(К,N,KK,NN)
IMPLICIT DOUBLE PRECISION(A-H.O-Z)
PARAMETER(ZER0=0. DO, 0NE=1. DO)
AN=DBLE(N)
ANN=DBLE(NN)
AK=DBLE(K)
AKK=DBLE(KK)
AL=AN-AK
ALL=ANN-AKK
IFCAK.LE.AKK .AND. AN.LE.ANN .AND. AL.LE.ALL) THEN
A=GLNGAM(AKK+ONE)-GLNGAM(AK+ONE)-GLNGAM(AKK-AK+ONE)
B=GLNGAM(ANN+ONE)-GLNGAM(AN+ONE)-GLNGAM(ANN-AN+ONE)
C=GLNGAM(ALL+ONE)-GLNGAM(AL+ONE)-GLNGAM(ALL-AL+ONE)
SDHYPG=EXP(A+C-B)
ELSE
SDHYPG=ZERO
END IF
END
Программа C.4. Функция SCHYPG вычисляет значение функции распределения
для гипергеометрического распределения
К оманда
вызова: F=SCHYPG(K,n ,KK,nn)
В ходные
параметры:
К, N,KK,NN—параметры k'.n,K,N из формулы
(С-2.1)
В ы ходной
ПАРАМЕТР: значение функции
SCHYPG —функция
(С.2.2)
DOUBLE PRECISION FUNCTION SCHYPG(К,N,KK,NN)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
PARAMETER(ZER0=0.DO)
распределения
544
П рилож ение С.
Формулы и программы д ля статистических функций
SCHYPG = ZERO
IF(K.GT.O) THEN
DO 10 J=0,K-1
SCHYPG = SCHYPG + SDHYPG(J,N,KK,NN)
10
CONTINUE
END IF
END
C.3. Распределение Пуассона
С помощью следующих двух программ вычисляются вероятности для распре
деления Пуассона (5.4.1)
f(k;\) = ^ e ~ x
(С.3.1)
и значение соответствующей функции распределения
К -1
P(k<K)=y^f(k-X).
fc=0
(С.3.2)
Программа С.5. Функция SDP0IS вычисляет вероятность для распределения
Пуассона
К о м а н д а в ы з о в а : F=SDP0IS (К, ALAMBD)
В х о д н ы е п а р а м е т р ы : К, ALAMBD—параметры /с, А из формулы (С.3.1)
Вы ходной
парам етр:
значение функции SDPOIS —вероятность (С.3.1)
DOUBLE PRECISION FUNCTION SDPOIS(К,ALAMBD)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
SDPOIS-EXP(-ALAMBD)
IF (K.GT.O) THEN
DO 10 J=1,K
SDP01S=SDP 01S *ALAMBD/DBLE(J )
10
CONTINUE
END IF
END
Программа C.6. Функция SCPOIS вычисляет значение функции распределения
для распределения Пуассона
К о м а н д а в ы з о в а : F=SCP0IS(К ,ALAMBD)
В х о д н ы е п а р а м е т р ы : к, ALAMBD—параметры К, А из формул (С.3.2) и
(С.3.1)
С.З. Распределение Пуассона 545
В ы х о д н о й параметр :
значение функции SCPOIS —функции распределения
(С.3.2)
DOUBLE PRECISION FUNCTION SCPOIS(K,ALAMBD)
IMPLICIT DOUBLE PRECISION(A-H.O-Z)
PARAMETER(ZER0=0.DO)
SCPOIS = ZERO
IF(K.GT.O) THEN
DO 10 J=0,K~1
SCPOIS=SCPOIS+SDPOIS(J,ALAMBD)
10
CONTINUE
END IF
END
Значения величин f(k; А) и F(K; А) зависят не только от значений пара
метров к и К (дискретных переменных), но также от значения параметра Л
(непрерывной переменной). При заданном Р существует некоторое значение
параметра Ар, которое удовлетворяет равенству (С.3.2). Эту величину можно
обозначить как квантиль
А = АР(К)
(С.3.3)
распределения Пуассона.
Программа С.7. Функция SQP0IS вычисляет значение квантили для распреде
ления Пуассона
К оманда вызова: f =SQP0IS(k , p )
Входные параметры: к —К
Р —вероятность Р
В ы ходной
ПАРАМЕТР: значение функции SQP0IS— квантиль Ар (см.
(С .3 .3 ))
DOUBLE PRECISION FUNCTION SQP0IS(K,P)
IMPLICIT DOUBLE PRECISI0N(A-H,0-Z)
PARAMETER(ZER0=0.DO,0NE=1.DO,BIG=1.DIO,EPSILN=1. D-8)
EXTERNAL SZPOIS
С граница разброса
IF(P.GE.ONE) SQP0IS=BIG
IF(P.LE.ZERO) SQP0IS=ZER0
С нормальный разброс
IF(P.LT.0NE .AND. P.GT.ZERO) THEN
X0=ZER0
X1=DBLE(K)
CALL AUXZBR(X0,X1,SZPOIS,P,K,0)
CALL AUXZFN(X0, XI, XZERO, SZPOIS, P. К,0 .EPSILN)
546 Приложение С. Формулы и программы для статистических функций
SQP0IS=XZER0
END IF
END
С----------------------------------------------------------------------------------------------------DOUBLE PRECISION FUNCTION SZP0IS(ALAMBD,P,K,NDUM2)
С возвращает значение P минус значение функции распределения
IMPLICIT DOUBLE PRECISI0N(A-H,0-Z)
SZPOIS=P-SCPOIS(K,ALAMBD)
END
C.4. Нормальное распределение
Плотность распределения вероятностей для стандартного нормального рас
пределения имеет вид
(С.4.1)
Программа С.8. Функция SDSTNR вычисляет значение плотности распределе
ния вероятностей для стандартного нормального распределения
К о м а н д а в ы з о в а : f =SDSTnr ( x)
В х о д н о й ПАРАМЕТР: X—переменная х из формулы (С.4.1)
ВЫХОДНОЙ ПАРАМЕТР: значение функции SDSTNR—значение плотности
распределения (С.4.1)
DOUBLE PRECISION FUNCTION SDSTNR(X)
IMPLICIT DOUBLE PRECISI0N(A-H,0-Z)
PARAMETER (F=0.39894228D0,HALF-0.5D0, BIG=500.D0)
ARG=-HALF*X**2
IF (ABS(ARG). GE. BIG) THEN
SDSTNR=DBLE( 0 .)
ELSE
SDSTNR=F*EXP(ARG)
END IF
END
Плотность нормального распределения со средним
xq и
дисперсией
а2
равна
(С.4.2)
Ее легко можно выразить в терминах плотности нормированной величины
х —х 0
а
(0.4.3)
С .4.
Нормальное распределение
547
И с п о л ь з у я со о тн о ш ен и е ( С .4 .1 ) , п о л у ч а е м , ч т о
ф(х)
-ф о(и).
(С .4.4)
(7
П рограмма С.9. Функция SDN0RM вычисляет значение плотности распределе
ния для нормального распределения
К ом анда
в ы зо в а : F=SDNORM(x , x o ,SIGMA)
В ходные
п а р а м е т р ы : X — независим ая переменная х из соотнош ения
(С .4.2)
ХО,SIGMA — среднее хо и стандартное отклонение а из ф орм улы (С .4.2)
Выходной
ПАРАМЕТР: значение ф ункции SDN0RM — значение плотности
распределения (С .4.2)
DOUBLE PRECISION FUNCTION SDN0RM(X,X0,SIGMA)
IMPLICIT DOUBLE PRECISION(A-H.O-Z)
PARAMETER(0NE=1. DO)
S1=0NE/SIGMA
U =(X -X 0)*S1
SDN0RM=S1*SDSTNR(U)
END
Функция распределения д л я стандартного норм ального распределения
Фо(х) =
J
ф0(х) d x =
-J==j
exp
dx
( С .4 .5 )
р а в н а и н тегр ал у, зн ач ен и е ко то р о го н ево зм о ж н о н ай ти в ан ал и ти ч еско м ви д е.
О д н ак о его м о ж н о в ы р а з и т ь в т е р м и н а х н еп олн ой га м м а -ф у н к ц и и , о п и сан н о й
в р а з д . D .5 .
С о г л а с н о с о о т н о ш е н и ю ( С .4 .5 ) ф у н к ц и я р а с п р е д е л е н и я д л я н о р м а л ь н о г о
р а с п р е д е л е н и я со с р е д н и м
xq
и
а2 р а в н а
ди сп ерси ей
Ф(х) = Фо(и),
и= —
— .
( С .4 .6 )
(7
В ведем теперь функцию ошибок (интеграл вероятности ошибок ), которая
имеет вид
erf (я) = - 7=
/
е “ *2 eft,
х > 0.
(С .4.7)
V 71 Jo
С о п о с т а в л я я э т о в ы р а ж е н и е с о п р е д е л е н и е м н е п о л н о й г а м м а - ф у н к ц и и ( D .5 .1 ) ,
м ы п о л уч ае м , что
2
rU — X
и Л' 2du,
e rf(x ) =
Щ ) ' и =0
e rf(x ) =
Р
6
( С .4 .8 )
548
Приложение С. Формулы и программы для статистических функций
С о д н о й с т о р о н ы , в ы р а ж е н и я ( С . 4 . 6) и ( С . 4 .7 ) у д о в л е т в о р я ю т с л е д у ю щ е м у с о
отнош ению :
или
т. e.
( C .4 .9 )
Программа С .10. Функция SCSTNR вы числяет значение функции распределе
ния дл я стандартного норм ального распределения
К ом анда
в ы з о в а : f =SCSTNR(X)
Входной п а р а м е т р : X — х и з ф о р м у л ы ( С А Б )
Выходной ПАРАМЕТР: значение ф ункции SCSTNR— значение
функции
распределения (С .4.5)
DOUBLE PRECISION FUNCTION SCSTNR(X)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
PARAMETER (0N E =1.D 0, ZER0=0.D0, HALF=0.5D0)
ARG=HALF*(X**2)
S=0NE
IF(X.LT.ZERO) S=-0NE
F=GINCGM(HALF, ARG)
SCSTNR=HALF*(0NE+S*F)
END
Программа C . l l . Ф ункция SCNORM вы числяет значение функции распределе
ния дл я нормального распределения
К о м анда
в ы зо в а : F=SCN0RM(xД О , SIGMA)
Входные
п а р а м е т р ы : X — независим ая переменная
х из ф орм улы ( С .4 .6 )
ХО,SIGMA— среднее хо и стандартное отклонение а из форм улы ( С .4 .6 )
Выходной
ПАРАМЕТР: з н а ч е н и е ф у н к ц и и
SCNORM— з н а ч е н и е
р а с п р е д е л е н и я ( С .4 .6 )
DOUBLE PRECISION FUNCTION SCNORM(X Д О ,SIGMA)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
U=(X-X0)/SIGMA
SCNORM=SCSTNR(U)
END
ф ункции
С .4.
Нормальное распределение
549
В заклю чение вычислим значения квантилей стандартного нормального
распределения. При заданн ой вероятности Р квантиль х р м ож но определить
из соотнош ения
( С .4 .1 0 )
Б удем искать квантиль распределения как нуль ф ункции
к ( х ,Р ) = Р - Ф 0(х)
( С .4 .1 1 )
с помощью метода из разд. Е .2.
Программа С.12. Ф ункция SQSTNR вы числяет значение квантили стандартного
нормального распределения
К ом анда
в ы з о в а : f =sq stn r ( p )
Входной п а р а м е т р : Р — вероятность Р
Выходной п а р а м е т р : значение ф ункции
SCSTNR — значение квантили х р
DOUBLE PRECISION FUNCTION SQSTNR(P)
IMPLICIT DOUBLE PR EC ISI0N (A -H ,0-Z)
PARAMETER(ВIG =1. DIO, E PSIL N =lD -8, 0NE=1. DO, ZER0=0. DO, HALF=. 5D0)
EXTERNAL SZSTNR
С границы р а зб р о с а
IF(P.GE.QNE) SQSTNR=BIG
IF(P.LE.ZERQ) SQSTNR=-BIG
С нормальный р а зб р о с
IF(P.LT.QNE .AND. P.GT.ZERO) THEN
X0=ZERQ
X1=DBLE(0.1 )
CALL AUXZBR(X0,X1,SZSTNR,P,0 ,0 )
CALL AUXZFN(X0,X1 , XZERO, SZSTNR, P , 0 , 0 , EPSILN)
SQSTNR=XZERO
END IF
END
c --------------------------------------------------------------------------------------------------------------------------------------------
DOUBLE PRECISION FUNCTION SZSTNR(X,P,NDUM1,NDUM2)
С возвращ ает зн ач ен и е P минус зн ач ен и е функции стан дар тн ого нормального
С р асп ределен ия в точ к е X
IMPLICIT DOUBLE PR EC ISI0N (A -H ,0-Z)
SZSTNR=P-SCSTNR(X)
END
Квантиль х р и вероятность Р дл я нормального распределения со средним
Хо и стандартным отклонением <т равны
Р = Ф0(ир),
Хр ~ Xо
+ сгup.
( С - 4 .1 2 )
550
Приложение С. Формулы и программы для статистических функций
П рограмма С.13. Функция SQN0RM вы числяет значение квантили нормального
распределения
К ом анда
в ы зо в а : f = sqnorm ( p д о , s igma )
В ходные
п а р а м е т р ы : Р — вероятность
Р
ХО, SIGMA — среднее хо и стандартное отклонение a
Выходной
п а р а м е т р : значение ф ункции SQN0RM — значение квантили
хр
DOUBLE PRECISION FUNCTION SQN0RM(PД О , SIGMA)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
U=SQSTNR(P)
S QN0RM=U* SIGMA+XO
END
C.5. Хи-квадрат распределение
С помощью следую щ ей программы вы числяется значение плотности распре
деления (6.6.10) для хи-квадрат распределения с п степенями свободы
Дх2) = 2ЩлТ(х2)Л“1еЧх2’
Л= Т
(с-5>1)
П рограмма С .14. Функция SDCHI2 вы числяет значение плотности хи-квадрат
распределения
К о м анда
в ы з о в а : F=SDCHI2(X,N)
В ходные
п а р а м е т р ы : X — независим ая переменная х 2 из форм улы (С .5.1)
N — число степеней свободы п
Выходной
ПАРАМЕТР: значение ф ункции SDCHI2 — значение плотности
распределения (С .5.1)
DOUBLE PRECISION FUNCTION SDCHI2(X,N)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
PARAMETER (0N E =1.D 0, ZER0=0.D0, HALF=0.5D0, TW0=2.D0)
IF(X.NE.ZERO .OR. N .G T .2) THEN
B=GGAMMA(HALF*DBLE(N))*SQRT(TWO**N)
C=SQRT(X**(N-2))
E=EXP(-X*HALF)
SDCHI2=E*C/B
ELSE
IF(N.EQ.2) SDCHI2=HALF
IF(N.Eq.l) SDCHI2 =1 .D10
END IF
END
С . 5. Хи-квадрат распределение
551
И з ф о р м у л ы ( D .5 .1 ) с л е д у е т , ч т о ф у н к ц и я р а с п р е д е л е н и я
(С .5.2)
равна неполной гамма-функции
(С .5.3)
Программа С Л 5. Ф ункция SCCHI2 вы числяет значение функции распределе
ния хи-квадрат
F=SCCHI2(x , n)
К ом анда
в ы зо в а ;
В ходные
п а р а м е т р ы : X — независим ая переменная %2
N — число степеней свободы п
Выходной
ПАРАМЕТР: значение функции SCCHI2 — значение функции
распределения (С .5.2)
DOUBLE PRECISION FUNCTION SCCHI2(X,N)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
PARAMETER (HALF=0.5D0)
A=HALF*DBLE(N)
SCCHI2=GINCGM( A, HALF*X)
END
Квантиль x p
2 дл я хи-квадрат распределения при заданном значении веро
ятности Р равна нулю ф ункции /г(х2), т. е.
h ( x 2p ) - p - F ( x 2p ) = 0.
(C.5.4)
Программа С Л 6. Ф ункция SQCHI2 вы числяет значение квантили хи-квадрат
распределения
К ом анда
в ы з о в а : f =s q c h i2 ( p , n )
В ходные
п а р а м е т р ы : Р — вероятность
Р
N — число степеней свободы п
Выходной
п а р а м е т р : значение ф ункции SQCHI2 — значение квантили
DOUBLE PRECISION FUNCTION SQCHI2(P,N)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
PARAMETER (B IG =1D 10,0N E =1.D 0, ZERO=O.DO)
EXTERNAL SZCHI2
С границы р а зб р о с а
Хр
552
Приложение С. Формулы и программы для статистических функций
IF(P.GE.ONE) SQCHI2=BIG
IF(P.LE.ZERO) SQCHI2=ZER0
С нормальный р а зб р о с
I F ( Р . LT. ONE .AND. P.GT.ZERO) THEN
X1=DBLE(N)
X0=DBLE(0.5)*X1
CALL AUXZBR(XO, X I , SZCHI2, P ,N ,0 )
CALL AUXZFN(XO, X I , XZERO, SZ C H I2,P,N ,0,E PSIL N )
SQCHI2=XZER0
END IF
END
c ------------------------------------------------------------------------------------------------------------------------------------------
DOUBLE PRECISION FUNCTION SZCHI2(X, P ,N ,NDUM)
С возвращ ает зн ач ен и е P минус зн ач ен и е х и -к в а д р а т расп ределен и я с
С параметром N в точк е X
IMPLICIT DOUBLE PRECISION(A-H.O-Z)
SZCHI2=P-SCCHI2(X, N)
END
C.6. F -распределение
С
п ом ощ ью
следую щ ей
п р о гр ам м ы
вы чи сляется
зн ач ен и е
для
п ло тн ости
.Р - р а с п р е д е л е н и я ( 8 .2 .3 ) , ч и с л а с т е п е н е й с в о б о д ы к о т о р о г о р а в н ы Д и Д ,
/(F) =
-i(/l+ /2 )
f x \ i h Щ Ь + Ь ))
h)
r{\h)n\h)
1+fi F .
(C.6.1)
П рограмма C.1T. Функция SDFTST вы числяет значение для плотности F -p a cпределения
К о м анда
в ы зо в а : f =SDFTST(x , n f i ,NF2)
В ходные
п ара м етры : X — н е з а в и с и м а я п е р е м е н н а я
F
и з ф о р м у л ы ( С . 6 .1 )
NF1 ,N F 2— ч и с л а с т е п е н е й с в о б о д ы Д , Д
ВЫХОДНОЙ ПАРАМЕТР: з н а ч е н и е ф у н к ц и и SDFTST — з н а ч е н и е п л о т н о с т и
р а с п р е д е л е н и я ( С . 6. 1 )
DOUBLE PRECISION FUNCTION SDFTST(X , NF1,NF2)
IMPLICIT DOUBLE PRECISION(A-H,0-Z)
PARAMETER (0N E =1.D 0, HALF=0.5D0, ZER0=0.D0)
AF1=DBLE(NF1)
AF2=DBLE(NF2)
AF12=HALF*AF1
AF22=HALF*AF2
AFS2=AF12+AF22
IF(X.LE.ZERO) THEN
С.6. F -распределение
553
SDFTST=ZERO
ELSE
AL=AF12*L0G(AF1/AF2)-AFS2*LOG(ONE+AF1*X/AF2)+ (A F12-0N E)*
+
L0G(X)+GLNGAM(AFS2)-GLNGAM(AF12)-GLNGAM(AF22)
SDFTST-EXP(AL)
ENDIF
END
Ф ун кц и ю р асп р едел ен и я
£ (1 (Л + М Ш
1 ' nhfWkh) \h)
F
!Л
JT-i/i—1
о
f
\-h(fi+h)
(С.6.2)
1+ T/)
с пом ощ ью за м е н ы
t=
.......
Ь + fiF ’
И =
/ 1 /2
|dF|
(Л + h F Y
м о ж н о представить в виде
F(F) =
в (У и Ш ^ /2+/1^
(1
( С .6 .3 )
= 1 ~ I f2/(f2 + f l F) ( |/ 2 , |Л ) ,
т. е . о н а я в л я е т с я
ф ун кц и ей
о т н еп олн ой б ета-ф у н к ц и и
(с м . со о тн о ш ен и е
( D .6 .1 ) ) .
Программа С.18. Ф ункция
SCFTST
вы числяет
значение
дл я
ф ункции
F - распределения
: F=SCFTST(X,NF1,NF2)
К
оманда
вызова
В
ходные
параметры
: X — независимая переменная F из ф о р м у л ы (С.6.1)
NF1 ,NF2 — числа степеней свободы /х,/2
Выходной парам етр : значение ф ункции SCFTST — значение ф ункции
распределения (С .6.2)
DOUBLE PRECISION FUNCTION SCFTST(X,NF1,NF2)
IMPLICIT DOUBLE PR EC ISI0N (A -H ,0-Z)
PARAMETER (0N E =1.D 0, HALF=0.5D0)
ARG=DBLE(NF2)/ (DBLE(NF2)+DBLE(NF1)*X)
A=HALF*DBLE(NF2)
B=HALF*DBLE( NF1)
SCFTST=ONE-GINCBT( A, В , ARG)
END
Квантиль Fp д л я ^ -р асп р едел ен и я при заданной вероятности Р равна нулю
функции
h( F) = P - F ( F ) .
( С . 6 .4 )
554
Приложение С. Формулы и программы для статистических функций
П рограмма С .19. Функция SQFTST вычисляет значение для квантили F -p a cпределения
К ом анда
в ы зо в а : f = s q f t s t ( p , n f i , n f 2)
В ходные
п а р а м е т р ы : Р — вероятность
Р
NF1, NF2 — числа степеней свободы Д , Д
Выходной ПАРАМЕТР: значение ф ункции SQFTST — значение квантили F p
DOUBLE PRECISION FUNCTION SQFTST(P,N1,N 2)
IMPLICIT DOUBLE PR EC ISI0N (A -H ,0-Z)
PARAMETER (BIG=1D10, E PSIL N =lD -6, 0NE=1.D0, ZER0=0.D0)
EXTERNAL SZFTST
С границы р а зб р о с а
IF(P.GE.ONE) SQFTST=BIG
IF(P.LE.ZERO) SQFTST=ZERO
С нормальный р а зб р о с
X0=ZER0
X1=P
I F ( P . LT.ONE .AND. P.GT.ZERO) THEN
CALL AUXZBR(XO Д 1 , SZFTST, P ,N 1,N 2)
CALL AUXZFN(XO Д 1 , XZERO, SZFTST, P ,N 1 ,N 2 ,EPSILN)
SQFTST=XZERQ
END IF
END
c --------------------------------------------------------------------------------------------------------------------------------------------
DOUBLE PRECISION FUNCTION SZ FT ST(X ,P,N 1,N 2)
С возвращ ает зн ач ен и е P минус зн ач ен и е функции F-р а сп р ед ел ен и я в
С точке X с параметрами (N 1,N 2)
IMPLICIT DOUBLE PR EC ISI0N (A -H ,0-Z)
SZFTST=P-SCFTST(X,N 1,N 2)
END
C.7. ^-распределение
С пом ощ ью сл ед ую щ ей п р о гр а м м ы в ы ч и с л я е т с я зн ач ен и е п л о тн о сти р ас п р е
д е л е н и я ( 8 .3 .7 ) д л я ^ - р а с п р е д е л е н и я С т ь ю д е н т а с / с т е п е н я м и с в о б о д ы
( С . 7 .1 )
С .7.
t-распределение
555
Программа С . 20. Функция SDSTUD вычисляет значение плотности t-pacnpeделения Стьюдента
К оманда вызова : F=SDSTUD(x , n )
В ходные парам етры : X—независимая переменная t из формулы (С.7.1)
N — число степеней свободы /
Выходной парам етр : значение ф ункции SDSTUD — значение плотности
распределения (С .7.1)
DOUBLE PRECISION FUNCTION SDSTUD(X,N)
IMPLICIT DOUBLE PR EC ISI0N (A -H ,0-Z)
PARAMETER (0N E =1.D 0, HALF=0.5D0)
AN=DBLE(N)
AN2=HALF*AN
SQAN=SQRT(AN)
ARG=-AN2-HALF
A=(0NE+X*X/AN)**ARG
BETA=GBETAF(HALF, AN2)
SDSTUD=A/(BETA*SQAN)
END
Используя замену
функцию ^-распределения С тью дента м ож но выразить как ф ункцию от непол
ной бета-функции (D .6.1), т. е.
( С . 7 .2 )
( С . 7 .3 )
Программа С .21. Функция SCSTUD вы числяет значение функции распределе
ния для ^-распределения С тью дента
К оманда вызова : F=SCSTUD(x sn )
В ходные парам етры : X — независим ая переменная t из формулы (С .7.2)
N — число степеней свободы /
556
Приложение С. Формулы и программы для статистических функций
ВЫХОДНОЙ ПАРАМЕТР: значение ф ункции SCSTUD — значение ф ункции
распределения (С .7.2)
DOUBLE PRECISION FUNCTION SCSTUD(X,N)
IMPLICIT DOUBLE PR E C ISI0N (A -H ,0-Z )
PARAMETER (ZER0=0.D0, ONEf I.D O , HALF=0.5D0)
AN=DBLE(N)
AN2=HALF*AN
ARG=AN/(AN+X**2)
A=GINCBT( AN2, HALF, ARG)
IF(X.GE.ZERO) THEN
SCSTUD=ONE-HALF*A
ELSE
SCSTUD=HALF*A
END IF
END
К в а н т и л ь tp д л я ^ - р а с п р е д е л е н и я С т ь ю д е н т а п р и з а д а н н о й в е р о я т н о с т и Р
р а в н а н улю ф ун кц и и
h(t) = P - F ( t ) .
(С.7.4)
П рограмма С .22. Функция SQSTUD вы числяет значение для квантили £-распределения Стьюдента
К оманда вызова : F=SQSTUD(P,N)
В ходные парам етры : Р —вероятность Р
N — число степеней свободы /
Выходной ПАРАМЕТР: значение функции SQSTUD — значение квантили tp
DOUBLE PRECISION FUNCTION SQSTUD(P,N)
IMPLICIT DOUBLE PR EC ISI0N (A -H ,0-Z)
PARAMETER(BIG=1D10,EPSILN=lD-6,0NE=1.DO,ZER0=0.DO,HALF=.5D0)
EXTERNAL SZSTUD
С границы р а зб р о с а
IF(P.GE.ONE) SQSTUD=BIG
IF(P.LE.ZERO) SQSTUD=-BIG
С нормальный р а зб р о с
IF(P.LT.ONE .AND. P.GT.ZERO) THEN
X0=ZER0
X1=P
CALL AUXZBR(X0,XI,SZSTUD,P,N,0)
CALL AUXZFN(XOД 1,XZERO, SZSTUD,P,N,0,EPSILN)
SQSTUD=XZERO
END IF
END
С.9. Задачи по программированию
557
с --------------------------------------------------------------------------------------------------------------------------------------------
DOUBLE PRECISION FUNCTION SZSTUD(X,P,N,NDUM)
С возвращ ает зн ач ен и е Р минус зн ач ен и е функции р асп р едел ен и я Стьюдента
С в точке X с параметром N
IMPLICIT DOUBLE PRECISION(A-H.O-Z)
SZSTUD=P-SCSTUD(X, N)
END
C.8. Примеры программ
В се программные ф айлы доступны в поддиректории \DATAN\EXASRC.
С.8.1. Головная программа E1SD для демонстрации работы
подпрограмм SDBINM, SCBINM, SDHYPG, SCHYPG, SDPOIS, SCPOIS, SQ P0IS
С помощью этой программы м ож но вычислить значения вероятностей и ф ун к
ции распределения дл я биномиального распределения, гипергеометрического
распределения и распределения П уассона. П рограмма запраш ивает тип ф ун к
ции и значения задаваем ы х парам етров. Результаты выводятся на экран в
буквенно-цифровом ф орм ате.
С.8.2. Головная программа E2SD для демонстрации работы
подпрограмм SDSTNR, SCSTNR, SQSTNR, SDNORM, SCNORM, SQN0RM,
SDCHI2, SCCHI2, SQCHI2, SDFTST, SCFTST, SQFTST, SCSTUD, SDSTUD,
SQSTUD
С помощью этой программы м ож но вычислить значения плотности распре
деления, функции распределения и квантили для стандартного нормального
распределения и норм ального распределения, а также для хи-квадрат распре
деления, F -p acn p e деления и ^-распределения Стьюдента. П рограм ма запраш и
вает у пользователя тип искомы х величин и значения задаваем ы х параметров.
Результаты представляю тся в буквенно-циф ровом ф орм ате.
С.9. Задачи по программированию
Файлы с возмож ны ми реш ениями предлож енны х задач содерж атся в п одди
ректории \DATAN\SOLSRC.
С.9.1. Графическое представление различных статистических
функций для дискретных случайных величин
Н аписать программу, которая строила бы гистограммы распределения бино
миальных, гипергеом етрических и пуассоновских случайны х величин. В соот
ветствии с выбором пользователя програм м а дол ж н а строить либо граф ик со
ответствую щ их вероятностей, либо граф и к ф ункций распределения. С делать
558
Приложение С. Формулы и программы для статистических функций
возм о ж н ы м вы бор ти п а ф ункции р асп ределен и я, а та к ж е ввод п ар ам етр о в в
и н тер акти вн о м р е ж и м е . П о до б р ать о б л асть зн ач ен и й д и с к р е тн ы х вели чи н т а
ки м об р азо м , ч то б ы д л я б и н о м и ал ьн о го и ги п ер гео м етр и ч еско го р асп р ед ел е
ний в э т у о б л асть входи ли все зн ач ен и я, не явл яю щ и еся вы б р о сам и , а д л я
р асп р ед ел ен и я П уассо н а ч то б ы это б ы л а о б л асть, в которой вер о ятн о сть с у
щ ествен н о о тл и ч н а о т н ул я.
С.9.2. Графическое представление различных статистических
функций для непрерывных случайных величин
Н ап и сать п р о гр ам м у, к о т о р а я д о л ж н а стр о и ть гр аф и ки п лотн ости р асп р ед е
л ен и я и ф ун кц и и р а с п р е д е л е н и я д л я с т ан д а р тн о го н о р м ал ьн о го и н о р м ал ьн о
го р асп р едел ен и й , а т а к ж е д л я х и -к в а д р а т р асп р ед ел ен и я, ^ -р ас п р е д е л е н и я и
^ -р ас п р ед ел ен и я С т ь ю д е н т а . С д е л а т ь в о з м о ж н ы м в ы б о р т и п а ф у н к ц и и , т и п а
гр аф и ка, и т а к ж е зад ан и е п ар ам етр о в в и н тер акти вн о м р еж и м е. М асш таб до л
ж е н в ы б и р а т ь с я т а к и м о б р азо м , ч то б ы он с о о тв е т с тв о в ал ко н кр етн о й з а д а ч е .
Приложение D
Гамма-функция и функции,
связанные с ней. Методы и
программы для вычисления значений
этих функций
D .I. Гамма-функция Эйлера
Р ассм о тр и м н екоторое д ей стви тел ьн о е число
функцией
х
такое, что
х
> 0. Т о гд а
гамма-
Э й лера б удет н азы в аться ф ун кц и я ви д а
г ос
Г( х) = /
Jo
d*.
( D .1 .1 )
И н тегр и р уя по ч а с т я м , п о л уч и м , что
п ОС
/
Jo
г ОС
f*e-*d t = [ - f e - 1] ? + х
г ОС
t x~ 1e ~ t d t = x
Jo
t^ e^ d t.
Jo
О тс ю д а сл ед уе т , ч то г а м м а -ф у н к ц и я у д о в л е т в о р я е т со отн ош ен и ю
Г(х +
Э то
ур авн ен и е н азы в ае тс я т а к ж е
нальным уравнением)
что
Г( 1)
хГ(х)>
1) =
(D .1 .2 )
рекуррентным соотношением (функцио
д л я г а м м а - ф у н к ц и и . И з с о о т н о ш е н и я ( D .1 .1 ) в ы т е к а е т ,
= 1. И с п о л ь з у я у р а в н е н и е ( D . 1 . 2 ) , п о л у ч а е м ч т о д л я ц е л ы х
Г (п + 1 ) = п ! ,
п = 1 ,2 ,...
t
С д ел аем теп ер ь зам е н у п ер ем ен н ы х . З ам ен и м
.
н а | u 2 (a dt н а
п
(D .1 .3 )
и d и)
и зап и ш ем :
го с
Г(х +
В частн ости , п о л агая
х =
1) -
(§)*
/
ц 2х + 1е “ Ь
du.
Jo
—L
п олучаем
Г ОС
ГЦ) — \pi I
Jo
-1
e - b 2du = —
г ос
/
v 2 J _oo
e - b 2du.
(D .1 .4 )
Э т о т и н т е гр а л м о ж н о в ы ч и с л и т ь сл ед ую щ и м сп о со б о м . Р а с с м о т р и м в ы р а ж е
ние
/
ОС
ГО С
/
-ос
J—оо
рО О
е“ ^ х +у ^ d x d y = /
J —со
Гоо
е_ ^х d x /
J —оо
е ~ ^ у d y = 2 { Г (|)} 2.
D. Гамма-функция и другие функции
560
П утем зам ен ы п ер ем ен н ы х п ер ей д ем к п олярн ой си стем е ко о р ди н ат, т о гд а
гО О
/•2 7 Г
А=
Jо
/
г2тт
e” ^r r d r d 0 =
Jо
РОО
d ф!
Jо
/
Jо
е ~ ^ г гd r = 2я \Г(1) = 2п.
П р и р а в н и в а я м е ж д у собой д в а в ы р а ж е н и я д л я в е л и ч и н ы
А,
п о л уч ае м , что
Г ( | ) = уД.
(D .1.5)
И с п о л ь з у я с о о т н о ш е н и е (D .1 .2) , м о ж н о н а й т и з н а ч е н и я г а м м а - ф у н к ц и и д л я
т е х зн ач ен и й а р г у м е н т а , к о т о р ы е р а в н ы п о л о ви н е н еко то р о го ц ел о го ч и с л а,
т. е . д л я « п о л у ц е л ы х » а р г у м е н т о в .
Д л я о с т а л ь н ы х з н а ч е н и й а р г у м е н т а (н е ц е л ы х и н е « п о л у ц е л ы х » ) в а н а л и
т и ч е с к о м в и д е з н а ч е н и е и н т е г р а л а (D .1 . 1 ) н а й т и н е в о з м о ж н о . П о э т о м у в э т о м
сл уч ае п ри хо ди тся п о л ьзо ваться р азл и ч н ы м и п р и бли ж ен и ям и . Д ал ее м ы р ас
см отр и м ап п рокси м ац и ю
Л анксоса
(1 9 6 4 ), к о т о р а я о с н о в ан а н а а н а л и т и ч е
ск и х св о й ств ах га м м а-ф у н к ц и и . С н а ч а л а о п р едел и м зн ач ен и е гам м а-ф у н к ц и и
п ри о тр и ц ате л ь н ы х зн ач е н и ях а р гу м е н т а . Э то удобн о с д е л ат ь с пом ощ ью сл е
д ую щ и х со отн ош ен и й :
П 1-х) =
Е сли
х будет
7Г
7ТХ
Г(х) sin ( т а ;)
( D . 1 . 6)
Г( 1 + х) 8т(тгж)
я в л я т ь с я к о м п л е к сн о зн а ч н о й вел и ч и н о й , то с п о м о щ ью со о тн о ш е
н и й ( D . 1 . 1 ) и ( D . 1 . 6) м о ж н о б у д е т т а к ж е о п р е д е л и т ь г а м м а - ф у н к ц и ю д л я п р о
и з в о л ь н о г о к о м п л е к с н о г о а р г у м е н т а . И з ф о р м у л ы ( D . 1 . 6) с л е д у е т , ч т о г а м м а ф ун кц и я и м еет полю сы в н ул е, а т а к ж е при в сех ц ел о ч и слен н ы х о тр и ц ател ь
н ы х зн ач ен и ях а р гу м е н т а . П ри п остроен и и ап п р о кси м ац и и
да
Г(х +
1) = >/2^
^х
+ 7 + ^
ехр
^—х -
7 - ^
Л анксоса
( А 7 ( х ) 4- е)
[17 ] в и
( D .1 .7 )
у ч и т ы в а ю т с я п ер вы е н еско л ько п олю сов. Д л я это го стр о и тся ф у н к ц и я Л 7 , к о
то р ая и м еет ви д
А Д ж ) = со 4-
Cl
х 4-
1
+
С2
х 4-
+
2
...
+
С7 + 1
х
+ 7 4- 1
( D . 1 . 8)
Т а к и м о б р а з о м , н а п р и м е р , п р и 7 = 5 д л я в с е х т о ч е к ж, л е ж а щ и х в п е р в о й и ч е
твер то й ч е тв е р тя х ко м п л ексн о й п л о ско сти , м о ж н о п острои ть ап п р о кси м ац и ю ,
ош ибка
£ кото рой
б у д е т у д о в л е т в о р я т ь с о о т н о ш е н и ю |е| < 2 * Ю - 1 0 .
П рограмма D .I . Ф у н к ц и я GGAMMA в ы ч и с л я е т з н а ч е н и я г а м м а - ф у н к ц и и Э й л е р а
К оманда вызова : F=GGAMMA(X)
В ходные ПАРАМЕТРЫ: X—значение аргумента х гамма-функции
D.l. Гамма-функция Эйлера
561
В ы х о д н ы е п а р а м е т р ы : значение ф ункции GGAMMA — значение
гамма-функции Г (х )
DOUBLE PRECISION FUNCTION GGAMMA(X)
IMPLICIT DOUBLE PRECISION (A -H ,0 -Z )
DIMENSION C (6)
LOGICAL REFLEC
PARAMETER(RTW0PI=2. 50 6 6 2 8 2 7 5 D 0 , P I = 3 . 1 4 1592654D 0, 0NE=1. DO)
PARAMETER(HALF=0. 5D0)
DATA C /7 6 .1 8 0 0 9 173D 0, - 8 6 . 50 5 3 2 0 3 3 D 0 , 2 4 . 01409822D 0,
+ - 1 .2 3 1 7 3 9 5 16D 0, 0 . 1 2 0 8 5 8 0 0 3 D -2 ,-0 .5 3 6 3 8 2 D -5 /
IF(X.GE.ONE) THEN
REFLEC=.FALSE.
XX=X-ONE
ELSE
REFLEC=. TRUE.
XX=ONE-X
END IF
XH=XX+HALF
XGH=XX+DBLE(5.5 )
S=ONE
ANUM=XX
DO 10 1 = 1 ,6
ANUM=ANUM+ONE
S=S+C(I)/ANUM
10 CONTINUE
S=S*RTWOPI
G=(XGH**XH)*S/EXP(XGH)
IF (REFLEC) THEN
GGAMMA=PI*XX/(G*SIN(PI*XX))
ELSE
GGAMMA=G
END IF
END
Г р а ф и к гам м а-ф у н к ц и и п р е д с тав л е н н а ри с. D . l . П ри увел и ч ен и и зн ач ен и й
а р г у м е н т а (п о п о л о ж и т е л ь н о й п о л у о с и ) г а м м а - ф у н к ц и я в о з р а с т а е т т а к б ы с т р о ,
ч то ее зн ач ен и я стан о ви тся н ево зм о ж н о п р ед стави ть н а ко м п ью тер е. О дн ако
в б о л ьш и н стве р а с ч е т о в н у ж н о в ы ч и с л я т ь зн ач е н и я отн ош ен и й д в у х га м м а ф ун кц и й , а эти вели ч и н ы у ж е я в л я ю т с я п р едстави м ы м и н а ком п ью тере. В о
общ е в т а к и х с л у ч а я х л у ч ш е п о л ь з о в а т ь с я л о гар и ф м о м га м м а-ф у н к ц и и .
П р о г р а м м а D .2 . Ф у н к ц и я GLNGAM в ы ч и с л я е т з н а ч е н и е н а т у р а л ь н о г о л о г а р и ф
м а гам м а-ф у н к ц и и Э й л е р а
К оманда вызова*
. f =glngam (X)
562
D. Гамма-функция и другие функции
Р и с . D .I . Графики функций Г ( х ) и 1/ Г( х) .
В ходные парам етры : X — значение аргумента х гамма-функции
В ыходные парам етры : значение ф ункции GLNGAM— значение логариф м а
гамма-функции In Г (х )
DOUBLE PRECISION FUNCTION GLNGAM(X)
IMPLICIT DOUBLE PRECISION (A -H .O -Z)
DIMENSION C (6)
LOGICAL REFLEC
PARAMETER(RTW0PI=2. 5066 2 8 2 7 5 D 0 , P I= 3 .1 4 1 5 9 2 6 5 4 D 0 , 0NE=1.D0)
PARAMETER(HALF= 0 .5D0)
DATA C /7 6 .1 8 0 0 9 173D 0, - 8 6 . 50532033D O , 2 4 . 01409822D 0,
+ - 1 . 2 3 1 7 3 9 5 1 6 D 0 , 0 . 1 2 0 8 5 8 0 0 3 D -2 , - 0 . 5 3 6 3 8 2 D -5 /
IF (X . GE. ONE) THEN
REFLEC=.FALSE.
XX=X-0NE
ELSE
D.2. Факториал и биномиальные коэффициенты
563
REFLEC=. TRUE.
XX=ONE-X
END IF
XH=XX+HALF
XGH=XX+DBLE(5.5 )
S=ONE
ANUM=XX
DO 10 1 = 1 ,6
ANUM=ANUM+0NE
S=S+C(I)/ANUM
10 CONTINUE
S=S*RTW0PI
G=XH*L0G(XGH)+L0G(S)-XGH
IF (REFLEC) THEN
GLNGAM=LOG(PI*XX)-G-LOG(SIN(PI*XX))
ELSE
GLNGAM=G
END IF
END
D.2. Факториал и биномиальные коэффициенты
З н ачен и е ф ак то р и ал а
п\ = 1 ■2 ■■■п
(D.2.1)
м ож но вычислить либо напрям ую как произведение отдельны х сом нож ите
лей, либо как гам м а-функцию дл я целого аргумента с помощью соотнош ения
(D.1.3).
При вычислении биномиальны х коэф ф ициентов дл я дости ж ен ия более вы
сокой точности из следую щ их д в у х соотнош ений предпочтительнее пользовать
ся вторым:
(D.2.2)
Программа D.3. Функция GBINC0 вычисляет значения биномиальных к о эф ф и
циентов
К о м а н д а в ы з о в а : f =GBINC0(N,k )
В х о д н ы е п а р а м е т р ы : N ,К — парам етры п,к биномиального коэф ф ициента
(2 )
В ы х о д н ы е п а р а м е т р ы : значение ф ункции GBINC0 — значение
биномиального коэф ф и ц и ен та (£)
564 D. Гамма-функция и другие функции
DOUBLE PRECISION FUNCTION GBINCO(N.K)
IMPLICIT DOUBLE PRECISION (A -H .O -Z )
PARAMETER( ONE=1 . DO)
IF(K.EQ.O .OR. N.EQ.O .OR. K.EQ.N) THEN
GBINC0=0NE
ELSE
AN=DBLE(N)
AK=DBLE(K)
ALBINC=GLNGAM(AN+ONE)-GLNGAM(AK+ONE)-GLNGAM(AN-AK+ONE)
GBINCO=EXP(ALBINC)
GBINCO=NINT(GBINCO)
END IF
END
D.3. Бета-функция
Бета-функция им еет д в а аргум ента и определяется следую щ им образом:
(D.3.1)
Э тот интеграл легко м ож но переписать в терм инах гамма-функции, и тогда
мы получим, что
B ( z , w) = B (w , z) —
r(z)r(w)
Г ( г + w) ‘
(D.3.2)
Программа D.4. Функция GBETAF вы числяет значения бета-функции
К оманда вызова : f = g b e t a f ( z , w)
В ходные парам етры : Z,W — аргументы z , w бета-функции (D .3.1)
В ы х о д н ы е ПАРАМЕТРЫ: значение ф ункции GBETAF — значение
бета-функции B (z , w)
DOUBLE PRECISION FUNCTION GBETAF(Z,W)
IMPLICIT DOUBLE PRECISION (A -H ,Q -Z)
PARAMETER(BIG=1. D 30, EPSILN=1. D -8)
IF(W.LT.EPSILN) THEN
GBETAF=BIG
ELSE
GBETAF=EXP(GLNGAM(Z)+GLNGAM(W)-GLNGAM(Z+W))
END IF
END
Н а рис. D .2 представлены граф и к и бета-ф ункции как функции от перем ен
ной w дл я различны х фиксированны х значениях г.
D.4. Вычислецие значения непрерывной дроби
565
5
Д
BCz.w)
Л
3
2
1
D.4. Вычисление
О значения непрерывной дроби
О
1
2
В следую щ их дв у х р аздел ах нам понадобится уметь вычислять значения не
--------вида
> w
прерывных дробей, т. е. значения вы ражений
Р и с . D .2 . Графики бета-функции.
С
/ — Ьо +
ростом ~aiкривые B ( z , w ) смещаются влево.
(D .4.1)
bi +
a2
62 + Ьз^3
Н—
которые м ож но такж е представить в символической записи как
/=
50
+
аз
bi+ £>2+ &3+
а1
п2
(D.4.2)
Если за f n мы обозначим значение дроби (D .4.1), имеющ ей конечное число сла
гаемых в знам енателе, т. е. др оби, у которой последнее слагаемое будет обра
зовано компонентами a n и Ьп , то м ож н о записать, что
л __ Ап
р •
■Dn
(D . 4 .3)
Jn
Значения величин А п и В п м ож н о найти с помощью следую щ их рекуррентны х
соотношений:
,
. . . . . .
t4
_
i
— 1,
= 0 ,
A
q
= bo,
В 0 = 1,
(D.4.4)
A j — bj A j —1 -f* cLj A j —21
(D.4.5)
B j — bj B j —1 -f* Oj B j —2 •
(D.4.6)
D. Гамма-функция и другие функции
566
Т а к к а к в ы р а ж е н и я ( D .4 .5 ) и ( D .4 .6 ) п р е д с т а в л я ю т со б о й л и н е й н ы е ф у н к
ции от
Aj-i^Aj - 2
и
п о явл яется только
Bj,Bj-ibBj - 2
с о о т в е т с т в е н н о , и т а к к а к в р а в е н с т в е ( D .4 .3 )
отн о ш ен и е
А п / Б п , то
А д A j _ i , A j _2
коэф ф и ц и ен ты
и
м о ж н о д о м н о ж ать н а п рои зво л ьн ы й н орм и ровочн ы й м н о ж и
т е л ь . О б ы ч н о э т о т м н о ж и т е л ь п о л а г а е т с я р а в н ы м 1 /Ву Т а к и м о б р а з о м у д а е т с я
и зб еж ать р я д а п роблем , к о то р ы е м о гу т б ы ть в ы з в а н ы либо сли ш ком больш и
м и, либо сли ш ком м ал е н ь к и м и зн ач ен и ям и эти х ком п он ен т. Е сли это т м н о ж и
те л ь не и сп о л ьзо вать, то в п роц ессе вы ч и сл ен и й по р е к у р р е н тн ы м ф о р м ул ам
н еи зб еж н о в о з н и к н у т п р о б л ем ы с о ш и б кам и о к р у гл е н и я . Е сли в п р о ц ессе в ы
ч и с л е н и й м ы п о л у ч и л и , ч т о Bj —0 , т о н о р м и р о в к у в ы п о л н я т ь н е н у ж н о .
Н е п р е р ы в н ы е д р о б и н а п о м и н а ю т со бой р а з л о ж е н и я в р я д ы и н у ж н ы д л я
а п п р о к с и м а ц и и н е к о т о р ы х ф у н к ц и й . В о к р е с т н о с т и и с т и н н о го з н а ч е н и я , т. е.
т а м , г д е м е т о д а п п р о к с и м а ц и и н е п р е р ы в н о й д р о б ь ю с х о д и т с я , з н а ч е н и я /п _ !
п п р акти ч ески не о тли чаю тся. П о это м у м о ж н о
условие завершения итерационной процедуры. Е с л и
и f n при до стато ч н о больш и х
и сп о льзо вать следую щ ее
п р и з а д а н н о м е <С 1 в ы п о л н е н о н е р а в е н с т в о
fn “
f n —1
f
^
<£'
Jп
то f n я в л я е т с я д о стато ч н о точн о й ап п р о кси м ац и ей д л я /.
D.5. Неполная гамма-функция
Неполная гамма-функция о п р е д е л е н а т о л ь к о
при
а>
0 и в ы гл я д и т следую щ и м
о б р азо м :
P{a,x) = A ~ s ( ta~1e~t dt.
1
(D.5.1)
{а) Jo
Ее м ож но п редстави ть в ви де сум м ы р я д а
оо
Р{а,х) =xae~x ^J 2Д
х'
а + n + l)
Д а)
Э то т р я д сходи тся до статочн о бы стро при
хае~х
Г (а )
Е Д а + 7 1 + ! )-X
^
х < а -f
^
I
( D .5 .2 )
1. П р и в ы ч и с л е н и я х н у ж
н о и с п о л ь з о в а т ь в т о р о е и з в ы р а ж е н и й , с т о я щ и х в ф о р м у л е ( D .5 .2 ) , п о с к о л ь к у
отн ош ен и е д в у х гам м а-ф у н к ц и й р ав н о
Г (а)
_ 1
1
Г(а + п + 1) а а + l
П ри
х
>
a -f-1 д л я
1
а+п+1‘
н а х о ж д е н и я з н а ч е н и я н еп олн ой гам м а -ф у н к ц и и м ы во сп о л ь
зу е м с я н еп реры вн ой др обью и п о л уч и м , ч то
1 —Р (а ,
х)
_ i _ e- V
-Г ( а )
1
\27+
1~ а 1 2~ а 2
1 + 27+ 1 +
27+
^
)
(D .5.3)
D.5. Неполная гамма-функция
П рограмма D .5. Функция
функции
GINCGM вычисляет
значение
неполной
гамма-
К оманда вызова : F=GINCGM(A,X)
В ходные парам етры : А Д — аргум енты а ,х неполной гамма-функции
(D .5.1)
В ыходные парам етры : значение ф ункции GINCGM — значение неполной
гамма-функции Р ( а .х )
DOUBLE PRECISION FUNCTION GINCGM (А Д )
IMPLICIT DOUBLE PRECISION (A -H ,0 -Z )
PARAMETER(BIG=500.DO, E P S IL N = l.D -6 , 0NE=1.D0, ZER0=0.D0)
ALOGGM=GLNGAM(A)
IF(X.LE.A+ONE) THEN
С разлож ение в ряд
F=0NE/A
S=F
ANUM=A
DO 10 1 = 1 ,1 0 0
ANUM=ANUM+0NE
F=X*F/ANUM
S=S+F
IF(F.L T .E PSIL N ) GO TO 20
10
CONTINUE
20
IF (X . LT. EPSILN) THEN
GINCGM=ZERO
ELSE
HELP=A*L0G(X)-X-ALOGGM
IF(ABS(H ELP). GE.BIG) THEN
GINCGM=ZERO
ELSE
GINCGM=S*EXP(HELP)
END IF
END IF
ELSE
С непрерывная дробь
A0=ZER0
B0=0NE
A1=0NE
B1=X
CF=0NE
FN0RM=0NE
DO 30 J = l,1 0 0
A2J=DBLE(J)-A
A2J1=DBLE(J)
567
568
D. Г&ммагфункция и другие функции
B2J=0NE
В2Л=Х
A0=(B2J*A1+A2J*A0)*FN0RM
В0= (B2J*B1+A2J*B0) *FNORM
A1=B2J1*A0+A2J1*A1*FN0RM
B1=B2J1*B0+A2J1*B1*FN0RM
IF(Bl.NE.ZERO) THEN
С перенормировка и проверка условия сходимости
FN0RM=0NE/B1
CFNEW=A1*FN0RM
IF(ABS(CF-CFNEW)/CF .LT. EPSILN) GO TO 40
CF=CFNEW
END IF
30
CONTINUE
40
CONTINUE
HELP=A*L0G(X)-X-ALOGGM
IF(ABS(HELP). GE. BIG) THEN
GINCGM=ONE
ELSE
GINCGM=ONE-EXP(HELP)*CFNEW
END IF
END IF
END
a = 1.00, 2.00,...,10.00
1
0.8
P(a,x)
Л
0.6
0.4
0.2
0
0
2
6
k
--------- >
8
10
x
Р и с . D .3 . Графики неполной гамма-функции. При увеличении параметра а график
функции Р (а ,х ) сдвигается вправо.
D.6. Неполная бетагфункция
569
Граф ики неполной гам м а-ф ункции дл я нескольких фиксированны х значе
ний парам етра а представлены н а рис. D .3. И з рисунка видно, что
Р ( а ,0 ) = 0,
(D .5.4)
lim P { a , x ) = 1.
(D .5 .5 )
D.6. Неполная бета-функция
Неполная бетпа-функция оп ределен а при значениях а > О, b > 0 и вы глядит
следующ им образом:
Ix(a, Ь) = -БГ-ГГ / *“-1 (! - *)6-1 d*>
Н (а , о) J о
* < о < 1.
(D.6.1)
Эта ф ункция удовлетворяет отнош ению симметрии, т. е.
7Х(&, 5) — 1
ci).
(D .6.2)
С помощ ью непрерывной др оби вы раж ение (D .6.1) м ож но аппроксимировать
следующ им образом:
4 (а, 5) —
xa( l ~ x ) b (J _ di_ (h_
сьВ{сь,Ь) \ 1+ 1+ 14~
где
^2m+1 —
^2m —
}
(D .6.3)
(a -f m )(a -f b -f m )
(a -f 2m ) (a + 2m — 1)
m (5 — m )
(a + 2m - l ) ( a + 2m ) X’
Э тот итерационный м етод построения приближ ения бы стро сходится при зн а
чениях
а -Ь 1
С1"ЬЪ~h 1
(D .6.4)
Невыполнение этого условия означает, что 1 — х больш е, чем правая часть не
равенства (D .6.4). В этом случае сначала с помощ ью м етода представления в
виде непрерывной др оби вы числяется значение величины 7 i_ x , а затем приме
няется соотнош ение (D .6.2).
Программа D.6. Ф ункция GINCBT вы числяет значение неполной бета-ф ункции
К оманда вызова : f =GINCBT(A,b , x )
В ходные парам етры : А,В,Х —аргументы a, b и х неполной бета-функции
(D .6.1)
В ыходные парам етры : значение ф ункции GINCBT-- значение неполной
б ет а г ф у н к ц и и /Х( а ,х )
570
D. Гамма-функция и другие функции
DOUBLE PRECISION FUNCTION GINCBT( AA, BB, XX)
IMPLICIT DOUBLE PRECISION (A -H .O -Z )
LOGICAL REFLEC
PARAMETER(EPSILN-1.D-8, 0N E=1.D 0, ZERO-O.DO, TW0=2.D0)
XLIM=( AA+ONE)/ (AA+BB+ONE)
IF (XX.LT.XLIM) THEN
REFLEC-.FALSE.
A=AA
B=BB
X-XX
ELSE
REFLEC-.TRUE.
A-BB
B-AA
X-ONE-XX
END IF
IF (X . LT. EPSILN) THEN
С зн ачен ие функции в конце и н тер вал а р а зб р о с а и зв ест н о
C F -0.
ELSE
С непрерывная дробь
A1-0NE
B1-0NE
A2-0NE
B 2-0N E -(А +В)*X/(A+0NE)
FN0RM-0NE/B2
CF-A2*FN0RM
DO 10 М -1 ,100
RM-DBLE(M)
APL2M=A+TW0*RM
D2M-RM*(B-RM)* Х /( (APL2M-0NE)*APL2M)
D2M1— (A+RM)* ( A+B+RM)*X/(APL2M*(APL2M+1) )
A1-(A2+D2M*A1)*FN0RM
B1=(B2+D2M*B1)*FN0RM
A2-A1+D2M1*A2*FN0RM
B2=B1+D2M1*B2*FN0RM
IF (B 2 .N E .O .) THEN
С перенормировка и п роверк а услов и я сходим ости
FN0RM-0NE/B2
CFNEW=A2*FN0RM
IF(ABS(CF-CFNEW)/CF .LT. EPSILN) GO TO 20
CF-CFNEW
END IF
10
CONTINUE
20
CF-CF*(X**A)* ( (0N E -X )**B )/ (A*GBETAF(A, B ))
D .7. Примеры программ
571
END IF
IF(REFLEC) THEN
GINCBT=ONE-CF
ELSE
GINCBT=CF
END IF
END
Н а рис. D .4 представлены граф ики неполной бета-ф ункции при различны х
значениях параметров а и Ь. Вне зависим ости от значений этих параметров
мы видим, что
/ 0(а, Ъ) = 0,
/] (а, b) = 1.
(D.6.5)
Рис. D.4. Графики неполной бета-функции. При увеличении параметра а кривые
1х(а,Ъ) сдвигаются вправо.
D.7. Примеры программ
В се программные ф айлы доступны в поддиректории \DATAN\EXASRC.
D.7.I. Головная программа E 1 G AM для демонстрации работы
подпрограмм GGAMMA и GLNGAM
Эта программа сначала в интерактивном реж им е запраш ивает тип функции и
значение аргумента х , а затем в численном виде вы дает либо значение Г (х ),
либо значение In Г1(ж).
572
D. Гамма-функция и другие функции
D.7.2. Головная программа E2GAM для демонстрации работы
подпрограммы GBINC0
С помощью этой программы вычисляются и выводятся на экран первые 12
строк треугольника П аскаля (см. рис. В .1).
D.7.3. Головная программа E3GAM для демонстрации работы
подпрограмм GBETAF, GINCGM и GINCBT
С помощью этой программы вычисляются значения бета-функции B ( z }w ), не
полной гамма-функции Р ( а , х) и неполной бета-ф ункции /х ( а , Ь). Тип функции
и аргументы задаю тся в интерактивном реж им е. Результаты представляю тся
в буквенно-цифровом ф орм ате.
D.8. Задачи по программированию
Файлы с возмож ны ми реш ениями предлож енны х задач содерж атся в п одди
ректории \DATAN\SOLSRC.
D.8.L Графическое представление функций Г(х) и 1 /Г(х)
Написать программу, которая д о л ж н а строить граф ики, представленны е на
рис. D .I . Помните, что граф и к ф ункции Г(х) в левой полуплоскости до л ж ен
быть построен в виде отдельны х кривых, так как иначе в точках, где находятся
полю са (ж = 0, —1, —2 , . . . ) , появятся лиш ние вертикальные прямые.
D.8.2, Графическое представление бета-функции, неполной
гамма-функции и неполной бета-функции
Написать программу, которая д о л ж н а строить граф ики бета-ф ункции B( z, w),
неполной гамма-функции Р(а,х) и неполной бета-ф ункции 1х(а,Ь). М асш таб
выбрать таким ж е, как на рис. D .2, D .3 и D .4, и строить граф ики в виде
отдельны х рисунков. С делать возм ож ны м выбор типа функции и задан и е в
интерактивном реж и м е значений парам етров.
Приложение Е
Служебные программы (утилиты)
Б.1. Численное дифференцирование
Производная df(x)/dx функции f(x) в точке х равна пределу
f(x + h)~ f(x)
ft—►О
h
f\x) = lira
Очевидно, что ff(x) можно аппроксимировать соотношением
f(x + К) - f(x)
h
при малом конечном значении h. На самом деле для этого лучше использовать
симметричное разностное отношение вида
5(h) =
f(x + h) - f(x - h)
2h
(Е.1.1)
Преимущество использования этого отношения можно увидеть, если рассмо
треть разложения в ряд Тейлора для f(x + h) и для f(x — h) в точке х. Мы
увидим, что тогда
5(h) = f'(x) + ^ Г ( х )+ ^ - / (5)(*) + • • • ,
т. е. что первый член разложения является квадратичным по h. При этом нуж
но также соблюдать особую осторожность при выборе параметра h,так как при
малых значениях h ошибки округления возрастают, а при больших значениях
этого параметра аппроксимация не будет достаточно точной.
Чтобы избежать этих проблем, можно вычислить значения величины 5(h)
для различных значений параметра h =
образующих монотон
ную последовательность. Если полученная в результате последовательность
значений 5(ho), 5(hi), ... будет монотонной (убывающей или возрастающей),
это будет означать сходимость ряда к значению производной f(x). Соглас
но Р утишаузеру [27], используя члены последовательности 5(ho), 5(/ii),.*.,
можно построить другую последовательность, которая быстрее сходится к
f(x). Этот метод был разработан на основании метода численного интегри
рования Р омберга [28]. Для начала ho полагается равным некоторому числу
а и для последовательности вида
h0, hi, . . .
= а, З а /4 ,
а/2,
З а /8 , а / 4, . . . ,
строится последовательность
Т^к) = 5(hk),
574
Приложение Е. Служебные программы (утилиты)
rri(k)
а также вычисляются величины 1 ш , равные
<Ь) -
2mT (k+V _ 1.125 T,(fc)
m— 1
га нечетное, к четное,
2m - 1.125
(fc) _ 2 ™ •1.125
—
m нечетное, к нечетное,
2 ™ •1.125- 1
(fc) _
_ 2mT ^ ] - T m- i ( k )
rpW
2m — 1
Затем из величин
-Lm
га четное.
’
ф орм ируется треугольник
7-1(0)
10
т (°)
7± Ч0)
2
-*0
гр(2 )
1
rp{l)
rp{0)
1Ъ
12
0
гр(3 )
1
rf1}
г х(2)
0
В первом столбце этого треугольника стоят значения исходны х разностны х
отнош ений. При этом не только последовательность
f ' ( x ), но и для лю бого га
И ш Т<Р = /'(*),
fc—►
oo
lim T W
m —юо
сходится к значению
= f(x).
Удобство использования этого м етода на практике обусловлено тем, что столб
цы, стоящие правее, сходятся очень бы стро.
В следую щ ей програм м е сначала вы числяется последовательность Т $ ° \ ..
Г0(9) при a = 1. Если полученная последовательность не монотонна, то число a
зам еняется на а / 10, и вычисления проводятся заново. Если после 10 итераций
монотонности последовательности добиться не удалось, процедура заверш ает
ся. Если ж е на одной из итераций бы ла получена монотонная последователь
ность, то вычисляются соответствую щ ие ей остальные элементы треугольника
и в качестве наилучш ей аппроксимации дл я f f(x) берется значение Т $ ° \ В
целом программа AUXDER п одобн а программе К елбига [29], однако в ней не
сколько изменены условия заверш ения итерационной процедуры .
Программа Е .1. П одпрограм м а AUXDER м етодом численного ди ф ф ерен ц и р ов а
ния находит значение производной ф ункции f ( x ) в точке х
К оманда вызова : CALL AUXDER(F,X,DFDX,OK)
В ходные парам етры : F — имя подпрограммы , написанной пользователем,
которая вы числяет значение ф ункции f ( x )
X — аргумент х
Е.1. Численное дифференцирование
В ыходные парам етры : DFDX — производная f ( x )
OK— логическая перем енная (она равна . TRUE. (и с т и н а ), если м етод
сходится, и .FALSE, (л ож ь), если это не так)
С
С
С
C
SUBROUTINE AUXDER(F, X, DFDX, OK)
Вычисление производной f ’ (х ) функции f (х ) в точке х = X.
Метод позаи м ствован и з работы Н. R u t i s h a u s e r , A usdehnung d e s
R om bergschen P r i n z i p s ( E x t e n s io n o f Rom berg’ s P r i n c i p l e ) , Numer.
Math. 5 (1 9 6 3 ) 4 8 -5 4
IMPLICIT DOUBLE PRECISION (A -H .O -Z)
PARAMETER (EPS = 5 .D - 8 , E P S I= 1 .D -1 0 , DELTA=10. DO, S = 1 .D -1 )
DIMENSION D X ( 0 : 9 ) ,W ( 0 : 9 ,3 ) ,T ( 0 : 9 ,0 : 9 ) ,A ( 0 : 9 )
LOGICAL LEV(0:9),LM T
LOGICAL OK
EXTERNAL F
DATA DX /0 .0 2 5 6 D 0 , 0 .0 1 9 2 D 0 , 0 .0 1 2 8 D 0 , 0 .0 0 9 6 D 0 , 0 .0 0 6 4 D 0 ,
+ 0 .0 0 4 8 D 0 , 0 .0 0 3 2 D 0 , 0 .0 0 2 4 D 0 , 0 .0 0 1 6 D 0 , 0 .0 0 1 2 D 0 /
DATA (L E V (K ),K = 0 ,8 ,2 ) / 5 * .TRUE./
DATA (L E V (K ),K = 1 ,9 ,2 ) / 5 * .FALSE./
DATA W ( l ,l ) / 1 .3 3 3 3 3 3 3 3 3 3 3333 3 3 D + 0 0 /
DATA W (3 ,l) /1 .0 6 6 6 6 6 6 6 6 6 6 6 6 6 6 7 D + 0 0 /
DATA W (5 ,1) /1 .0 1 5 8 7 3 015 8 7301 5 9 D + 0 0 /
DATA W (7 ,1) /1 .0 0 3 9 2 15686 2745 1 0 D + 0 0 /
DATA W (2 ,1) /3 .3 3 3 3 3 3 333 3 3 3 3 3 3 3 D -0 1 /
DATA W (4 ,1) / 6 .6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 7 D -0 2 /
DATA W (6 ,l) /1 .5 8 7 3 0 15873 0 1 5 8 7 3 D -0 2 /
DATA W (8 ,1) /3 .9 2 1 5 6 8 6 2 7 4 5 0 9 8 0 4 D -0 3 /
DATA W (0,2) /2 .2 8 5 7 1 4 2 8 5 7 142857D + 00/
DATA W (2,2) /1 .1 6 3 6 3 6 3 6 3 6 363636D + 00/
DATA W (4,2) /1 .0 3 6 4 3 7 2 4 6 9 6 3 5 6 2 8 D + 0 0 /
DATA W (6,2 ) /1 .0 0 8 8 6 6 9 9 5 0 7 3 8 9 1 6 D + 0 0 /
DATA W (8,2) /1 .0 0 2 2 0 2 104 2 3293 3 7 D + 0 0 /
DATA W (l,2 ) /1 .2 8 5 7 1 4 2 8 5 7 142857D + 00/
DATA W (3,2) /1 .6 3 6 3 6 3 6 3 6 3 6 3 6 3 6 4 D -0 1 /
DATA W (5,2) /3 .6 4 3 7 2 4 6 9 6 3 5 6 2 7 5 3 D -0 2 /
DATA W (7,2) /8 .8 6 6 9 9 5 073 8 9 1 6 2 5 6 D -0 3 /
DATA W (9,2) /2 .2 0 2 1 0 4 2 3 2 9 3 3 6 9 2 2 D -0 3 /
DATA W (0,3) /1 .8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 D + 0 0 /
DATA W (2,3) /1 .1 2 5 0 0 0 0 0 0 0 0 0 0 0 0 0 D + 0 0 /
DATA W (4,3) /1 .0 2 8 5 7 14285 7142 8 6 D + 0 0 /
DATA W (6,3) /1 .0 0 6 9 9 3 0 0 6 9 930070D + 00/
DATA W (8,3) /1 .0 0 1 7 3 9 1 3 0 4 3478 2 6 D + 0 0 /
DATA W (l,3 ) /8 .0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 D -0 1 /
DATA W (3,3) /1 .2 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 D -0 1 /
DATA W (5,3) /2 .8 5 7 1 4 28571 4 2 8 5 7 1 D -0 2 /
575
576
Приложение Е. Служебные программы (утилиты)
DATA W (7 ,3 ) /6 .9 9 3 0 0 6 9 9 3 0 0 6 9 9 3 0 D -0 3 /
DATA W (9,3) /1 .7 3 9 1 3 0 4 3 4 7 8 2 6 0 8 7 D -0 3 /
DEL=DELTA
DO 40 1 = 1 ,1 0
DEL=S*DEL
I F (I .E Q .1 0 .OR. ABS(X+DEL*DX( 9 ) -X ) .LT. EPS) THEN
0K=.FALSE.
RETURN
END IF
DO 10 К = 0 , 9
H=DEL*DX(K)
T (K ,0 )= (F (X + H )-F (X -H )) / (H+H)
A (K )=T (K ,0)
10
CONTINUE
IF (A (0 ) .GE. A( 9 ) ) THEN
DO 20 К = 0 ,9
A (K )= -A (K )
20
CONTINUE
END IF
LMT=.TRUE.
DO 30 К = 1 ,9
H =A (K -1)-A(K )
LMT=LMT .AND. (H .L E .E PSI .OR.
+
A BS(H ).LE.EPS*ABS(A (K ))+EPSI)
30
CONTINUE
IF(LMT) GO TO 50
40 CONTINUE
50 CONTINUE
DO 70 M = 1 ,9
DO 60 К = 0,9 -M
IF (LEV 0 0 ) THEN
T (K ,M )=W (M -1,1)*T (K +1,M -1)-W (M ,1)*T (K ,M -1)
ELSE IF(L E V (K )) THEN
T ( K , M)=W(M-1 , 2 ) * T ( K + l , M - l ) -W(M, 2 ) * T ( K , M-l)
ELSE
T (K ,M )=W (M -1,3)*T (K +1,M -1)-W (M ,3)*T (K ,M -1)
END IF
60
CONTINUE
70 CONTINUE
DFDX=T(0,9)
0K=. TRUE.
END
Далее мы вкратце опишем основные параметры программ, с помощью ко
торых вычисляются не отдельные производные, а векторы и матрицы произ-
Е.1. Численное дифференцирование
577
водных. Такие векторы и матрицы необходимы дл я вычислений, проводимы х в
главах 9 и 10. В целях экономии места сами программы мы приводить не будем .
П рограмма Е.2. П одпрограм м а AUXDRI вычисляет матрицу производны х А,
которая затем используется д л я построения оценок методом наименьш их ква
дратов (косвенные измерения, нелинейный случай)
КОМАНДА ВЫЗОВА; CALL AUXDRI (USERFN, X, Т , N, NR, NRED,
LIST,A,OK)
В ходные парам етры : USERFN —
и м я ф ункции, написанной пользователем
(см. примеры в разд. 9.6)
X,T,N,NR,NRED,LIST — те ж е, что и в программе 9.3
В ыходные парам етры : А — та ж е, что и в программе 9.3
0К — логическая перем енная (она равна .TRUE, (и ст и н а ), если метод
сходится, и .FALSE, (лож ь), если это не так)
П рограмма Е.З. П о д п р о г р а м м а AUXDRG н а х о д и т м а т р и ц у п р о и з в о д н ы х
Е,
ко
т о р а я зат е м и сп о л ь зу етс я в в ы ч и сл ен и я х с пом ощ ью м ето д а н аи м ен ьш и х к в а
д р а т о в в обобщ ен н ой ф о р м у л и р о в к е
К оманда ВЫЗОВА: CALL AUXDRG (X , Y, М, N, NR, NRED, LIST, E,
OK)
В ходные ПАРАМЕТРЫ: X ,Y ,M ,N , NR, NRED, LIST — те ж е, что и в программе
9 .1 2
В ыходные парам етры : Е — м а т р и ц а
п р о и зво дн ы х
Е разм ер а т х
(г + п)
( с м . ( 9 .1 1 .2 ) )
0К — логическая перем енная (она равна .TRUE, (и ст и н а ), если метод
сходится, и .FALSE, (л ож ь), если это не так)
В ы ч и сл ен и я с пом ощ ью о п и сан н ы х вы ш е п р о гр ам м зан и м аю т д о стато ч н о
м н о го вр ем ен и . Д л я р я д а ф у н к ц и й б ы в а е т д о с т а т о ч н о з а м е н и т ь д и ф ф ер ен ц и
а л ь н о е о т н о ш е н и е н а р а з н о с т н о е о т н о ш е н и е ( Е .1 .1 ) . М е т о д р а з н о с т н ы х о т н о
ш ений м о ж н о т а к ж е п р и м е н я т ь д л я в ы ч и с л е н и я в т о р ы х п р о и зв о д н ы х . С п о м о
щ ью сл ед ую щ и х д в у х п р о гр а м м м о ж н о в ы ч и с л и т ь в е к т о р г р а д и е н т а и м а т р и ц у
Г ессе в т о р ы х п р о и зв о д н ы х д л я ф у н к ц и и п п ер ем ен н ы х . П ри это м в с л у ч а е н е
обходи м ости ч ас ть п ер ем ен н ы х м о ж н о заф и к си р о в а ть .
Программа Е.4. П одпрограм м а AUXGRD вычисляет вектор градиента дл я ф у н к
ции п переменных
КОМАНДА ВЫЗОВА: CALL AUXGRD(X,GRD,N,NRED,LIST,FUNC)
В ходные парам етры : X — n - м е р н ы й
векто р перем ен н ы х
х
N— к о л и ч е с т в о п е р е м е н н ы х п
NRED — количество неф иксированны х переменны х п !
LIST — в е к т о р , к о м п о н е н т ы к о т о р о г о у к а з ы в а ю т н а т о , к а к и е и з п
п ер е м е н н ы х ф и к с и р о в а н ы (с о о т в е т с т в у ю щ а я к о м п о н е н т а р а в н а 0 ), а к а к и е
н е т ( с о о т в е т с т в у ю щ а я к о м п о н е н т а р а в н а 1)
578
Приложение Е. Служебные программы (утилиты)
FUNC — имя ф ункции, написанной пользователем; это имя дол ж н о быть
объявлено в головной програм м е как переменная типа EXTERNAL
ВЫХОДНОЙ ПАРАМЕТР: GRD —n '-мерный вектор частных производных
df/dxi
К омментарии : функция, написанная пользователем должна иметь тип
DOUBLE PRECISION FUNCTION (функция двойной точности) и ровно два
аргумента (X ,N ).
SUBROUTINE AUXGRD(X , GRD, N, NRED, LIST, FUNC)
IMPLICIT DOUBLE PRECISION (A -H ,0 -Z )
PARAMETER(DELTA=1. D - l l , CUT=1. D -9)
DIMENSION X (* ),G R D (* ),L IS T (* )
EXTERNAL FUNC
IL=0
IF(NRED. GT.0 ) THEN
DO 10 1=1,N
I F (L I S T (I ).E Q . 1 . OR. NRED.EQ.N) THEN
IL=IL+1
ARG=ABS(X(I))
I F ( ARG. LT. CUT) ARG=CUT
DEL=DELTA*ARG
SAV=X(I)
X(I)=SAV+DEL
FP=FUNC.(X,N)
X(I)=SAV-DEL
FM=FUNC(X,N)
X(I)=SAV
GRD(IL)= (FP-FM )/ (DEL+DEL)
END IF
10
CONTINUE
END IF
END
П рограмма E.5. П одпрограм м а AUXHES вычисляет матрицу Гессе вторы х про
изводны х для ф ункции п переменны х
К оманда вызова : call auxhes(х,hesse,n ,nred,list,
FUNC)
В ходные парам етры : X,N,NRED,LIST,FUNC— те же, что и в программе
AUXGRD
Выходной ПАРАМЕТР:
HESSE — матрица вторых производных д 2f / d x j d x k
размера n f х п'
К омментарии : те ж е, что и в программе AUXGRD.
Е .1.
Численное дифференцирование
SUBROUTINE A U X H E S ( X ,H E S S E ,N,N R E D ,L I S T ,FUNC)
IMPLICIT DOUBLE PRECISION (A-H.O-Z)
PAR AMETER(D E L TA=1.D - 5 ,C U T = 1 .D-9)
DIMENSION X ( * ) ,HESSE(NRED,*),LIST(*)
EXTERNAL FUNC
IF(NRED.GT.O) THEN
IL=0
DO 20 1=1,N
KL=0
IF(LIST(I).EQ. 1.OR. N.EQ.NRED) THEN
IL=IL+1
DO 10 K=1,N
IF(LIST(K).EQ. 1.O R . NRED.EQ.N) THEN
KL=KL+1
IF(KL.LT.IL) THEN
HESSE C I L ,KL) =HES SE(KL,IL)
ELSE
E=ABS(X(I))
IF(E.LT.CUT) E=CUT
DELI=DELTA*E
SAVI=X(I)
IF (K.EQ.I) THEN
F=FUNC(X,N)
X(I)=X(I)+DELI
FP=FUNC(X,N)
X(I)=SAVI-DELI
FM=FUNC(X,N)
X(I)=SAVI
H E S S E (I L ,IL)= ( (FP-F)/DELI-(F-FM)/DELI)/DELI
ELSE
E=ABS(X(K))
IF(E.LT.CUT) E=CUT
DELK=DELTA*E
SAVK=X(K)
X(K)=SAVK+DELK
X(I)=SAVI+DELI
FP=FUNC(X,N)
X(I)=SAVI-DELI
FM=FUNC(X,N)
DFDXIP=(FP-FM)/ (DELI+DELI)
X(K)=SAVK-DELK
X(I)=SAVI+DELI
FP=FUNC(X,N)
X(I)=SAVI-DELI
FM=FUNC(X,N)
X(I)=SAVI
579
580 Приложение Е. Служебные программы (утилиты)
X(K)=SAVK
DFDXIM=(FP-FM)/ (DELI+DELI)
HESSE( IL , KL)=(DFDXIP-DFDXIM)/ (DELK+DELK)
END IF
END IF
END IF
10
CONTINUE
END IF
20
CONTINUE
END IF
END
E.2. Нахождение нулей функций численными методами
Вычисление квантили хр для функции распределения F(x) при заданной вероятности Р эквивалентно нахождению нуля функции
k(x) = Р - F(x).
(Е.2.1)
Будем решать эту задачу в два этапа. На первом этапе определим интервал
(хо)Х\), на котором эта функция обращается в нуль. На втором этапе будем
определенным образом постепенно уменьшать этот интервал до тех пор, пока
его длина не станет меньше заданного значения е.
На первом этапе воспользуемся тем, что функция к(х) монотонна (так как
функция f(x) монотонна). В качестве начальных значений возьмем хо и х\.
Если произведение f ( x 0) *f ( x \ ) < 0, т. е. если значения функции в этих точ
ках имеют противоположные знаки, то нуль функции лежит на этом отрезке.
Если же это не так, то исходный интервал нужно увеличить с той стороны,
где значение функции меньше, а затем повторить эту процедуру сначала для
новых значений границ интервала (x0<xi).
Программа Е.6. Подпрограмма AUXZBR строит интервальное приближение для
нуля функции f(x).
К ом анда
в ы зо в а : call auxzbr ( х о ,x
i , fun ct , p a r , n p a r i ,
NPAR2)
В х о д н ы е п а р а м е т р ы : Х0,Х1 —границы исходного интервала яо, ад, на
котором по предположению леж ит нуль функции f(x)
FUNCT —имя подпрограммы, написанной пользователем, которая
вычисляет значение функции f(x)
PAR,NPAR1,NPAR2 —параметры р, пх, П2 , от которых также (помимо
аргумента х) может зависеть функция f(x)
В ы х о д н ы е п а р а м е т р ы : ХО,XI —параметры хо, х\, которые являю тся
границами интервального приближения для нуля функции f(x)
К о м м е н т а р и и : Эта программа предназначена для нахождения нуля таких
монотонных по х функций, которые действительно обращаются в нуль.
Поэтому эту программу следует использовать только для таких функций.
Е.2. Нахождение нулей функций численными методами 581
SUBROUTINE AUXZBR(ХО, X I, FUNCT, PAR,NPAR1, NPAR2)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
PARAMETER (ZER0=0.D0, 0NE=1.D0, TW0=2.D0)
EXTERNAL FUNCT
IF(XO.EQ.Xl) X1=X0+0NE
F0=FUNCT(XO, PAR, NPAR1, NPAR2)
F1=FUNCT(XI, PAR, NPAR1, NPAR2)
DO 10 1=1,1000
IF(F0*F1 .GT. ZERO) THEN
IF(ABS(FO).LE.ABS(Fl)) THEN
XS=XO
X0=X0+TW0*(X0-X1)
X1=XS
F1=F0
FO=FUNCT(XO, PAR, NPAR1, NPAR2)
ELSE
XS=X1
X1=X1+TW0*(X1-X0)
X0=XS
F0=F1
F1=FUNCT(X1 ,PAR, NPAR1, NPAR2)
END IF
ELSE
GO TO 20
END IF
10 CONTINUE
20 CONTINUE
END
Для нахождения нуля функции на интервале (xo.xi) мы используем доста
точно медленный, но абсолютно надежный метод. Он заключается в том, что
на каждом интерационном шаге исходный интервал делится пополам и затем
заменяется на ту половину исходного интервала, у которой значения функции
на границах имеют противоположные знаки. Эта итерационная процедура про
должается до тех пор, пока длина интервала не станет меньше некоторого за
данного значения. (Такой метод поиска нуля функции носит название метода
Ньютона.)
Программа
Е .7 . П о д п р о г р а м м а AUXZFN о п р е д е л я е т н у л ь ф у н к ц и и
f ( x) путем
п оследовательного ум еньш ения исходн ого интер вала
К о м а н да
в ы зо в а : call a u x z f n ( x o , x i , x z e r o , f u n c t , p a r ,
N PA R1,N PA R2,EPSILN)
В ходные
п а р а м е т р ы : X O ,X I — г р а н и ц ы и с х о д н о г о о т р е з к а , н а к о т о р о м п о
п р едп ол ож ен и ю ф у н к ц и я обр ащ ается в нуль
FUNCT,PAR, NPAR1 ,NPAR2— т е ж е , ч т о и в п р о г р а м м е Е .б
582 Приложение Е. Служебные программы (утилиты)
EPSILN —точность е\ она задается таким образом, чтобы полученное
значение нуля функции и его истинное значение отличались меньше, чем
на величину е
В ыходны е
пара м етры :
XZER0 —нуль функции x z
SUBROUTINE AUXZFN(ХО, X1 ,XZERO, FUNCT, PAR, NPAR1, NPAR2, EPSILN)
IMPLICIT DOUBLE PRECISION (A-H,0-Z)
PARAMETER (ZER0=0.D0, HALF=0.5D0)
EXTERNAL FUNCT
XZERO=XO
DO 10 1=1,2000
F0=FUNCT(X0, PAR, NPAR1, NPAR2)
F1=FUNCT(X1 ,PAR, NPAR1, NPAR2)
IF(F0.EQ. ZERO) THEN
XZER0=X0
GO TO 20
ELSE IF(FI.EQ.ZERO) THEN
XZER0=X1
GO TO 20
END IF
XM=HALF*(XO+Xi)
IF(ABS(XQ-X1). GE. EPSILN) THEN
FM=FUNCT(XM, PAR,NPAR1,NPAR2)
TEST=F0*FM
IF(TEST .LT. ZERO) THEN
X1=XM
ELSE
X0=XM
END IF
ELSE
XZER0=XM
GO TO 20
END IF
10 CONTINUE
20 CONTINUE
END
В разделах С.4 — С.7 содержатся примеры, в которых используются модули
AUXZBR и AUXZFN.
Приложение F
Пакет графических программ GRPACK
F.I. Вводные замечания
Графическое представление данных и соответствующих кривых аппроксими
рующих функций всегда оказывает существенную помощь в процессе анализа
данных. Для этих целей мы будем использовать пакет простых, но очень по
лезных графических программ под названием GRPACK. Эти программы дают
возможность осуществлять графическое представление различных данных и
полученных результатов как на экране, так и на различных устройствах выво
да данных для персональных компьютеров типа IBM ХТ/АТ и PS/2. При этом
предполагается, что все эти компьютеры находятся в одной сети и подсоедине
ны к различным стандартным устройствам вывода данных. Такие компьютеры
с присоединенными устройствами вывода данных называются графическими
рабочими станциями. В разд. F.9 перечислены различные типы графических
рабочих станций, в которых может работать пакет GRPACK.
Поскольку компьютерная графика не является предметом этой книги, то
мы не будем приводить целиком тексты всех программ. Мы лишь кратко по
ясним их назначение. Тем не менее описание параметров отдельных программ
будут приведены полностью.
Пакет программ GRPACK состоит из подпрограмм, вызываемых пользова
телем, а также тех программ, которые вызываются автоматически и потому
они остаются как бы «невидимыми» для пользователя. Все эти подпрограм
мы имеют тип SUBROUTINE (т. е. стандартная подпрограмма). Строки вызова и
значение аргументов этих подпрограмм будут приведены в следующих разде
лах. Все программы мы будем подразделять на управляющие, преобразующие,
графические и служебные (утилиты).
В этом приложении даны инструкции по работе с пакетом GRPACK, а также
приведен целый ряд примеров программ. Однако для решения многих при
кладных задач достаточно ознакомиться всего лишь с пятью программами из
этого пакета, которые в свою очередь используют все остальные подпрограммы
пакета GRPACK. В результате запуска этих программ мы получаем уже готовый
график. Вот список этих программ:
— подпрограмма SMHSGR служит для построения гистограмм (см. пример про
граммы E2SM, разд. 6.12.2)
— подпрограмма SMSDGR предназначена для построения двумерной диаграм
мы рассеяния (см. пример программы E3SM, разд. 6.12.3)
— подпрограмма GRHSCV используется для построения гистограммы с нало
женным графиком аппроксимирующей функции (см. пример программы
E6GR, разд. F.10.6)
584 Приложение F. Пакет графических программ GRPACK
“3
— подпрограмма GRDTCV служит для построения диаграммы рассеяния с нало
женной кривой аппроксимирующей функции (см. пример программы E7GR,
разд. F.10.7)
— подпрограмма GRDTMC предназначена для построения диаграммы рассеяния
с наложенными кривыми нескольких функций (см. пример программ E8GR,
разд. F.10.8)
F.2. Управляющие программы
Программа F.I. Подпрограмма GR0PEN открывает доступ к графическому па
кету GRPACK
С помощью этой программы осуществляются все действия, необходимые для
инициализации работы пакета, поэтому этот модуль должен всегда запускаться
перед тем, как начать работу с любой из программ пакета GRPACK.
К ом анда
в ы з о в а : call gropen
Программа F.2. Подпрограмма GRCLSE осуществляет завершение сеанса рабо
ты в графическом пакете GRPACK
Эта программа очищает устройства вывода и закрывает пакет на всех акти
вированных рабочих станциях.
К ом анда
в ы з о в а : call grclse
Программа F.3. Подпрограмма GR0PWS активизирует графическую рабочую
станцию
Процедура активизации зависит от типа рабочей станции (см. разд. F.9).
К оманда в ы з о в а .* call gropws(NWS)
Входной ПАРАМЕТР: NWS —номер рабочей станции
Программа F.4. Подпрограмма GRCLWS завершает работу рабочей станции
Процедура завершения работы зависит от типа рабочей станции (см.
разд. F.9.).
К ом анда в ы з о в а : call grclws ( nws)
Входной ПАРАМЕТР: NWS —номер рабочей станции
F.3. Системы координат и преобразования
F .3 .I . С и ст ем ы к о о р д и н а т
О т н о с и т е л ь н ы е к о о р д и н а т ы (W C ). На рис. F.1 представлен график, по
строенный с помощью пакета GRPACK. Давайте на время представим, что все
элементы графика, всключая текст, действительно существуют, т. е. матери
альны (например, что они сделаны из изогнутой проволоки). Система коорди
нат, относительно которой задана эта проволочная конструкция, называется
F.3. Системы координат и преобразования 585
f ( x ) = ( 2 i o 2) " V 2 e x p ( - ( x - a ) 2/ 2 o 2)
fCx)
д
>X
Рис. F .l. Пример
простейшего
графика,
построенного
с помощью
пакета
GRPACK.
относительной системой координат (WC). Координаты точки в системе WC
обозначаются через (X,У ).
Стандартные координаты (С С ). Если рассмотреть координатные оси на
рис. F.1, то мы заметим, что в относительной системе координат длины осей
х и у примерно равны, но в соответствующих им единицах измерения их дли
ны существенно отличаются. На этом рисунке представлен график функции
у = f(x). Каждой точке (ж, у) этого графика соответствует точка (X, Y) в от
носительной системе координат. Координатную систему (х,у) с равными мас
штабными единицами будем называть стандартной системой координат (СС).
Переход от одной системы координат (WC) к другой (СС) осуществляется с
помощью преобразования (F.3.1).
Машинные координаты (D C ). Из (воображаемой) относительной систе
мы координат график должен быть перенесен на рабочую поверхность устрой
ства графического вывода данных (на экран дисплея или на бумагу). Будем
называть систему координат (и, и), заданную на этой поверхности, машинной
системой координат (DC).
F .3 .2 . Л и н е й н ы е п р е о б р а з о в а н и я . Г р а ф и ч е с к о е о к н о — О к н о
п росм отра
Введенные в этом разделе понятия, а также отдельные преобразования про
иллюстрированы на рис. F.2.
Давайте предположим, что в стандартной системе координат переменная х
принимает значения в интервале х а < х < хъ. Пусть в относительной систе-
586 Приложение F. Пакет графических программ GRPACK
Рис. F.2. Различные системы координат. Наверху: графическое окно в стандартной
системе координат. Посередине: окно просмотра, (маленький прямоугольник) и гра
фическое окно (большой прямоугольник) в относительной системе координат. Вни
зу: предварительное окно просмотра (прямоугольник, граница которого нарисова
на пунктиром), настроенное окно просмотра (маленький прямоугольник) и границы
поверхности экрана (большой прямоугольник) в машинной системе кординат. Ото
бражения между стандартной и относительной системами координат, а также отно
сительной и машинной системами координат представлены с помощью пунктирных
линий,
ме координат соответствующий отрезок равен X a < X < Х ъ - Следовательно,
линейное преобразование х —> X задается следующим образом:
Х = Х а + { х - х а)~ ~ -~ а .
(F.3.1)
Х Ъ - Ха
Преобразование у —> У задается аналогичным образом. Мы будем говорить,
что при этом задается отображение графического окна стандартной системы
координат СС с областью изменения переменных
(F.3.2)
в окно просмотра относительной системы координат WC с областью изменения
переменных
Ха < X <
Ха < X < Х ь,
У а < У < УЬ,
У а < У
< Уь.
(F.3.3)
F.4. Программы преобразования координат 587
Вообще говоря, это преобразование является искажающим, т. е. квадрат в си
стеме С С переходит в прямоугольник в системе WC. Искажения не будет толь
ко в том случае, если отношения соответствия для графического окна и окна
просмотра равны, т. е. если
УЬ
Уа
= Хлу ~ 5 а ■
*Ь
Та
(F.3.4)
Пользователь пакета программ GRPACK сначала в системе СС вычисляет
значения величин, которые затем будут представлены в графическом виде. По
сле этого, устанавливая размеры графического окна и окна просмотра, пользо
ватель задает отображение в систему координат WC. На этом этапе линейное
искажение допустимо, поскольку оно означает просто изменение масштаба.
Далее необходимо осуществить отображение на машинную систему коорди
нат DC. Это можно сделать путем задания параметров нового графического
окна (в системе координат WC) и нового окна просмотра (в системе координат
DC). Однако при этом нужно стремиться избежать излишнего искажения. По
этому мы зададим следующие интервалы изменения параметров в окне про
смотра:
иа < и <
va < v < Уь
(F.3.5)
Y> < Y < Y>.
(F.3.6)
и в графическом окне
К < X < X'b,
При этом отображение графического окна (F.3.6) на окно просмотра (F.3.5)
осуществляется только в том случае, если у обоих окон одинаковые отношения
соответствия. В противном случае окно просмотра (F.3.6) уменьшается по ши
рине симметрично справа и слева или по высоте симметрично сверху и снизу
до тех пор, пока окно просмотра
и'а < и <
и'ь,
и' <
V < v'b
(F .3 .7 )
не будет иметь такое же отношения соответствия, что и графическое окно
(F.3.6). В результате мы получаем отображение без искажений между этими
двумя окнами.
F.4. Программы преобразования координат
Пользователь пакета GRPACK должен задавать отображения между различны
ми системами координат с помощью соответствующих программ. Эти преобра
зования затем уже автоматически используются при построении графиков.
П р е о б р а з о в а н и е С С —►W C
Это преобразование можно задать с помощью следующих двух программ.
Программа F.5. Подпрограмма GRWNCC задает графическое окно в стандарт
ной системе координат
588 Приложение F. Пакет графических программ GRPACK
КОМАНДА ВЫЗОВА: CALL GRWNCC(ХАССДВССДACC,YBCC)
переменные ХАСС,XBCC,YACC,YBCC соответствуют
величинам х а: хь, Уа: Уъ из соотношения (F.3.2)
В е л и ч и н ы по у м о л ч а н и ю : до запуска модуля GRWNCC по умолчанию
Ха = о, Хь = 1, Уа = 0, уЬ = 1.
К о м м е н т а р и и : В случае если заданные значения параметров лишены
смысла, они заменяются на наиболее приемлемые в этой ситуации
значения. Если ХАСС = ХВСС, то полагается х а = ХАСС, хь = х а + 1. Это
также выполнено для значений уа и уъВ ходные
п ара м етры :
Программа F.6. Подпрограмма GRVWWC задает окно просмотра в относитель
ной системе координат
К оманда
в ы зо в а :
CALL GRVWWC(XAWC,XBWC,YAWC,YBWC)
переменные XAWC,XBWC,YAWC,YBWC соответствуют
величинам Х а, Хь, Уа, Уь из соотношения (F.3.3)
В х о дн ы е
пара м етры :
В е л и ч и н ы по у м о л ч а н и ю : до запуска модуля GRVWWC по умолчанию
Х а = О,
= 1, П = О, П = 1.
К о м м е н т а р и и : В случае если заданные значения параметров лишены
смысла, они заменяются на наиболее приемлемые в этой ситуации
значения. Если XAWC = XBWC, то полагается Ха = XAWC, Хь — Х а + 1.
П р е о б р а з о в а н и е W C —> D C
Это преобразование можно задать с помощью следующих двух программ.
Программа GRSTFR задает предварительное окно просмотра в машинной си
стеме координат. Настроенное окно просмотра отличается от предварительного
тем, что его отношение соответствия равно отношению соответствия графиче
ского окна, которое задается в относительной системе координат с помощью
программы GRWNWC.
Программа F.T. Подпрограмма GRSTFR устанавливает формат рисунка для
данной рабочей станции
CALL GRSTFR (NWS, WIDTH, HEIGHT)
К оманда
в ы зо в а :
В х о дн ы е
п ара м етры :
NWS —номер рабочей станции
(a) Если WIDTH > 0., HEIGHT > 0.:
WIDTH—ширина рисунка в см
HEIGHT —высота рисунка в см
(b) Если HEIGHT < 0.:
WIDTH —в стандарте DIN задает вид ландшафтного (альбомного)
формата, например, WIDTH = 5 означает «А5 landscape» (ландшафтный
или альбомный), т. е. соответствует случаю (a) WIDTH = 21.0, HEIGHT =
14.8
F.5. Программы построения графиков
WIDTH < 0.:
HEIGHT —задает
589
(с) Если
вид портретного (книжного) формата
К о м м е н т а р и и : П о с л е т о г о как р а б о ч а я с т а н ц и я б ы л а а к т и в и зи р о в а н а , д о
з а п у с к а п р о г р а м м ы GRSTFR п о у м о л ч а н и ю у с т а н а в л и в а е т с я ф о р м а т
«А5
la n d s c a p e » (л а н д ш а ф т н ы й и л и а л ь б о м н ы й ).
Если в качестве рабочей станции выступает устройство с экраном, то анализи
руется только отношение между шириной и высотой рисунка. График всегда
отображается в максимально возможном формате и центрируется по середине
экрана. Если же рабочая станция представляет собой графопостроитель или
принтер, то в этом случае анализируются размеры графика в сантиметрах,
поскольку размеры графика не могут превышать размеров соответствующего
листа бумаги. Если же размеры графика превышают заданные параметры, то
график уменьшается до тех пор, пока он не станет помещаться на соответ
ствующем листе бумаги. В обоих случаях график центрируется по середине
листа бумаги.
Программа
F .8 . П о д п р о г р а м м а GRWNWC у с т а н а в л и в а е т г р а ф и ч е с к о е о к н о в о т
носи тельн ой си стем е к о ор д и н ат
К ом анда вы зо ва:
call
grwnwc ( xapw c
, xbpw c , yapwc , y bpw c )
В х о д н ы е п а р а м е т р ы : п е р е м е н н ы е XAPWC,XBPWC,YAPWC,YBBWC
соотв етств ую т вели чи н ам
X af , X fb. У0'. Yb
В е л и ч и н ы по у м о л ч а н и ю :
до
и з с о о т н о ш е н и я ( F .3 .6 )
з а п у с к а м о д у л я GRWNWC п о у м о л ч а н и ю
Х'а = Х а, Х'ь = Хь, Уа' - Ya. Yb —Y*,.
К о м м е н т а р и и : В с л у ч а е е с л и з а д а н н ы е зн а ч е н и я
п олагается
п ар ам етр ов ли ш ены
см ы с л а , о н и з а м е н я ю т с я н а н а и б о л е е п р и е м л е м ы е в э т о й с и т у а ц и и
X fa = XAPWC,
X fb = X fa + 1. Если XAPWC > XBPWC, то полагается X fa = XBPWC, X bf = XAPWC.
Аналогичные действия выполняются для параметров Y£ и Yb.
зн а ч е н и я . Е с л и XAPWC = XBPWC, т о в п р о г р а м м е п о л а г а е т с я
Обычно, определив с помощью программ, описанных в этом разделе, пара
метры преобразований в относительную и машинную системы координат, поль
зователь должен задать параметры лишь в стандартной системе координат.
При определенных условиях графики невозможно нарисовать целиком.
Они обрываются, если выходят за пределы так называемой области отсече
ния. Говорят, что такие графики являются усеченными. Для кривых, маркеров,
точечных данных и контурных линий (см. разд. F.5) область отсечения зада
ется в стандартной системе координат; для текста и различных специальных
графических символов область отсечения задается в виде графического окна
в относительной системе.
F.5. Программы построения графиков
Приведенные выше подпрограммы служат для подготовки к построению гра
фиков, однако не осуществляют самого процесса построения. Все графики,
590
П рилож ение F.
Пакет графических программ GRPACK
которые можно построить с помощью пакета GRPACK, состоят из отрезков пря
мых. Эти отрезки имеют заданную толщину и/или цвет. Для рабочих станций,
на которых установлен пакет GRPACK, толщину и/или цвет линий можно изме
нять. Это можно сделать путем установки индекса цвета. Трактовка значений
индекса цвета для различных рабочих станций приведена в разд. F.9. Если ин
декс цвета задан, то он сохраняется таким до того момента, пока он не будет
заново определен.
Программа F.9. Подпрограмма GRSTCL устанавливает индекс цвета
К о м а н д а в ы з о в а : CALL GRSTCL(ICOL)
Входной
ПАРАМЕТР: IC0L — индекс цвета
В е л и ч и н ы по у м о л ч а н и ю : П о умолчанию до запуска программы GRSTCL
индекс цвета полагается равным 1.
К о м м е н т а р и и : Трактовка значений индекса цвета зависит от типа рабочей
станции (см. разд. F.9.).
Понятия кривой (ломаной) и полимаркера мы рассматривали на примерах
достаточно простых графиков. Кривой (ломаной, полилинией) называется по
следовательность отрезков прямых, образующих ломаную линию с началом
в точке (zb j/i) и концом в точке (хп, уп), проходящую через точки (£2 , 2/2 ),
(#з,Уз), — Полимаркер служит для обозначения точек на графике в виде
различных графических символов. На рис. F.3 представлены все гюлимаркеры, имеющиеся в пакете GRPACK.
1
3
5
7
9
О
□
О
+
*
•
2
Р и с . F .3 . П олимаркеры .
■
к
♦
6
X
8
F.5, Программы построения графиков
591
Программа F.10. Подпрограмма GRPLIN строит ломаную кривую.
К о м а н д а в ы з о в а : call grplin (N,x pl , ypl )
В х о д н ы е п а р а м е т р ы : N—количество точек, определяющих положение
ломаной кривой
XPL —название массива, содержащего координаты этих точек по оси х (в
стандартной системе координат)
YPL —название массива, содержащего координаты этих точек по оси у
К о м м е н т а р и и : Ломаная кривая может быть построена только в пределах
графического окна в стандартной системе координат (F.3.2).
Очевидно, что с помощью ломаной можно построить приближение к не
которой кривой с любой точностью, Так, например, графики функций можно
рассматривать как ломаные, у которых точки, определяющие ее положение,
лежат достаточно близко друг к другу.
Иногда бывает нужно изобразить ломаную не как сплошную линию, а в
виде пунктирной или точечной линии или же как линию типа «точка-тире».
Программа F.11. Подпрограмма GRBRPL строит ломаную кривую заданного
типа
КОМАНДА ВЫЗОВА: CALL GRBRPL(NTYPE,SCALEF,N,XPL,YPL)
В х о д н ы е п а р а м е т р ы : NTYPE —т и п линии (1: пунктир, 2: точка, 3:
точка-тире)
SCALEF —масштабный множитель. Средняя длина пунктира составляет
один процент от длины диагонали рисунка в целом, умноженной на этот
коэффициент.
N,XPL,YPL—те же, что и в программе F.10
Программа F.12. Подпрограмма GRMARK наносит на график полимаркер
К о м а н д а ВЫЗОВА: CALL GRMARK(NMARK,SCALEFДРМДРМ)
В х о д н ы е п а р а м е т р ы : NMARK—т и п (номер) полимаркера (см. рис, F.3)
SCALEF —масштабный множитель. Диаметр полимаркера равен одному
проценту от длины диагонали рисунка в целом, умноженной на этот
коэффициент.
ХРМ, YPM—координаты х, у (в стандартной системе координат) той точки,
которую нужно изобразить в виде полимаркера.
К о м м е н т а р и и : Полимаркеры можно нанести на график только в пределах
графического окна в стандартной системе координат (F.3.2).
Полимаркеры очень удобно использовать при построении диаграммы рас
сеяния. Если данные содержат ошибки измерений, то эти ошибки по обеим
592
П рилож ение F.
Пакет графических программ GRPACK
координатным осям можно представить в виде отрезков ошибок. Помимо это
го, иногда бывает необходимо построить целиком весь эллипс равных вероят
ностей. Все это можно сделать с помощью следующей программы. Примеры
результатов ее работы приведены на рис. F.4.
Р и с . F .4 . П римеры п редставл ен ия дан н ы х и и х ош ибок изм ерений.
Программа F.13.
П о д п р о г р а м м а GRDATP с л у ж и т д л я п р е д с т а в л е н и я д а н н ы х и
и х ош и бок на гр а ф и к е в в и д е то ч ек с отр езк ам и ош и бок или в в и де точ ек с
эл л и п с а м и р а в н ы х в е р о я т н о с т е й
К о м а н д а ВЫЗОВА: CALL GRDATP (NMARK, SCALEF, X , Y , SIGMAX, SIGMAY, COVAR)
В х о д н ы е п а р а м е т р ы : NMARK —тип (номер) полимаркера, с помощью
которого будет изображаться точка на графике (см. рис. F.3)
SCALEF — м а с ш т а б н ы й м н о ж и т е л ь , т о т ж е , ч т о и в п р о г р а м м е F .1 2
X, Y—координаты точки (х, у) в стандартной системе координат
SIGMAX —<
тх —ошибка по оси х
SIGMAY —<jy —ошибка по оси у
COVAR —cov(x, у) — ковариация между х и у
К о м м е н т а р и и *. Отрезок ошибок по оси х строится только в том случае, если
<тх > 0 , а по оси у — только если <ту > 0. Эллипс равных вероятносетй
строится только тогда, когда ах > 0, <ту > 0 и cov(:r, у) ф 0. Отрезки
ошибок не наносятся на график, если их длина не превосходит диаметр
соответствующего полимаркера. Кроме того, если часть графика выходит
за пределы графического окна в стандартной системе координат (F.3.2),
то эта часть не попадет на окончательный рисунок.
Следующая программа осуществляет построение гистограммы по некото
рым данным. Гистограмма представляет собой диаграмму частот для соответ
ствующих данных (см. разд. 6.3).
F .5.
Программа F.14. Подпрограмма
мы
GRHSDR
Программы построения графиков
593
осуществляет построение гистограм
КОМАНДА ВЫЗОВА: CALL GRHSDR(HIST,XO,DELX,NX)
В х о д н ы е п а р а м е т р ы : H IS T — м а с с и в , э л е м е н т а м и к о т о р о г о с л у ж а т
к о л и ч е с т в а н а б л ю д е н и й , п о п а в ш и х в п ер в ы й , в т о р о й и т. д . и н т е р в а л ы
разби ен и я н а ги стогр ам м е
ХО — нижняя граница первого
интервала разбиения
DELX —длина интервалов разбиения
NX —количество интервалов разбиения
К о м м е н т а р и и : Обычно массив HIST заполняется значениями с помощью
модулей 6.2 и 6.3.
Завершим список графических программ программой построения контур
ных линий. Пусть некоторая функция / = f ( x . y ) задает поверхность в трех
мерном пространстве (т. у, /) . Графическое представление о виде этой поверх
ности и поведении функции можно получить, построив на плоскости (х . у )
линии уровня функции /(я ,у ), т. е. линии, на которых она равна заданной
константе с. Линии уровня представляют собой контурные линии /(ж, у) = с.
Множество контурных линий /(я , у) = щ, С2 , ... напоминает собой топографи
ческую карту и дает достаточно четкое представление о поведении исследуе
мой функции.
Конечно, невозможно вычислить значения исследуемой функции во всех
точках плоскости (ж, у). Мы ограничимся рассмотрением прямоугольной обла
сти на плоскости (ж, у) (обычно этот прямоугольник и будет графическим ок
ном в стандартной системе координат), которую разобьем на N = пхп у соста
вляющих прямоугольников. Координаты по оси х вершин этих составляющих
прямоугольников образуют последовательность
я0,
+ А х, яо + 2А х , . . . , хо + пхЛх.
А координаты их вершин по оси у —последовательность
Уо, Уо + Ау,
уо + 2А у у. . . , у0 + пуАу.
В каждом из этих прямоугольников линию уровня можно аппроксимировать
прямой. Для этого нужно рассмотреть значения функции (/(ж, у) —с) в вер
шинах конкретного прямоугольника. Если в двух соседних вершинах (т. е. тех
вершинах, которые являются концами одной из сторон прямоугольника) эта
функция имеет противоположные знаки, то это означает, что линия уров
ня пересекает эту сторону. Координаты точки пересечения можно вычислить
методом линейной интерполяции. Если линия уровня пересекает две сторо
ны прямоугольника, то найденные точки пересечения нужно просто соединить
отрезком прямой. Если же линия уровня пересекает три или четыре стороны
прямоугольника, то отрезками нужно соединить все пары найденных точек
пересечения.
594
П рилож ение F.
Пакет графических программ GRPACK
О чеви дн о, ч то ап п р ок си м ац и я к о н т у р н ы х линий лом ан ы м и б у д е т тем бол ее
т о ч н о й , ч ем б о л е е м е л к и м б у д е т р а з б и е н и е н а с о с т а в л я ю щ и е п р я м о у г о л ь н и
ки. О д н а к о у в е л и ч е н и е ч и с л а с о с т а в л я ю щ и х п р я м о у г о л ь н и к о в в л е ч е т з а с о б о й
увел и ч ен и е врем ени вы числений .
Подпрограмма GRPLCT определяет вершины исходного прямоугольника,
осуществляет его разбиение на составляющие прямоугольники и строит кон
турную линию /(х ,у ) — с.
Программа F .1 5 . Подпрограмма GRPLCT в виде ломаной на плоскости (х, у)
строит контурную линию /(х ,у ) = с для функции /
К ом анда
вы зо ва :
CALL GRPLCT(ХО,YO,DX,DY,NX,NY,FCONT,USERFN)
ХО, DX, NX— н а ч а л ь н о е
хо , д л и н а о т р е з к о в
А х и к о л и ч е с т в о о т р е з к о в п х , н а к о т о р ы е р а з б и т а о сь х
Y0,DY,NY—т е ж е п а р а м е т р ы д л я о с и у
В ходны е
парам етры
:
зн а ч е н и е
FC0NT — к о н ст а н т а с, к о т о р о й р а в н о зн а ч е н и е ф у н к ц и и н а д а н н о й л и н и и
уровня
К
ом м ентарии:
П ол ь зов ател ь д о л ж е н н ап и сать к ор отк ую п о д п р о гр а м м у с
д в у м я аргум ентам и
(х, у ) ,
к о т о р а я д о л ж н а в ы ч и с л я т ь зн а ч е н и е ф у н к ц и и
f = f(x,y).
М одуль
GRPLCT п о с л е д о в а т е л ь н о
н а х о д и т зн а ч е н и я к о о р д и н а т в е р ш и н м а
л е н ь к и х п р я м о у г о л ь н и к о в и зн а ч е н и й ф у н к ц и и в э т и х т о ч к а х . П р и э т о м в ы зы
в а е т с я п р о г р а м м а GRPXCT, к о т о р а я о с у щ е с т в л я е т д л я к а ж д о г о п р я м о у г о л ь н и к а ,
составляю щ его р а зб и ен и е, оп и са н н у ю вы ш е п р оц ед ур у.
Программа F .1 6 . Подпрограмма GRPXCT строит аппроксимацию прямой для
контурной линии /(х ,у ) = с в пределах прямоугольника, составляющего раз
биение исходного прямоугольника на плоскости (х, у)
КОМАНДА ВЫЗОВА:
В
CALL GRPXCT(X1,X2,Y1,Y2,F11,F12,F21,F22,FC0NT)
ходны е п арам етры
: XI , Х 2 , Y i , Y2 — к о о р д и н а т ы в е р ш и н п р я м о у г о л ь н и к а
P u = ( z i , y i ) , P l 2 = ( x i , y 2), P n = ( X 2 , Vl ) , Р 22 = ( х 2' У 2 )
F il ,F12 ,F2i ,F22—значения функции в этих точках
FCGNT —константа, которой равно значение функции на этой линии
уровня
Н а р и с. F .5 п р е д с т а в л е н п р и м е р р е зу л ь т а т о в р а б о т ы э т и х п р о г р а м м — л и н и и
уровня д л я некоторой ф ун к ц и и .
F.6. Графические служебные программы
С пом ощ ью п р едстав л ен н ы х вы ш е п р огр ам м м ож н о п острои ть м н ож еств о гр а
ф и ков р азл и ч н ой сл ож н ости . П р ограм м ы и з этого и сл едую щ его р аздел ов
п р е д н а зн а ч е н ы д л я т о г о , ч т о б ы о б л е г ч и т ь з а д а ч у п о л ь з о в а т е л я п о о ф о р м л е
н и ю г р а ф и к о в . С и х п о м о щ ь ю н а н о с я т с я к о о р д и н а т н ы е о си и и х р а з м е т к а ,
в с т а в л я ю т ся н е о б х о д и м ы е т е к с т о в ы е к о м м ен т а р и и .
F.6. Графические служебные программы
595
Рис. F.5. Линии уровня /(х , у) = —0.9, —0 .8,..., 0.8,0.9 для функции /(х ) = sin(x +
у) cos([x — у]/2) на плоскости (х,г/).
Программа F.17. Подпрограмма GRFRAM строит рамку вокруг графического
окна в относительной системе координат
К ом анда
в ы зо в а :
CALL GRFRAM
Программа F.18. Подпрограмма GRBQUN строит рамку вокруг графического
окна в стандартной системе координат
К ом анда
в ы зо в а :
CALL GRB0UN
Программа F.19. Подпрограмма GRSCLX рисует координатную ось х.
К о м анда
в ы зо в а : call grsclx ( string , len)
STRING —название символьной строки (записанной в
соответствии с разд. F.7). Символы из этой строки отображаются на
графике под осью х слева направо. Если эта символьная строка состоит из
одних пробелов, то никакого текста под осью не появляется.
LEN —длина символьной строки
В ходные
парам етры :
К о м м е н т а ри и : Внутри графического окна в стандартной системе
координат вдоль верхней и нижней его границ наносится соответствующая
разметка. Под его нижней границей наносятся числа, отвечающие этой
разметке. Сначала рекомендуется запускать модуль GRB0UN. Это нужно
делать для того, чтобы нарисовать само графическое окно.
596
Приложение F. Пакет графических программ GRPACK
Программа F.20, Подпрограмма GRSCLY рисует координатную ось у .
К оманда
в ы з о в а : c a l l g r s c l y (s t r i n g ,l e n )
STRING —название символьной строки (записанной в
соответствии с разд. F.T). Символы из этой строки отображаются на
графике слева от оси у снизу вверх. Если эта символьная строка состоит
из одних пробелов, то никакого текста слева от этой оси не появляется.
LEN —длина символьной строки
В ходные
п ара м етры :
с м . программу F.19. Разметка наносится вдоль левой и
правой границ графического окна в стандартной системе координат.
Сбоку от его левой границы наносятся числа, отвечающие этой разметке.
К ом м ен та рии :
Обычно построение координатных осей и нанесение на них разметки с по
мощью модулей GRSCLX и GRSCLY осуществляется автоматически, без вмеша
тельства пользователя. Тем не менее иногда бывает необходимо изменить авто
матическую разметку. Это можно сделать с помощью следующей программы.
Программа F.21. Подпрограмма GRSCDF определяет параметры координатных
осей.
К оманда
в ы з о в а : c a l l g r s c d f Cf i x ^ e l .n i n t e r .s c f t i c ,
SCFNUM,LNUM)
FIX —значение (в стандартной системе координат),
которое будет нанесено в качестве специальной отметки на координатную
ось. Эта отметка будет также снабжена снизу соответствующим числом
DEL —расстояние между такими специальными метками
NINTER —количество стандартных отметок между двумя специальными
метками
SCFTIC —масштабный множитель для определения длины отметок
SCFNUM—масштабный множитель для определения размера шрифта для
чисел
LNUM—логическая переменная для определения формы представления
чисел под координатными осями. Если LNUM = .TRUE, (истина), то это
будет десятичная форма, а если LNUM = .FALSE, (ложь), то
экспоненциальная форма
В ходные
пара м етры :
Если заданное значение одного из параметров
меньше либо равно 0, то по умолчанию выбирается некоторое
осмысленное значение.
В еличины
по у м о л ч а н и ю :
К о м м е н т а р и и : В результате запуска модуля GRSCDF изменяется разметка
только тех осей, которые будут созданы при следующем запуске модулей
GRSCLX и GRSCLY.
Программа F.22. Подпрограмма GRCCRS рисует координатные оси в стандарт
ной системе координат
К оманда
в ы зо в а : c a l l g r c c r s
F.7. Текст на графиках
597
К о м м е н т а р и и : Координатные оси в стандартной системе координат
наносятся в виде пунктирных линий в соответствующем графическом
окне.
F.T. Текст на графиках
Текстовые комментарии, сделанные на графике, облегчают его восприятие. С
помощью подпрограмм из данного раздела можно создавать блоки текста, ко
торые будут затем размещены в любом месте поверх графика.
Текст должен быть задан пользователем в виде символьной строки на язы
ке FORTRAN. Однако для перевода этого текста в графические символы его
нужно закодировать. Используемая нами система кодирования позволяет вста
влять на график простые математические формулы. Для этого применяются
три типа символов: латинские и греческие буквы, а также математические
знаки. Все они приведены в табл. F.1, Тип символа определяется с помощью
управляющего символа из следующего списка:
©для латинского алфавита,
& для греческого алфавита,
для математических знаков.
Наличие в строке управляющего символа указывает на то, что все символы,
стоящие после него и до следующего управляющего символа, относятся к со
ответствующему типу. Если тип не указан, то по умолчанию символ считается
буквой латинского алфавита.
Кроме того, существуют символы, определяющие положение следующих
за ним символов:
~ для
_ для
# для
" для
надстрочного (верхнего) индекса (показателя степени),
подстрочного индекса (нижнего индекса),
стандартного положения,
возврата назад на одно положение.
При отсутствии специального символа, указывающего на смену положения, все
символы по умолчанию считаются находящимися в стандартном положении.
Сдвиг вниз или вверх возможен не более чем на два уровня, т. е. не более чем
на А а0 или А ар. Символы и _ остаются в силе до тех пор, пока не появит
ся символ #. Символ " определяет положение только того символа, который
следует за ним. Он означает, что следующий символ должен появиться над
предыдущим, а не после него. Таким образом, например, вместо А £ п о я в и т с я
запись А@.
Безусловно, длина символьных строк, задаваемых пользователем, может
быть различной. Для того чтобы иметь возможность варьировать длину строк,
избегая при этом трудностей, вызванных спецификой обработки символьных
строк в языке FORTRAN, символьную строку в пользовательских программах
(например, строку с названием TEXT длины 1еп) нужно описывать следующим
образом:
Т абли ц а F .l . Различные символы, используемые при формировании текста.
Клавиатура
А
В
С
D
Е
F
G
Н
I
J
К
L
М
N
0
Управляющие переменные
Латинские
Греческие
Математические
@
&
%
А
А(АЛЬФА)
А
В
В (БЕТА)
в
Х(ХИ)
С
D
Л (ДЕЛЬТА)
л
Е
Е(ЭПСИЛОН)
Е
F
Ф(ФИ)
F
G
Г(ГАММА)
ф
Н
Н(ЭТА)
н
I
ЦЙОТА)
I
J
1(ЙОТА)
J
К
К(КАППА)
к
L
Л(ЛЯМБДА)
1
М
М(МЮ)
±
и
N
О
Р
Р
Q
Q
R
R
S
S
т
и
V
W
X
Y
Z
Клавиатура
а
b
т
и
V
W
X
Y
Z
N(HKD)
Л(ОМЕГА)
Я(ПИ)
в(ТЕТА)
R (P O )
Х'(СИГМА)
Т(ТАУ)
О(ОМИКРОН)
Ф(ПСИ)
Я(КСИ)
Г(УПСИЛОН)
Z (3 E T A )
с
d
е
f
g
h
i
j
k
N
1
m
n
6
0
6
P
Q
ч
о‘
r
s
6
1
1
t
u
V
V
и
и
Управляющие переменные
Латинские
Греческие
Математические
@
&
%
а
а(альфа)
а
Ъ
/З(бета)
Ъ
с
с
х ( хи)
d
6(дельта)
d
е (эпсилон)
е
е
f
f
ч>(Фи)
7
(гамм
а)
g
g
h
h
г}(эта)
i
i
б(йота)
б(йота)
j
j
k
k
к(каппа)
1
1
Л(лямбда)
m
m
ju( mk>)
n
n
1/(ню)
6
и( омега)
0
7г(пи)
P
P
^(тета)
q
q
r
r
р(ро)
s
а (си гма)
s
t
t
т(тау)
о(омикрон)
ii
u
V
w
у
X
X
X
А
Z
У
z
у
|
z
V
^(пси)
4(кси)
г^(упсилон)
С(зета)
w
X
У
z
1
$
*
(
)
+
t
i
2
3
4
5
6
7
8
9
0
rs -/
rsj
I
$
*
\
$
#
T
1
-b
£
(
)
+
£
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
I
$
X
-
—
}
{
}
1
i
+
(
1
2
3
4
5
6
7
8
9
0
[
]
\
[
]
»
)
<
>
*?
<
>
?
j
/
/
—
-
{
}
I
1
@
7
}
j
1
[
]
*
£
i
c
Э
§
<
>
*
J
\
>
%
600 Приложение F. Пакет графических программ GRPACK
CHARACTER* len TEXT
Прежде чем запускать подпрограмму, в которой в качестве одного из аргумен
тов используется символьная строка, эту строку надо задать, например, так:
TEXT = ’f(x ) = e~xJ
Для строк, длина которых превышает 100 символов, отображаются только пер
вые 100 из них. Пробелы в конце строк в качестве значащих символов не рас
сматриваются.
Программа F.23. Подпрограмма GRTXTC добавляет текст к графику
К о м а н д а в ы з о в а : call grtxtc( scalef , string , len)
В х о д н ы е п а р а м е т р ы : SCALEF — масштабный множитель. Высота букв
составляет 1.5 % от длины диагонали графического окна в относительных
координатах, умноженной на этот коэффициент
STRING —название символьной строки, в которой записан закодированный
текст
LEN —длина символьной строки
К о м м е н т а р и и : Текст размещается по центру прямо под верхней границей
графического окна в относительной системе координат.
Иногда у пользователя возникает необходимость вставить текст на графике
в определенном месте, например рядом с какой-либо конкретной кривой или
какой-либо точкой, а также выбрать размер шрифта этого текста. Это можно
сделать с помощью следующей программы.
Программа F.24. Подпрограмма GRTXTF вставляет текст в определенном месте
на графике
К о м а н д а ВЫЗОВА: CALL GRTXTF(X,Y,SCALEF,STRING,LEN)
В х о д н ы е п а р а м е т р ы : X,Y —координаты точки (ж ,у) в стандартной системе
координат. Эта точка —левая нижняя вершина прямоугольника,
окружающего текст
SCALEF —масштабный множитель. Высота букв в тексте составляет 1.5 %
от длины диагонали графического окна в стандартной системе координат,
умноженной на этот коэффициент
STRING —название символьной строки, в которой записан текст в
закодированном виде
LEN —длина символьной строки
F.8. Программы для построения некоторых конкретных
графиков
С помощью трех следующих подпрограмм наиболее простым способом можно
решить ряд задач, которые часто возникают на практике.
F.8. Программы для построения некоторых конкретных графиков 601
Программа F.25. Подпрограмма GRHSCV для построения гистограммы и про
извольной ломаной
Такой график приходится строить тогда, когда данные имеют частотное пред
ставление и когда нужно построить кривую, аппроксимирующую данную ги
стограмму (см. рис. F.7).
К о м а н д а в ы з о в а : call GRHSCV(xpl , ypl , npl , h ist , xo,
DELX, NX,TX, LTX, TY, LTY,CAPT, LCAPT,NWS)
В х о д н ы е п а р а м е т р ы : XPL,YPL— массивы, в которых содержатся
координаты х и у точек, определяющих вид ломаной
NPL —количество точек, определяющих вид ломаной
HIST,X0,DELX,NX—параметры гистограммы (те же, что и в программе
6 .2 )
TX,TY,CAPT—символьные строки, содержащие блоки текста, которые
будут размещены вдоль горизонтальной и вертикальной осей,
соответственно, а также в заголовке
LTX, LTY, LCAPT —длины символьных строк
NWS —номер рабочей станции
К о м м е н т а р и и : Длина горизонтальной оси равна суммарной длине
интервалов разбиения на гистограмме. Масштаб вертикальной оси
выбирается таким образом, чтобы столбцы на гистограмме по высоте
не выходили за пределы оси, а также чтобы они не были слишком
маленькими. График соответствует формату бумаги А5.
Программа F.26. Подпрограмма GRDTCV для построения диаграммы рассеяния
и произвольной ломаной
Эта программа позволяет построить диаграмму рассеяния (по желанию поль
зователя на график могут быть также нанесены отрезки ошибок и эллипсы
равных вероятностей) и некоторую аппроксимирующую кривую (см., напри
мер, рис. F.8).
К о м а н д а в ы з о в а : CALL GRDTCV(XPL, YPL, NPL, NMARK,
SCALEF, DATX, DATY, DATSX, DATSY, DATCOV,NDAT,
TX, LTX, TY, LTY, CAPT, LCAPT, NWS)
В х о д н ы е п а р а м е т р ы : XPL,YPL,NPL —те же параметры, задающие вид
ломаной, что и в модуле GRHSCV (см. программу F.25)
NMARK,SCALEF —тип (номер) полимаркера, с помощью которого будут
изображаться точки на диаграмме, и масштабный множитель (см.
программу F.13)
DATX,DATY,DATSX,DATSY,DATCOV—массивы (минимальная длина их
равна NDAT), их компоненты являются, соответственно, координатами
по оси х, координатами по оси у, ошибками по оси х, ошибками по оси
у и соответствующими ковариациями (см. программу F.13)
NDAT —количество результатов измерений (точек на графике)
TX,LTX,TY,LTY,CAPT, LCAPT, NWS- т е же, что и в модуле GRHSCV (см.
программу F.25)
602
Приложение F. Пакет графических программ GRPACK
К о м м е н т а р и и : Масштаб по оси абсцисс и по оси ординат выбирается
таким образом, чтобы он соответствовал значениям координат точек
на графике (результатам измерений). График строится на бумаге
формата А5.
*
Программа F.27. Подпрограмма GRDTMC для построения диаграммы рассеяния
и нескольких произвольных ломаных
Эта программа позволяет построить диаграмму рассеяния (по желанию поль
зователя на график могут быть также нанесены отрезки ошибок и эллипсы
равных вероятностей) и нескольких аппроксимирующих кривых (см., напри
мер, рис. F.9).
К о м а н д а в ы з о в а : call grdtmc( xpl , ypl , npl , ncurve , ncol ,
NMARK,SCALEF,DATX,DATY,DATSX,DATSY,DATCOV,NDAT,
TX, LTX#TY, LTY, CAPT, LCAPT, NWS)
В х о д н ы е п а р а м е т р ы : XPL,YPL —массивы, содержащие координаты
точек, определяющих вид ломаных; г-я точка, принадлежащая j -й
ломаной имеет координаты XPL(I, J), YPL(I, J)
NPL —количества точек, определяющих вид ломаных
NCURVE—количество ломаных
NC0L —массив, элементы которого являются индексами цвета для
соответствующих ломаных. Индекс цвета для j -й ломаной равен
абсолютной величине значения NCOL(J). Если значение величины
NCOL(J) положительно, то ломаная изображается в виде сплошной
линии, а если отрицательно —то в виде пунктирной линии.
Все остальные аргументы —те же, что и в программе GRDTCV
К о м м е н т а р и и : Э той программой можно также воспользоваться, если
нужно построить только диаграмму рассеяния (NCURVE = 0) или
только некую ломаную кривую (NPL = 0). Если график строится по
результатам измерений, то масштаб по горизонтальной и вертикальной
осям выбирается в соответствии со значениями координат точек. Если
же это не так, то масштаб подбирается согласно параметрам ломаной.
График строится на бумаге формата А5.
F.9. Графические рабочие станции
F.9.I. Типы рабочих станций. Файл инициализации. Индекс цвета
Согласно компьютерной терминологии, устройства, с помощью которых мож
но осуществить графическое представление данных, называются графическими
рабочими станциями. Пакет программ GRPACK поддерживает два типа рабо
чих станций: экран компьютера (или графическое окно на экране компьютера)
и графопостроитель или принтер. Во втором случае графики сначала сохраня
ются в виде файлов, а затем распечатываются на бумаге с помощью принтера
или с помощью графопостроителя. Информация о типе и параметрах конкрет
ного устройства передается в пакет GRPACK, используя файл инициализации
F.9. Графические рабочие станции 603
GRINIT.DAT. Если конкретная рабочая станция по своим параметрам не со
ответствует данным этого файла, то в файл нужно внести соответствующие
изменения.
В инсталляционном пакете (см. разд. G.5) содержится файл GRINIT.DAT, в
котором имеется информация о виде вашего компилятора и типе операционной
системы. В этом файле содержится информация о различных устройствах,
однако только два из них активированы. Это
• экран компьютера, поддерживающий графический режим VGA (или совме
стимый), если вы работаете в операционной системе DOS (или графическое
окно на экране компьютера, если вы работаете в операционной системе
WINDOWS или Linux с XWindow),
• графопостроитель или принтер, на которых графики распечатываются из
PostScript-файла.
В файле GRINIT.DAT под заголовками [device3 содержатся описания устройств,
причем в зависимости от типа операционной системы и/или компилятора рас
познаваться могут только некоторые из них. Для одного устройства может
быть несколько описаний. Всего для всех устройств может быть не более 16
распознаваемых описаний. В большинстве случаев вам не придется изменять
данную версию файла GRINIT.DAT. Однако вы можете отредактировать его,
если захотите активировать или отключить некое устройство или же изменить
параметры одного из устройств. (Если ваш компьютер поддерживает только
графический режим EGA, то вы можете отключить режим VGA и активиро
вать режим EGA. Если вы хотите создать файл типа HP-GL, а не PostScriptфайл, то вы можете отключить режим PostScript и активировать режим
HP-GL.) Файл GRINIT.DAT записан в AS СП-кодировке, поэтому для его ре
дактирования не нужен никакой специальный редактор. Для облегчения по
нимания все описания в файле снабжены дополнительными комментариями.
Поэтому здесь, не вдаваясь в детали, мы лишь перечислим основные параме
тры рабочих станций:
• тип рабочей станции,
• подробные технические характеристики (например, режим представления
видеоизображений),
• ширина и высота поверхности рабочей станции в пикселах и/или в санти
метрах,
• цвет фона,
• цвета и/или толщина линий, указанные с помощью восьми индексов цвета.
F.9.2. Экран компьютера или графическое окно
Если вы работаете с файлом GRINIT.DAT из инсталляционного пакета, то до
ступ к этой рабочей станции осуществляется путем установки номера рабочей
станции NWS равным 1. При модификации файла GRINIT.DAT номер рабочей
станции может измениться. С помощью подпрограммы GRNBWS (см. разд. F.9.4)
можно получить список текущих номеров рабочих станций.
604 Приложение F. Пакет графических программ GRPACK
Графические реж имы экрана в операционной системе DOS. В DOS
существуют следующие графические режимы:
• VGA, EGA, CGA,
• 8514/А,
• Hercules.
В некоторых компиляторах режимов меньше, а в некоторых —больше. По
умолчанию устанавливается режим VGA или эквивалентный ему. Более по
дробно об этом можно узнать из файла GRINIT.DAT.
Если эта рабочая станция активирована, то экран компьютера очищается и
из буквенно-цифрового режима переключается в графический режим работы.
Когда сеанс работы данной рабочей станции завершается, программа приоста
навливает работу до тех пор, пока не будет нажата клавиша ENTER (ввод).
Это нужно для того, чтобы иметь возможность изучить построенные графи
ки. Затем экран снова очищается и вновь переключается в буквенно-цифровой
режим работы.
При повторной активизации рабочей станции экран вновь очищается, пе
реключается в графический режим, затем осуществляется построение следу
ющих графиков и т.д.
Графическое окно в W IN D O W S. Если вы используете программу
Quick Win, созданную компанией Microsoft, то при активизации рабочей стан
ции такого типа на экране появляется графическое окно, в котором затем стро
ятся соответствующие графики. После завершения сеанса работы такой рабо
чей станции графическое окно не исчезает, а остается доступным для того,
чтобы можно было изучить построенные графики. Если вы затем вновь акти
вируете рабочую станцию, то новый график появится в том же графическом
окне, а предыдущие графики исчезнут.
Если вы работаете в операционной системе WINDOWS 95 или в системе
WINDOWS NT (и не используете программу QuickWin), то при активизации
рабочей станции с помощью модуля GR0PWS создается дочернее окно, размеры
которого можно изменять, и в нем осуществляется построение графика. Это
окно остается открытым даже после запуска модуля GRCLWS. При следующем
запуске программы GR0PWS создается новое дочернее окно. Всего может быть
открыто не более десяти окон. Если вы запустите программу GR0PWS после того,
как уже были открыты десять окон, то никаких действий осуществляться не
будет. Дальнейшая работа модуля GR0PWS будет возможна только после того,
как вы закроете одно или несколько дочерних графических окон, открытых
на экране.
Графическое окно в операционной системе Linux. В операционной
системе Linux при запуске программы GR0PWS открывается графическое окно
(XII). Это окно остается открытым не только после того, как вслед за запус
ком модуля GRCLWS завершается сеанс работы данной рабочей станции, но да
же после того, как будет закрыто само приложение. Для того чтобы закрыть
графическое окно, нужно нажать клавишу ENTER (ввод), наведя курсор мы
ши на поле графического окна. В каждый момент времени в процессе работы
F.9. Графические рабочие станции 605
графического пакета может быть открыто не более одного графического ок
на. Изменять размеры графического окна можно после запуска модуля GRCLWS.
Это делается путем изменения положения углов графического окна с помощью
средней или правой клавиши мыши. Для того чтобы закрыть данное графиче
ское окно, достаточно нажать клавишу ENTER (ввод), установив курсор мыши
на поле графического окна.
F.9.3. Файлы для автономной печати на принтере или
графопостроителе
Если вы работаете с файлом GRINIT.DAT из инсталляционного пакета, то на
стройка этой рабочей станции производится путем установки номера рабочей
станции NWS равным 2. При модификации файла GRINIT.DAT номер рабочей
станции может измениться. С помощью подпрограммы GRNBWS (см. разд. F.9.4)
можно получить список текущих номеров рабочих станций.
P o stS crip t. Информация о параметрах графика записывается в файл в
виде PostScript-команд. Затем этот график можно будет распечатать с по
мощью PostScript-совместимого принтера или вывести на экран с помощью
специальной программы. При активизации такой рабочей станции создается
файл с именем GR???.PS. Здесь символы ??? используются для обозначения
нумерации файлов. При завершении сеанса работы данной рабочей станции
этот файл закрывается.
H P -G L . Графический язык Hewlett-Packard (Hewlett-Packard Graphic
Language) HP-GL изначально был разработан с целью управления механиче
скими графопостроителями. Его можно также использовать для управления
другими HP-GL-совместимыми устройствами вывода (например, принтерами).
При активизации данной рабочей станции создается файл с именем
GR??? .HPG. Здесь символы ??? используются для обозначения нумерации фай
лов. При завершении сеанса работы данной рабочей станции этот файл закры
вается.
Обратите внимание на то. что в файле инициализации GRINIT.DAT необхо
димо указать, хотите ли вы использовать файлы GR???.HPG для управления
графопостроителем или же HP-совместимым принтером. В первом случае та
кие файлы состоят только из команд языка HP-GL. Во втором случае в начале
и в конце этих файлов содержатся дополнительные команды, с помощью кото
рых принтер сначала переключается в режим HP-GL, а по завершении работы
переходит в исходный режим.
F.9.4. Определение номеров рабочих станций
С помощью следующей программы номера активированных в данный момент
рабочих станций (они будут зависеть от содержания файла инициализации
GRINIT.DAT) можно вывести на экран.
Программа F.28. Подпрограмма GRNBWS выводит на экран номера рабочих
станций
606 Приложение F. Пакет графических программ GRPACK
К о м а н д а в ы з о в а : CALL GRNBWS
К о м м е н т а р и и : У этой программы нет никаких аргументов. Результатом ее
работы являются номера рабочих станций, выведенные на экран.
F.9.5. Файл ошибок. Работа с файлами
В пакете программ GRPACK одновременно открыт доступ не более чем к пяти
файлам. А именно: к файлу инициализации GRINIT.DAT, к файлам HP-GL и
PostScript, файлу GRFILE.CNT (описание см. ниже в этом же разделе), а также
к файлу GRERR.LIS, в который записываются сообщения об ошибках, которые
произошли. В случае если была обнаружена ошибка, пользователю необходимо
обратиться к этому файлу.
Если вы программируете на языке FORTRAN, запомните, что пять выше
названных файлов определяются в языке FORTRAN как модули ввода/вывода
с номерами 95, 96, 97, 98 и 99. Таким образом, при работе с пакетом GRPACK
эти номера нельзя использовать при написании собственных программ.
При работе с файлами GR???.PS, в которых сохраняется информация о
параметрах графиков, необходимо учитывать, что первому созданному фай
лу будет присвоено имя GR000.PS, следующему —GR001 .PS и т. д. Символь
ные строки, используемые для нумерации, записываются в специальный файл
GRFILE.CNT, поэтому после завершения работы в пакете GRPACK при последу
ющем его открытии нумерацию файлов можно будет продолжить. Если файл
GRFILE.CNT удалить, то следующему PostScript-файлу вновь будет присвоено
имя GR000.PS. Если при этом файл с именем GR000.PS уже существует, он
будет стерт, а на его место будет записан новый.
Все сделанные в данном разделе замечания остаются в силе для файлов
типа GR???.HPG.
F.10. Примеры программ
F.10.1. Головная программа E1GR для демонстрации работы
подпрограмм GRNBWS, GROPEN, GRCLSE, GROPWS, GRCLWS, GRWNCC,
GRVWWC, GRWNWC, GRSTFR, GRFRAM, GRBOUN, GRSTCL, GRPLIN, GRBRPL,
GRSCLX, GRSCLY, GRTXTC, GRTXTF
С помощью данной программы можно построить график, подобный тому, что
представлен на рис. F.I. Сначала программа запускает модуль GRNBWS и с его
помощью выводит на экран номера рабочих станций. Затем она запрашивает
NWS —номер той графической рабочей станции, которая будет использовать
ся. После этого путем запуска модуля GROPEN осуществляется инициализация
пакета GRPACK, с помощью модуля GROPWS активируется рабочая станция и по
средством запуска программ GRWNCC, GRVWWC, GRWNWC и GRSTFR определяются
различные системы координат. Затем в результате работы модулей GRFRAM и
GRBOUN соответственно осуществляется построение изображения внешней рам
ки (ограничивающей заданную область в относительной системе координат) и
F.10. Примеры программ 607
внутренней рамки (являющейся границами графического окна в стандартной
системе кординат). После этого с помощью модулей GRSCLX и GRSCLY произво
дится разметка горизонтальной и вертикальной осей координат, которая затем
дополняется указанием соответствующих значений из символьных строк ТЕХТХ
и TEXTY. В результате запуска программы GRTXTC формируется заголовок гра
фика (он записан в символьной строке САРТ).
Затем с помощью модуля GRSTCL устанавливается индекс цвета. После этого
в цикле моделируются координаты TX(I), TY(I), соответствующие 201 точке
(xi,yi). Значения координат по оси абсцисс равны Xi = —10, —9.9, —9.8, . . . ,
10, а значения по оси ординат —yi = f(Xi). Функция f ( x) представляет собой
функцию плотности распределения вероятностей стандартного нормального
распределения. Затем с помощью модуля GRPLIN строится график этой функ
ции, представляющий собой ломаную кривую, проходящую через все перечи
сленные выше точки. В следующем цикле вычисляются значения координат
точек, отвечающих кривой нормального распределения со средним a — 2 и
стандартным отклонением a = 3. Эта кривая изображается на графике в виде
пунктирной линии с помощью модуля GRBRPL. В верхнем левом углу графика
рисуются два прямых отрезка (одна сплошная и одна пунктирная). Справа от
этих отрезков с помощью модуля GRTXTF помещается блок текста, в котором
указываются параметры соответствующих гауссовских распределений, изобра
женных с помощью сплошной и пунктирной кривых. Перед завершением рабо
ты программы посредством запуска модулей GRCLVS и GRCLSE, соответственно
завершается сеанс работы данной рабочей станции и самого пакета GRPACK.
F.10.2. Головная программа E2GR для демонстрации работы
подпрограммы GRMARK
Эта короткая программа строит график, подобный представленному на
рис. F.3. На нем изображаются различные типы маркеров, используемых для
представления данных в виде точек с помощью модуля GRMARK.
F.10.3. Головная программа E3GR для демонстрации работы
подпрограммы GRDATP
С помощью этой программы строится график, подобный представленному на
рис. F.4. На этом графике приводятся примеры различных способов предста
вления данных и их ошибок.
F.10.4. Головная программа E4GR для демонстрации работы
подпрограммы GRPLCT
Сначала задаются параметры графического окна в стандартной системе коор
динат —? г < х < 7 г , —7 г < у < ? г и квадратного окна просмотра в относительной
системе координат. После нанесения разметки и создания заголовка подгота
вливаются вводные параметры для запуска программы GRPLCT. Затем путем
608 Приложение F. Пакет графических программ GRPACK
многократного запуска в цикле модуля GRPLCT строятся линии уровня функции
f ( x, y ) —sin(x + у) cos((x —у ) / 2). Значения функции вычисляются с помощью
подпрограммы C0NTFN. В результате получается график, представленный на
рис. F.5.
Указания: Допишите программу таким образом, чтобы пользователь мог
в интерактивном режиме задавать значения параметров NC0NT (количество ли
ний уровня) и NSTEP (количество интервалов по осям х н у ) . Проанализируйте
изменения на графике, полученные в результате задания слишком маленьких
значений параметра NSTEP.
F*10.5. Головная программа E5GR для демонстрации работы
подпрограмм GRSCDF и GRCCRS
Эта программа строит графики, подобные изображенным на рис. F.6. На этом
рисунке представлены графики, которые отличаются друг от друга только мас
штабом и разметкой координатных осей. Графики строятся в цикле, при этом
каждый раз задается свое окно просмотра в относительной системе координат.
Построенные графики последовательно размещаются в верхнем левом, верх
нем правом, нижнем левом и нижнем правом квадрантах графического окна
в относительной системе координат. У верхнего левого графика оставлена ав
томатическая разметка и масштаб задан по умолчанию. На верхнем правом
графике задана специальная разметка и подписи под осями. У нижнего левого
графика дополнительно изменен также размер шрифта подписей под осями.
На нижнем правом графике числа записаны в экспоненциальной форме. На
Рис. F.6. Четыре версии одного и того же графика при различном масштабе.
F .10.
Примеры программ
609
Poisson (histogram) and Gaussian (cont. line)
PCk)
ь
°-2
0.15
0.1
0.05
0
0
5
10
15
20
25
------------> L
Рис. F.7.
Г раф ик, созданны й с помощ ью программы GRHSCV. Н а нем представлена
гистограм м а и соответствую щ ая ей кривая.
все графики с помощью модуля GRCCRS нанесены координатные оси. а также
кривые плотности соответствующего гауссовского распределения.
F.10.6. Головная программа E6GR для демонстрации работы
подпрограммы GRHSCV
Сначала эта программа строит гистограмму, для которой в каждом отрезке
разбиения содержится к точек с пуассоновской вероятностью /(&;А), где па
раметр Л = 10. Затем строится кривая плотности нормального распределения
со средним Л и дисперсией Л. В заключение задаются подписи графика и с
помощью программы GRHSCV формируется график в окончательном виде (см.
рис. F.7),
F.10.7. Головная программа E7GR для демонстрации работы
подпрограммы GRDTCV
Сначала посредством запуска модуля RNLINE моделируются точки, лежащие
на прямой у = at + b и имеющие определенные ошибки. Затем вычисляются
соответствующие ошибки по горизонтальной и вертикальной осям, а также
ковариации между ними. В нашем примере ошибки по горизонтали, а также
ковариации равны нулю. По двум точкам строится прямая. Уравнение этой
прямой легко можно найти, В итоге, после создания подписей под осями и
формирования заголовка, с помощью модуля GRDTCV строится окончательный
график (см. рис. F.8).
610
П рилож ение F.
Пакет графических программ GRPACK
у
- at + b
У
2
1.5
1
0.5
0
Р и с . F .8 . Г раф ик, создан ны й с помощ ью программы GRDTCV. Н а нем представлены
результаты изм ерений, а такж е соответствую щ ая кривая.
Data points
-
3
-
and Gausslans of d iffe re n t
2
-
1
0
1
widths
2
3
------------------- > x
Р и с . F .9 . Г раф ик, создан ны й с помощ ью программы GRDTMC. Н а нем представлены
результаты изм ерений, а такж е соответствую щ ие кривые.
F.10. Примеры программ 611
F.10,8. Головная программа E8GR для демонстрации работы
подпрограммы GRDTMC
С помощью этой программы моделируются результаты 2 1 измерения, подчиня
ющиеся с некоторыми ошибками гауссовскому распределению со средним нуль
и стандартным отклонением о ~ 1 и лежащих в пределах между —3 < х < 3 .
Затем строятся три кривые, отвечающие гауссовским распределениям со сред
ним нуль и стандартными отклонениями о — 0 .5 , о — 1 и a — 1.5 соответ
ственно. Кривые построены для значений х в пределах между —10 < х < 10.
Они изоображаются при помощи линий разного цвета, при этом одна кривая
с помощью сплошной линии, а две другие с помощью пунктирных линий. По
выбору пользователя на график могут быть нанесены либо только результаты
измерений, либо только кривые, либо и кривые, и результаты измерений (см.
рис. F.9). Выбирая различные комбинации, можно проверить, как работает
режим автоматического подбора масштаба и разметки.
Приложение G
Установка программного обеспечения
и технические указания
G .l. CD-ROM
На прилагающемся CD-ROM 1 содержатся следующие программы:
— все подпрограммы на языках программирования FORTRAN и С,
— примеры программ на языках программирования FORTRAN и С,
— программы возможных решений задач по программированию (также на
языках FORTRAN и С),
— библиотека графических программ,
— вспомогательные файлы, предназначенные для компиляции и трансляции
программ,
— ехе-версии демонстрационных программ для всех примеров и решений за
дач.
На диске отсутствуют тексты графических программ; для записи уже от
компилированных программ существует специальная библиотека, название ко
торой нужно указывать в процессе трансляции. На прилагающемся CD-ROM
есть несколько версий такой библиотеки. Они отличаются тем, что предназна
чены для трансляции программ, скомпилированных различными компилято
рами FORTRAN и С.
Все программы на языке FORTRAN были записаны в формате FOR
TRAN 77 вне зависимости от типа конкретного компьютера и компилятора,
поэтому они могут работать на любом компьютере, где установлен компилятор
FORTRAN 77 или FORTRAN 90. Это также касается примеров программ и
решений задач (если при этом не требуется запускать какую-нибудь графиче
скую программу).
Программы на языке С в основном были получены из соответствующих
программ на языке FORTRAN с помощью автоматического транслятора. Бла
годаря этому все программы на С, полученные после конвертации, работают
точно так же, как программы на языке FORTRAN, однако текст иногда выгля
дит не совсем естественно для языка С. (Строки вызова программ на языке С,
а также принципы индексации векторов и матриц приведены в разд. G.3.) При
этом, опять-таки, если не нужно запускать графические программы, то можно
использовать любой компилятор С или C++.
Все файлы, перечисленные в начале этого раздела, можно переписать
с CD-ROM на жесткий диск IBM-совместимого персонального компьютера
(см. процедуру установки, разд. G.5). Тексты программ можно переписать на
любой компьютер. Графические программы можно использовать только на
IBM-совместимых персональных компьютерах в операционных системах DOS,
.WINDOWS, WINDOWS 95, WINDOWS NT или Linux, при наличии соответ
ствующих компиляторов.
1 См. об этом в предисловии редактора перевода. — Прим. ред.
G.2. Различные компиляторы и операционные системы 613
G.2. Различные компиляторы и операционные системы
Библиотеки графических программ могут работать в различных операцион
ных системах с различными компиляторами FORTRAN и С. В табл-G.l при
веден краткий обзор компиляторов и операционных систем. В процессе инстал
ляции программного обеспечения (см. разд. G.5) нужно указать тип операци
онной системы и вид компилятора, в которых вы будете работать. В список
компиляторов включены те, что наиболее часто используются. Список раз
бит на четыре категории: 16-битовые и 32-битовые, FORTRAN и С компиля
торы. Сделаем несколько замечаний относительно различных операционных
системы:
DOS. При запуске программ в DOS экран дисплея может использоваться
только целиком: либо для построения графика, либо для вывода данных в
буквенно-цифровом формате. Объединить на одном экране график и данные
в буквенно-цифровом формате невозможно.
Q uickW in. Программирование в среде WINDOWS (см. разд. G.4) отли
чается от программирования под DOS. В некоторых компиляторах фирмы
Microsoft содержится приложение QuickWin, с помощью которого можно в ре
жиме WINDOWS осуществлять простейшие операции над программами, изна
чально написанными под DOS. Представленные на диске графические библио
теки и файлы, предназначенные для компиляции и трансляции, позволяют
сделать программы QuickWin-совместимыми. Для запуска таких программ в
среде WINDOWS (или WINDOWS 95/WINDOWS NT, в зависимости от ком
пилятора) нужно открыть текстовое окно для ввода и вывода информации
в буквенно-цифровом формате. В случае если необходимо построить какойлибо график, нужно открыть еще одно дополнительное окно. Преимущество
QuickWin состоит в том, что при его использовании не нужно вносить никаких
изменений в программы, изначально написанные под DOS. С другой сторо
ны, это приложение менее функционально. Так, например, в нем нельзя изме
нять масштаб графиков. Для просмотра графиков целиком во всплывающем
меню «View (просмотр)» нужно выбрать опцию «Full screen (полноэкранный
режим)».
W IN D O W S 9 5 /W IN D O W S N T . Структура программ, изначально на
писанных под WINDOWS, может достаточно сильно отличаться от структуры
программ, написанных под DOS. Это связано с тем, что в среде WINDOWS
программа должна быть многозадачной, т. е. во время работы она должна
уметь отвечать на запросы пользователя, например, на запрос об изменении
параметров графического окна. Структура программ под WINDOWS кратко
представлена в разд. G.4. Здесь же мы лишь в общих чертах опишем, что ото
бражается на экране компьютера в процессе работы программ. Каждая про
грамма сначала открывает головное окно. В верхней части этого окна затем по
явятся результаты работы программы, представленные в буквенно-цифровом
формате. Внизу головного окна имеется командная строка, в которую вводят
ся исходные параметры в буквенно-цифровом формате. Эти данные вводят
ся построчно, при этом конец строки соответствует нажатию клавиши ENTER
(ввод). После нажатия этой клавиши строка копируется в верхнюю часть го
ловного окна на то место, гда затем появятся результаты работы программы.
Командная строка после этого очищается. Если требуется представить резуль-
614 Приложение G. Установка программного обеспечения
Таблица G .I. Компиляторы и операционные системы, в которых могут
работать файлы из графических библиотек.
Компилятор
32-битные:
Lahey F77L-EM32 FORTRAN
версия 5.1
Lahey FORTRAN 90
версия 3.50а
Microsoft Power FORTRAN Station
версия 4.0
Digital Visual FORTRAN
версия 5.0
WATCOM FORTRAN 7732
версия 9.5
Microsoft Visual C/C++
версия 4
Borland С/Сн—h
версия 5.0
16-битные:
IBM Personal FORTRAN
версия 1.05
RM FORTRAN
версия 3
Prospero FORTRAN
версия iid 2.1
Microsoft FORTRAN
версия 5.1
Microsoft Visual C/C-Hверсия 1.0
Microsoft C
версия 7
Borland C/C-Mверсия 3.1
Linux (32-битные)
GNU FORTRAN
версия 0.5.19.1
GNU C
версия 2.7.2Л
DOS
QuickWin
WINDOWS 95
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
XWindow (Xll)
X
X
G.3. Использование программ на языке С 615
таты работы программы в виде графика, то это осуществляется в специальном
графическом окне, которое называется дочерним окном и лежит в пределах
головного графического окна. Пользователь может видоизменять это окно, на
пример, изменять его размер, сворачивать на панель задач и т.д. Программа
рассматривает такое дочернее окно как некую рабочую станцию, поэтому за
вершение сеанса работы в дочернем окне не приводит к закрытию головного
окна. Всего в различных дочерних окнах может быть построено не более 10
графиков.
Linux. Программирование в среде Linux практически не отличается от про
граммирования в среде DOS. (Существует всего лишь одно небольшое отличие:
если вы пишите программу под Linux на языке С, то нужно изменить названия
файлов соответствующих программ из библиотеки анализа данных и графи
ческой библиотеки, добавив в конец названий знак подчеркивания, т. е. заме
нив, например, mtxadd на mtxadd_.) Если осуществляется стандартный ввод
данных (при помощи стандартных функций языка С), то обычно эти данные
вводятся с клавиатуры и затем в буквенно-цифровом формате записываются
в текущем графическом окне, например в xterm.) Стандартный вывод осуще
ствляется также через окно буквенно-цифрового формата. Для вывода графи
ков с помощью модуля GR0PWS (см. разд. F.9.2) открывается дополнительное
графическое окно (XII).
G.3. Использование программ на языке С
Как уже упоминалось в разд. G.1 , тексты программ на языке С были получены
из программ на языке FORTRAN с помощью автоматического транслятора.
Поэтому в программах на языке С существует ряд особенностей, заимство
ванных из FORTRAN-версий. В частности, это касается принципов передачи
аргументов из головной программы в подпрограмму, а также принципов ин
дексации матриц и стандартных подпрограмм.
А р г у м е н т ы в к о м а н д а х з а п у с к а . Так же как и в языке FORTRAN, все
аргументы на С передаются путем ссылки на них (на С при помощи ссылок
обычно передаются только массивы, т. е. векторы и матрицы, а все остальные
переменные, а также константы передаются путем передачи значения). Поэто
му, например, команда запуска модуля MTXADD (с помощью этой программы
осуществляется сложение двух матриц А и В, каждая из которых имеет раз
мер тхп< и результат записывается на месте массива R ) выглядит следующим
образом:
mtxadd (а, Ъ, г , &т, &п);
П р и н ц и п ы и н д е к с и р о в а н и я в е к т о р о в . В языке FORTRAN элементы
одномерного массива V длины п имеют следующие адресные ссылки:
V( 1 ) , V(2) , . . . , V(N).
9
Другими словами, компонента Vi вектора v = (ui, V2 , . ■•, vn) хранится на месте
V (I). Так как в языке С нумерация элементов вектора начинается с нуля, то
эти компоненты будут соответствовать массиву v [0 ], v [ l ] , . . . , v [ n - l] , а
компонента v% будет записываться как v [ i - l ] .
616 Приложение G. Установка программного обеспечения
П р и н ц и п ы и н д е к с а ц и и м а т р и ц . В языке FORTRAN элементы матрицы
А (I, J) записываются по столбцам, т. е. элементы матрицы А размера m х п
сохраняются в памяти машины в следующем порядке:
&11: &211
: & m l ) &12 > ^ 2 2 ) ■ * * ) ^ m 2 j ■ ■ ■ ? &1п> & 2П ) ■ * • i & m n •
В языке С двумерный массив записывается построчно. В наших программах
принцип индексирования на языке FORTRAN реализуется путем записи ма
триц по столбцам в одномерные массивы, т. е. а [ 0 ] , а [ 1 ] , . . . , а[ш * n - 1 ] .
В результате в языке FORTRAN элемент Aij записывается как А(I , J ) , а на
С —как a [ ( j - l ) * m + i - 1 ].
Н а п и с а н и е п о л ь з о в а т е л е м п р о г р а м м н а я з ы к е С. При написании соб
ственных программ на языке С вы должны соблюдать перечисленные выше
принципы передачи аргументов и индексации матриц и векторов. Более то
го, вы должны подключить к программе два заголовочных файла d a ts r c .h и
g rs rc .h , с помощью следующих директив:
# include " d a tsrc .h "
# include " g rsrc .h "
(Вторая строчка нужна только в том случае, если вы используете графические
программы.)
Любая проргамма из директорий \DATAN\EXASRC и \DATAN\SOLSRC может
служить примером прикладной программы, написанной пользователем. Про
стейшими являются программы elm tx .c (простейший пример без использова
ния графических программ), e 6 g r .c (пример построения графика целиком с
помощью запуска одной графической программы) и e lg r .c (пример использо
вания нескольких графических программ).
G.4. Программирование в среде WINDOWS 95/
WINDOWS NT
G.4.I. Вводные замечания
В этом разделе мы не стремились изложить все тонкости программирования
в среде WINDOWS. Мы коснемся лишь некоторых деталей, с помощью ко
торых пользователь, имеющий определенный опыт программирования, смо
жет написать программу в среде WINDOWS. Для этого ему нужно будет
воспользоваться пятью подпрограммами, назначение которых мы поясним в
этом разделе. Полученные с их помощью программы под WINDOWS позволя
ют осуществлять ввод данных в буквенно-цифровом формате, а также вывод
результатов практически в том же виде, что и для программ под DOS. При
выводе результатов в графическом формате становится видна многофункци
ональность операционной системы WINDOW'S. (Для того чтобы при вводе и
выводе данных учитывались особенность конкретной задчи, опытные програм
мисты в среде WINDOWS могут воспользоваться и другими приемами, ис
пользуемыми обычно в операционной системе WINDOWS.) Упомянутые пять
подпрограмм, а также WINDOWS-версии графических программ содержатся
в динамически подключаемой библиотеке, т. е. в DLL, с именем DATANDLL.DLL.
С помощью этой библиотеки программ можно избежать трудностей, возника-
G.4. Программирование в среде WINDOWS 95/ WINDOWS NT
617
ющих при программировании в среде WINDOWS. Все пользователи должны
помнить следующие два правила:
1. Любая прикладная программа запускается из головной программы с име
нем WINMAIN (в FORTRAN) или WinMain (на С). Головная программа прак
тически идентична для всех приложений. Отличие состоит только в имени
прикладной программы, упоминание которого дважды встречается в го
ловной программе.
2. Прикладная программа (являющаяся головной в среде DOS) здесь является
подпрограммой. Ее текст может не отличаться от текста DOS-программы.
Единственное отличие должно состоять в различном порядке описания
стандартного ввода (ввод с клавиатуры) и стандартного вывода (вывод ре
зультатов на экран в буквенно-цифровом формате).
G.4.2. Головная программа
В примерах, содержащихся в этой книге, головная программа запускает при
кладную программу, которая содержится в том же файле. Мы рекомендуем
вам изучить текст программы E1GR, лежащей в директории \DATAN\EXASRC.
Сделав это, вы увидите, что (не считая ссылок на заголовочные файлы, вклю
чаемые по умолчанию) головная программа WINMAIN состоит по существу из
ссылок на три подпрограммы WNINIT, WNRGPR и WNRUNP. С помощью этих под
программ осуществляются, соответственно, инициализация, вызов и запуск
прикладной программы. В заключение приведем описания этих трех подпро
грамм:
П рограмма G .I. Подпрограмма WNINIT осуществляет инициализацию голов
ной программы в среде WINDOWS
К оманда вызова : CALL WNINIT (ITEST)
ВЫХОДНОЙ ПАРАМЕТР: ITEST—число, отражающее результат
инициализации (оно равно нулю, если процесс был успешно завершен, и
отлично от нуля, если это не так)
К омментарии : Обычно процесс инициализации не удается успешно
завершить из-за того, что не найдена нужная динамически подключаемая
библиотека.
Программа G .2. Подпрограмма WNRGPR вызывает прикладную программу
К оманда вызова : CALL WNRGPR(APPROG)
ВХОДНОЙ ПАРАМЕТР: APPROG—имя прикладной программы, которое нужно
описать как переменную типа EXTERNAL (внешняя) в головной программе
Программа G .3. Подпрограмма WNRUNP осуществляет запуск вызванной при
кладной программы
К оманда вызова : CALL WNRUNP
618 Приложение G. Установка программного обеспечения
G.4.3. Прикладная программа
В операционной системе WINDOWS к прикладным относятся подпрограммы,
в которых нет ни одного аргумента. Текст этих программ не отличается от
текста программ под DOS. Единственное отличие состоит в разном порядке
описания стандартного ввода и стандартного вывода. В среде DOS ввод дан
ных с клавиатуры (стандартный ввод) и вывод данных на экран (стандартный
вывод) описываюся на языке FORTRAN с помощью команд READ ( * , . . . ) и
WRITE ( * , . . . ) (а на языке С —с помощью библиотечных функций scanf и
p rin tf).
В среде WINDOWS считать одну строку из стандартного ввода можно с
помощью следующих двух команд:
CALL WNRDST(STRING, MAXLEN)
READ (STRING, . . . ) . . .
Здесь переменная STRING является символьной строкой длины MAXLEN. Под
программа WNRDST после нажатия клавиши ENTER (ввод) копирует содержа
ние командной строки из нижней части головного окна в символьную строку
STRING. Вторая команда позволяет осуществить считывание данных из этой
строки в соответствии с установленным форматом. На языке С соответствую
щие команды выглядят следующим образом:
w nrdst(string, &maxlen);
ssc a n f(str in g , . . . ) ;
Помните, что если максимальная длина символьной строки strin g, кото
рую нужно считать с помощью программы wnrdst удовлетворяет неравенству
maxlen < п, то в программе вы должны указать, что длина символьной строки
strin g равна n-h i, положив при этом последний символ в этой строке равным
нулю, т. е. s t r in g [п] = 0 ; .
Аналогично, вывод данных в буквенно-цифровом формате в головном ок
не можно осуществить путем записи форматированных данных в некоторую
строку с помощью стандартных средств и последующего вывода на экран этой
строки с помощью определенной подпрограммы. Для этого в языке FORTRAN
нужно воспользоваться следующими двумя командами:
WRITE(STRING, . . . ) . . .
CALL WNWRST(STRING, LENGTH)
Здесь LENGTH—длина строки, которую нужно вывести на экран. На языке С
соответствующие команды выглядят так:
s p r in tf(s tr in g , . . . ) ;
w nwrst(string, & length);
В заключение приведем формализованное описание программ WNRDST и
WNWRST.
Программа G.4. Подпрограмма WNRDST считывает симольную строку из ко
мандной строки головного окна
К оманда вызова : call wnrdst ( string , maxlen)
В ходной
ПАРАМЕТР: MAXLEN—максимальная длина строки
G.5. Установка программ 619
ПАРАМЕТР: STRING —символьная строка, считываемая с
командной строки
К омментарии : Считывание производится после того, как в конце
командной строки нажата клавиша ENTER (ввод).
В ы ходной
Программа G.5. Подпрограмма WNWRST выводит символьную строку на экране
в головном окне
К оманда вызова : call wrwrst( string , length)
В ходные парам етры : STRING —символьная строка
LENGTH —количество символов в строке
G.5. Установка программ
Как в DOS, так и в W IN D O W S процесс установки состоит из двух частей:
Шаг 1 : Вставьте прилагающийся к книге CD-ROM в соответствующий дис
ковод вашего компьютера. Если ваш компьютер работает не в режиме
DOS, то перейдите в режим DOS (например, путем выбора в меню в среде
WINDOWS кнопки DOS). Наберите следующую команду;
d:\INSTALL
(Здесь вместо d должен стоять тот символ, с помощью которого на вашем
компьютере обозначается CD-ROM-дисковод.) После этого в диалоговом
режиме начнется процесс установки, в результате которого все необходимые
файлы будут скопированы на жесткий диск вашего компьютера.
Шаг 2: Пропишите на компьютере в строке PATH путь к содержимому дирек
тории \DATAN, а также к соответствующим директориям вашего компиля
тора. Более подробные инструкции вы сможете найти в файле README.DOC,
который находится в директории \DATAN.
Для Linux процесс установки состоит из трех частей, при этом вы должны
их осуществлять как пользователь-администратор с именем «root»:
Шаг 1 : Вставьте прилагающийся к этой книге CD-ROM в дисковод. Создайте
диск, соответствующий CD-ROM, с помощью командной строки
mount -о го /dev/hdd /mnt
где /dev/hdd —специальный аппаратный файл, a /mnt обозначает название
директории, которая будет родительской для CD-ROM.
Шаг 2 : Введите команду
cd /
t a r -zvxf /m n t/lin u x /d a ta n .tg z
Как только эта команда будет выполнена, все необходимые файлы будут
записаны на ваш жесткий диск.
Шаг 3: Убедитесь в том, что строка
/u s r/io c a l/lib
содержится в файле / e t c / l d . s o . conf . in (или в файле / e t c / l d . s o . conf).
Если же это не так, добавьте эту строку и введите команду
ld c o n fig
В результате всех этих действий вы должны указать путь к нашим библио
текам файлов. О других вариантах установки вы можете узнать из файла
README.DOC.
620 Приложение G. Установка программного обеспечения
G.6. Структура директории в операционных системах
DOS и WINDOWS
В результате процедуры установки на вашем жестком диске будет создана и за
полнена соответствующими файлами директория \DATAN. Одним из них явля
ется файл README.DOC. В нем вкратце изложены основные положения данного
раздела, даны дополнительные комментарии к разделам G .8 и G.9, а также
приведены те замечания, которые были сделаны уже посте того, как книга бы
ла написана. Кроме того, в этой директории содержится файл инициализации
графических приложений GRINIT. DAT)(cm . разд. F.9.1), а также те файлы для
упрощения процедур компиляции и трансляции программ с помощью вашего
компилятора, которые вы выбрали в процессе установки. Всего в директории
\DATAN содержится пять поддиректорий.
G.6.I. Поддиректория \DATAN\DATSRC
В этой поддиректории содержатся тексты программ.
G.6.2. Поддиректория \DATAN\EXASRC
В этой поддиректории записаны тексты примеров программ. Для каждого при
мера программ в ней также содержатся файлы с расширением .ехе. Эти файлы
можно запустить и использовать их в качестве демонстрационных программ.
G.6.3. П о д д и р е к т о р и я \DATAN\S0LSRC
В этой поддиректории лежат тексты программ и ехе-версии файлов, являю
щихся вариантами решений задач по программированию.
G.6.4. П о д д и р е к т о р и я \DATAN\DLIB. Б и б л и о т е к а а н а л и за д а н н ы х
В этой поддиректории находится библиотечный файл (библиотеко, анализа
данных). В эту библиотеку входят все объектные программы, полученные в
результате компиляции соответствующих исходных программ из поддиректо
рии \DATAN\DATSRC.
Кроме библиотечного файла поддиректория \DATAN\DLIB содержит не
сколько командных файлов, с помощью которых вы сможете создать новую
библиотеку, в которую будут записаны тексты измененных вами программ
(см. разд. G.8 ).
G.6.5. П о д д и р е к т о р и я \DATAN\GLIB. Г р а ф и ч е с к а я б и б л и о т е к а
В этой поддиректории лежит библиотека графических программ (графическая
библиотека).
G.7. Структура директории в среде Linux 621
G.7. Структура директории в среде Linux
В процессе установки программ в этой среде создается и заполняется соответ
ствующими файлами директория /u s r /lo c a l/d a ta n , а также к уже существу
ющим директориями / u s r / l o c a l / l i b и / u s r /lo c a l /b in добавляются опреде
ленные файлы.
G.7.I. Директория / u s r / lo c a l /d a t a n
В этой директории содержится файл README.DOC. В нем вкратце изложены
основные положения данного раздела, даны дополнительные комментарии к
разделам G .8 и G.9, а также приведены те замечания, которые были сдела
ны уже после того, как книга была написана. Кроме того, в этой директории
содержится файл инициализации графических приложений GRINIT.DAT)(cm.
разд. F.9.1), а также пять поддиректорий.
П о д д и р е к т о р и я /u s r /lo c a l/d a ta n /d a ts r c . В этой поддиректории содер
жатся тексты программ.
П о д д и р е к т о р и я /u s r /lo c a l/d a ta n /e x a s r c . В этой поддиректории запи
саны тексты примеров программ. Для каждого примера программ в ней также
содержатся файлы с расширением .ехе. Эти файлы можно запустить и исполь
зовать их в качестве демонстрационных программ.
П о д д и р е к т о р и я /u s r /lo c a l /d a ta n /s o ls r c , В этой поддиректории лежат
тексты программ и ехе-версии файлов, являющихся вариантами решений задач
по программированию.
П о д д и р е к т о р и я /u s r /lo c a l/d a ta n /in c lu d e . В этой поддиректории нахо
дятся файлы, необходимые для программирования на языке С.
П о д д и р е к т о р и я / u s r / l o c a l / d a t a n / u t i l s . В этой поддиректории содер
жатся файлы программных оболочек и файлы описаний, используемые при
компиляции файлов из библиотеки анализа данных, а. также при создании
ехе-файлов, которые служат дополнением к файлам программных оболочек
из директории /u s r / l o c a l / b i n (см, ниже).
G.7.2. Библиотеки
В директории / u s r / l o c a l / l i b находятся три дополнительных библиотечных
файла.
• Файл li b d a t s r c .a состоит из всех объектных программ, получен
ных в результате компиляции исходных программ из поддиректории
/u s r /lo c a l/d a ta n /d a ts r c ,
• Файл li b g r s r c .a является библиотекой, состоящей из графических про
грамм.
• Файл lib d a ta n .s o . 1 . 0 по типу выполняемых функций можно отнести как
к библиотеке анализа данных, так и к графической библиотеке.
622 Приложение G. Установка программного обеспечения
G.7.3. Файлы программных оболочек
В директории / u s r / l o c a l / b i n лежат дополнительные файлы программных
оболочек, используемые для упрощения процедур компиляции и трансляции
(см. разд. G.9).
G.8. Изменение программ в библиотеке анализа данных
Если вам нужно изменить какую-либо программу из библиотеки анали
за данных, (например, в связи с ограничениями размеров массивов, упо
мянутых в разд. G. 10 ), то сначала вам потребуется изменить тексты со
ответствующих программ в поддиректории \DATAN\DATSRC (в среде Linux:
/u s r /lo c a l/d a ta n /d a ts r c ) . После этого вы должны откомпилировать изме
ненные программы. Это нужно сделать для того, чтобы в приложении исполь
зовались уже измененные программы, В процессе трансляции вы должны буде
те указать имена полученных в результате объектных файлов (см. разд. G.9)
или же вам придется включить новые объектные файлы в саму библиотеку
(при этом они будут записаны на месте исходных файлов). В руководствах
по вашему компилятору и по управлению соответствующей библиотекой вы
сможете узнать, каким образом можно заменить часть файлов из библиотеки.
Возможно, после изменения одного или нескольких файлов из поддиректо
рии \DATAN\DATSRC (в среде Linux: /u s r /lo c a l/d a ta n /d a ts r c ) вам будет проще
создавать новую библиотеку анализа данных. Из файла README.DOC, находя
щегося в директории \DATAN (в среде Linux: /u s r /lo c a l/d a ta n ) , вы сможете
узнать, как это можно сделать с помощью вашего компилятора.
G.9. Компилирование, трансляция и выполнение
программ
После успешного завершения процедуры установки (см. разд. G.5) вы може
те написать любую программу, откомпилировать ее, оттранслировать ее через
библиотеку анализа данных и —в случае необходимости—через графическую
бибилиотеку, а затем запустить ее. В файле README.DOC, находящемся в дирек
тории \DATAN (в среде Linux: /u s r /lo c a l/d a ta n ) , содержится более подробная
информация о том, как это сделать с помощью вашего компилятора в вашей
операционной системе.
G.10. Ограничения на размеры массивов для некоторых
программ
Иногда приходится видоизменять некоторые программы из библиотеки анали
за данных (а именно, тогда, когда нужно использовать массивы данных очень
большого объема). Это необходимо делать по следующим причинам техниче
ского свойства, Компиляторы в FORTRAN выделяют определенную область
памяти под каждый массив. Затем к этой области памяти обращаются голов
ная программа и подпрограмма, вызываемая головной. Указание на объем этой
области содержится в головной программе, а адрес соответствующего массива
G.10. Ограничения на размеры массивов для некоторых программ 623
Таблица G.2. Программы на языке FORTRAN, в которых существуют
ограничения на размеры массивов.
Программа
Ограничение
Параметр, который
нужно увеличить,
чтобы снять
ограничение
LSQP0L
LSQN0N
LSQMAR
LSQASN
L3QASM
LSQGEN
LSQASG
LSQC0G
N < 1000
N < 1000
N < 1000
N < 1000
N < 1000
N + NR < 1050
N < 1000
N < 1000
NR < 100
N < 50
N < 50
N < 50
N < 50
N < 50
N < 50
N < 100
N < 1000
2*К+1 < 1000
N < 1000
N < 1000
N < 1000
N < 1000
N < 1000
N < 1000
L < 1050
NMAX
ШАХ
ШАХ
NMAX
ШАХ
LMAX
ШАХ
NMAX
NRMAX
MAXN
MAXN
MAXN
MAXN
MAXN
MAXN
NMAX
MAXN
MAX
ШАХ
ШАХ
NMAX
ШАХ
ШАХ
NMAX
LMAX
MINFND
MINSIM
MINP0W
MINMAR
MINC0V
MINCNT
MINASY
REGP0L
TIMSER
MTXSVD
MTXDEC
MTXSV1
MTXMAR
MTXSVM
MTXLSC
Имя массива
типа COMMON для
записи промежуточных
результатов
DASV04
DASV02
DASV02
DASV03
DASV03
DASV03
DASV04
DASV04
DASV04
DASV03
DASV01
DASV04
DASV00
DASV01
DASV00
DASV02
DASV02
поступает в вызываемую программу в виде аргумента (а в случае многомер
ного массива в число аргументов подпрограммы также входит размерность
массива). Таким образом текст подпрограммы не зависит от размера массива.
В некоторых подпрограммах из библиотеки анализа данных приходится осу
ществлять многочисленные операции над векторами и матрицами, при этом
нужно сохранять промежуточные результаты, а для этого обычно нужно не
сколько массивов. Для того чтобы сократить список аргументов, эти массивы
определяются только внутри самой подпрограммы. Однако при этом нужно
задать максимально возможные размеры этих массивов. Они входят в число
параметров подпрограммы. Если необходимо использовать массивы больших
размеров, то для этого нужно соответствующим образом изменить эти пара
метры, заново откомпилировать программы, а затем записать их на место со
ответствующих программ из библиотеки анализа данных (см. разд. G.8 ). В
табл. G .2 перечислены все программы, в которых имеются ограничения на
размеры массивов, имена этих массивов, а также максимальные размеры со-
624 Приложение G. Установка программного обеспечения
ответствующих аргументов и те параметры, которые в случае необходимости
нужно увеличивать.
Технические указания: ввиду технических особенностей управления процес
сом хранения данных в компиляторе FORTRAN фирмы Microsoft изначально
были заданы массивы типа COMMON, имеющие достаточно большие объемы. В
программах, не вызывающих друг друга, для хранения промежуточных ре
зультатов могут быть использованы одни и те же массивы типа COMMON, так как
они нужны только в пределах работы конкретной подпрограммы. В табл. G .2
также приведены названия массивов типа COMMON, используемых конкретными
подпрограммами.
В соответствующих программах на языке С ограничения на размер мас
сивов существенно слабее, поскольку в этом случае используется принцип ди
намического выделения памяти. Поэтому в 32-битных компиляторах языка С
и 16-битном компиляторе языка Borland С ограничения на размер массивов
могут быть вызваны только текущим размером доступной оперативной памя
ти во время работы соответствующей программы. В 16-битных компиляторах
фирмы Microsoft максимально возможная длина поля составляет 64 Кб. (При
программировании в среде Linux необходимо помнить, что библиотеки были
созданы на основании С-версий программ, поэтому никаких ограничений на
размер массивов там не существует.)
Приложение Н
Основные формулы
Вероятность
Л, Р , ... — события; А — событие «не Л».
(А + В) и (А В ) обозначают события, полученные с помотцью логических опе
раций «или» и «к».
Р(Л) является еероятостъю события А .
Р (Р |Л ) = Р (Л Р )/Р (Л ) —вероятность события В при условии Л (условная ве
роятность).
Для вероятностей событий справедливы следующие формулы:
Для любого события Л
Р(Л) = 1 - Р(Л),
для попарно непересекающихся событий Л, Р, . . Z
Р(Л + Р Н---- ^ Z) - Р(Л) + Р (Р ) + • • *+ P(Z ),
для независимых событий Л, Р, . . Z
Р (Л Р ■■■Z) = Р (Л )Р (Р ) ■■■P(Z ).
Одномерная случайная величина
Функция распределения:
F(x) = Р(х < х)
Плотность распределения (для дифференцируемой функции Р(х)):
f ( x) = Р'(х) = d /(x )/d x
Моменты порядка £:
(a) относительно точки с:
= Р{(х —с)^}
(b ) относительно нуля (начальные моменты):
= Е{хе}
(c) относительно среднего (центральные моменты): щ = Р{(х —х)*}
Дисперсия: <т2 (х) = var(x) —
— Р{(х —х)2}
Стандартное отклонение или ошибка для величины х: Лх = а(х) = +л/сг2(х)
626
П рилож ение Н.
Основные формулы
Таблица Н.1. Математические ожидания для дискретной и непрерывной слу
чайных величин.
х дискретная
Плотность
распределения
х непрерывная;
F(x) дифференцируемая
f{x) = F'{x) = ^ & ,
Математическое ожидание
величины х
Математическое ожидание
функции Н(х)
х = Е(х)
= E i ХгР(х = Хг)
Е{Н(х)}
= E i Н(Хг)Р(х = Xi)
JZo f ( X) dx = 1
x —2?(x)
= /Ло ЖЯ Ж) dx
£{Я(х)}
= /^ ,я (ж )/(ж ) dx
Асимметрия: 7 —ц,з/сг3
Нормированная случайная величина: и = (х —t )Aj (x);
£(и) —0,
а2(и) = 1
Мода (наиболее вероятное значение) — величина т т , определяемая соотноше
нием Р(х = т т ) = max для дискретных и f ( x m) — max для непрерывных
случайных величин
Медиана — величина т 0.5 , являющаяся корнем уравнения F(x0_5 ) — Р(х <
то.5 ) = 0.5
Квантиль —величина х я, являющаяся корнем уравнения F( xq) = Р(х < x q) —
q; 0 < q < 1 .
Многомерные случайные величины
Функция распределения:
F(x) = F(XU X2, . . - ,Tn) = P(xi < ТЬ X2 < X2, . . . , xn < x n).
Совместная плотность распределения (только для тех функций F(x), кото
рые являются дифференцируемыми по всем переменным):
f ( x) = / ( т г, т 2, ... , х п) = dnF ( x i , x 2, ■•. , x n) / d x i d x 2 ... дхп.
Маргинальная плотность распределения случайной величины х^:
/
СЮ
Г СЮ
/
-O O J — OO
г СЮ
■••/
f ( x i , x 2, ... , x n)&xi dx2 ■■-dxi - 1 dxl+i .. . d i n.
J — OO
Математическое ожидание функции H(x):
Е{Н(х)}= [ H(x)f(x)dx.
Приложение Н. Основные формулы
627
Математическое ожидание случайной величины х^:
/
оо
7?(х^) — /
do?
Xigi(xi)dxi.
Случайные величины хь х 2л... ,хп независимы, если
f(x u X 2 ,
. ■ ■ , £ „ ) = P l ( ^ l ) ^ 2 ( ^ 2 ) . ■- ^ n ( ^ n ) .
Моменты порядка (^i, ^2 , • • •, 4 0 :
r k 'T 'T - i n r 'T T 'T 'O ТТ1, XJ r \
f r n u v u
* (
Г—
f 1-,
/ ’л
(b) относительно нуля: Л
(с) относительно среднего x:
n V
1x| 2 *■-x^}
ММг.-Л» — £ { (xi — J i ) ^ ( x2 ~ Я2)*2 ■**(xn —
Дисперсия для случайной величины х*: a2(*i) = £{(х^ —£i)2} ~ саКовариация между случайными величинами х^ и xj: соу(х*,хД = E{(xi —
S’iJCxj “ Xj)} ~ Cij.
Для независимых случайных величин х*, xj: соv(x*,X j) = 0.
Ковариационная матрица: С = Е{(х —сс)(х —£)т }.
Коэффициент корреляции:
р(хг ,х 2) = cov(xb x2)//T (x1)cr(x2);
- 1 < р < 1.
Правила вычисления дисперсии:
( ) = c2 a 2 (x i ),
a 2 cxi
4* bxj) = а2<т2(хО 4* 62a 2(xj) 4* 2a6cov(x^, Xj);
гдеа, 6, с- константы
a 2 (axi
Преобразование и замена переменных
Исходные случайные величины: х — (xi,x2, ... ,хп).
Плотность распределения исходной случайной величины: f ( x ).
Преобразованные случайные величины: у = (уь У2,•■■,уп)Отображение: ух = уДх), у2 == У2(х), ..., уп = Уп(х).
Плотность распределения полученной случайной величины: g(y) = \J\f(x),
628
Приложение Н. Основные формулы
где —якобиан преобразования:
J = J
^ 1
?
^ 2
'
J
■
9?/!
дх\
дуп
дх 2
дуп
дхп
&Уп
5 ^7 7
2/п
2/1.2/2,
9з/1
дхп
dyi
Формула преобразования ковариационных м атриц и дисперсий
Исходные случайные величины х имеют ковариационную матрицу Сх. Кова
риационная матрица преобразованных случайных величин у равна
Су = ТС хТ т,
где
Т =
dyi
dxi
dyi
дх2
дхп
ду2
дх\
ду2
дХ2
ду2
дхп
дут
dxi
&Угп
д х2
&Ут
дхп )
92/1 \
Эта формула имеет место только тогда, когда случайные величины у и х связа
ны между собой линейно. Это соотношение можно использовать в качестве ап
проксимации в тех случаях, когда зависимость близка к линейной в некоторой
окрестности точки ж, размер которой имеет порядок стандартного отклонения.
Только для нулевых ковариаций в матрице Сх имеет место соотношение
т
(j{yi)
=
v - / dyj
Луг -
{Axjf
\
Закон больших чисел
Пусть х \ , . . . , х п — независимые одинаково распределенные бернуллиевские
случайные величины, где
Xi —
1, если произошло событие А ,
О, в противном случае.
Частота события А равна
1 п
h= г=1
В пределе при п —►оо эта частота стремится к вероятности р события А, т. е.
E(h) = h. = p,
1
а2{h) = -р (1 - р ) .
п
П рилож ение Н.
Основные формулы
629
Т а б л и ц а Н .2 . Р асп ределен и я ди ск р етн ы х случайны х величин
Вероятность
события х = к
(xi =
,
Х{ = ki)
Распределение
ИТ =
Биномиальное
Математическое
ожидание
Дисперсия
(элементы
ковариационной
матрицы)
ж — up
ст2(х) = пр(1 - р )
Xj = npj
Су - npi(5ij - Pj)
= (2) р ‘ ( 1 - р )п- ‘
П олиномиальное
ГТ^ „kj
^ =1
?т!
Е '= 1 Рз = 1
” n.U i
Гипергеом етрическое
L=N - К,
1—п —к
x = A
ф
II
П уассона
i
— n /V
»!м сг2(х) = Л
Центральная предельная теорема
Если Xj —независимые случайные величины со средним а и дисперсией <т2, то
при ть —>оо величина (1/п)
подчиняется нормальному распределению
со средним а и дисперсией <т2/п .
Т а б л и ц а Н .З . Р асп ределен и я непреры вны х случайны х величин.
Распределение
Равном ерное
Гауссовское
С тандартное
гауссовское
М ногомерное
гауссовское
Х и -к вадрат
Плотность
распределения
Математическое
ожидание
Г 0 ; х > а, X > 6
x < b
1
+ a)
(Ь — а)2/12
bvW е х Р (
(x~a)2\
2b2 J
a
Ь2
^
x 2)
0
1
a
С = В -1
f
2/
ехР Н
к ехр |
^
a.)TB(as —а.) 1
2
J
ex p ( - | x 2)
, 1
Г(У) 2?f
Г(1 ( А + /2))
Щ ТоЩ
Ф иш ера F
h
/ 2- 2 ’
/2 > 2
X F P 1" 1 ( l
С тью дента £
Дисперсия
(ковариационная
матрица)
r < i( /+ i) ) |
[i
r < ± /K W 7 '
+ $ y i{f+1)
0
2/? (А+/2-2)
А(/2-2)^(/2-4)’
/2 > 4
-L-
f - 2’
630
П рилож ение Н.
Основные формулы
Свертка распределений
Плотность распределения суммы и = х + у двух независимых случайных ве
личин х и у равна
/
поо
оо
f x{x)fy{ u - x ) d x =
/
fy{y)fx{ u - y ) d y .
J — ОО
-ОО
- Свертка двух независимых пуассоновских распределений с параметрами Ai
и А2 является распределением Пуассона с параметром Ai -f А2 .
- Свертка двух независимых гауссовских распределений со средними а ь а 2 и
дисперсиями а2, а\ является гауссовским распределением со средним а —
а\ 4- <22 и дисперсией а2 = а\ + а2.
— Свертка двух независимых хи-квадрат распределений, степени свободы ко
торых равны / 1 и / 2 , является хи-квадрат распределением с / = Д + /2
степенями свободы.
Выборки
Совокупность —это бесконечное (в некоторых случаях конечное) множество
элементов, являющихся реализацией некоторой случайной величины х, имею
щей дискретное или непрерывное распределение.
(Случайная) выборка объема N состоит из N элементов (х^), х ^ , . х ^ ) ,
взятых из некоторой совокупности при условии, что выбор случаен (см.
разд. 6.1.)
Эмпирическая функция распределения равна Wn(x) = nx/N,
где пх —количество элементов выборки таких, что х < х.
Статистикой называется произвольная функция от элементов выборки
S = S (x ^ \ х^2\ . . . , х<">).
Оценкой называется статистика, используемая для оценивания параметра А
для совокупности. Оценка является несмещенной, если i3(S) = А, и состоя
тельнойL, если
lim cr(S) = 0.
N —"+оо
Метод максимального правдоподобия
Рассмотрим совокупность, плотность распределения которой равна /(ж, А),
где А = (Ai, А2 , . . . , Ар) —множество параметров. Пусть получена выборка
,
х^2), ..., x ^ j из этой совокупности. Тогда функция правдоподобия имеет вид
L = П ^ х / ( х^ ? А), а логарифмическая функция правдоподобия равна I = In L.
1 См. примечание на с. 137. — Прим. ред.
П р и лож ен и е Н.
Основные формулы
631
Т абли ц а Н .4 . Выборки из различных совокупностей.
Выборка объема п
из непрерывно распре
деленной совокупности
С реднее по
совокупности
Е(х) = х
Д и сп ер си я
совокупности
а 2(х)
В ы борочное
среднее
Д исперсия
м атем атического
ож и дан и я
В ы борочная
ди сп ерси я
Выборка объема п из дискретной
совокупности объема N,
описываемой величинами у .
Элементы выборки —п
реализаций случайной величины х
N
У 77 X) Уз
j =1
<?2{у) = ivZT £ {Уз - у)2
j —1
55 = £ £ Хг
г=1
г-1
а 2(х) = 1 а 2(х)
S2 = ^ T Е ( х ( - х ) 2
г= 1
0 - #)
S2 = ^ r E ( x i - x ) 2
г=1
Для того чтобы с помощью метода максимального правдоподобия по выбор
ке определить неизвестный параметр Л, нужно найти такое значение Л, при
котором функция L (или £) достигает максимума. Другими словами, нужно
решить уравнение правдоподобия d £ /d \t = 0; i = 1,2,...
или (для одномер
ного параметра) d£/dX = £f = 0.
Информационное количество выборки: 1(A) = E(£f2) = —Е(£П).
Информационное неравенство: cr2(S) > {1 + Я'(А)}2/1(А )\
где S —некоторая оценка параметра А, а В (А) = Е (S) —А—ее смещение.
Оценка имеет минимальную дисперсию, если £r = vt(A)(S —£(S)), где функция
Д(А) не зависит от выборки.
Оценка максимального правдоподобия А (т. е. решение уравнения правдоподо
бия) является асимптотически несмещенной (т. е. несмещенной при N
оо)
и асимптотически имеет минимальную дисперсию.
Асимптотически функция правдоподобия для одномерного параметра А име
ет следующий вид:
L = const ■exp
ь2 =
сг2(Л)
=
------ ^
Е(е*(Л))
1 См. примечание на с. 196. — Прим. ред.
(А - Л)2
2Ъ2
= ---------
Е(£"{\))
632
Приложение Н. Основные формулы
а для многомерного параметра
L = const • ^ - - ( А - А)ТВ(А - А)
где С = В 1 (ковариационная матрица) и
Вц = - Е
дЧ
dXidXj ) а_ х
Проверка гипотез
Нулевая гипотеза Н о (\ = Л0): предположение относительно значений пара
метров Л плотности распределения /(ж, Л) исходной совокупности.
Альтернативные гипотезы Н\(Х = Ai), Яг(А = Аг), • • другие воз
можные значения параметра А, против которых с помощью выборки X =
(х ^ х ^
из исходной совокупности нужно проверить нулевую ги
потезу.
Гипотеза является простой, если параметры распределения полностью опре
деляются ею. Например, Н0(Ai — 1, Аг = 5), —гипотеза простая, #i(A i = 2,
Аг < 7) —сложная.
Критерий для проверки гипотезы Н0 при уровне значимости а или довери
тельном уровне 1 —а: гипотеза Н0 отвергается, если X Е 5С, где Sc — крити
ческая область в выборочном пространстве и
Р (Х G SC\H0) = а .
Ошибка первого рода состоит в отклонении гипотезы Н0 тогда, когда на самом
деле Но справедлива. Вероятность такой ошибки равна а.
Ошибка второго рода: принять гипотезу Н0 тогда, когда на самом деле спра
ведлива гипотеза H i. Вероятность такой ошибки равна Р (Х qL Sc\Hi) = /3.
Функция мощности критерия:
М (5С, А) = Р (Х е SC\H) = Р ( Х Е 5 С|А).
Оперативная характеристика критерия:
L (S C, А) = 1 - М (5С, А).
Наиболее мощный критерий для проверки гипотезы Н0 против гипотезы Hi —
это критерий, для которого функция М (5С, Ai) = 1 —/3 = max достигает мак
симума. Равномерно наиболее мощный критерий является наиболее мощным
относительно всех возможных гипотез Hi.
Для несмещенного критерия М (5С, Ai) > а для всех возможных гипотез Hi.
Приложение Н, Основные формулы 633
Л емма Н еймана—П ирсона: Критерий д л я проверки гипотезы Н0 против
гипотезы Hi (если обе гипотезы простые), имеющий критическую область 5С
является наиболее мощным критерием, если f ( X \ H 0) / f ( X \ H 1) < с при X G S c
и если f ( X \ H 0) / f ( X \ H i ) > с при X ^ 5 С, где с —константа, зависящая только
от а.
Статистика критерия Т(Х): скалярная функция от выборки X. Используя
отображение X —►Т ( Х) , SC{X) —> U, проверку условия X е Sc можно свести
к проверке условия Т £ U.
Критерий отношения правдоподобия: Если и определяет область выборочного
пространства, соответствующую нулевой гипотезе, a Q определяет область, со
ответствующую всему параметрическому пространству, то для проверки гипотезы используется статистика критерия I = j(x: А
)//(х; А
). Здесь А
~(ш )
и А —оценки максимального правдоподобия для областей Q и ы, соответ
ственно. Гипотеза Н0 отвергается, если Т > Ti_a , где Р (Т > Ti_a |#o) =
g( T) dT = a: a g(T) —плотность распределения для статистики Т при
гипотезе Н0.
Т еорема У илкса (она выполнена при некоторых (достаточно слабых)
условиях, налагаемых на плотность распределения совокупности): Если в ги
потезе H q(Xi = Аю, . . . , Аг = Аго) содержатся утверждения о значениях г из
всех р параметров, то в пределе при п —> оо величина —21пТ (где Т —стати
стика отношения правдоподобия) имеет хи-квадрат распределение с / = р —г
степенями свободы. При г = р количество степеней свободы / = 1.
Критерий согласия хи-квадрат с максимальным числом степеней
свободы
Гипотеза: истинные значения измеряемой величины hi равны /*. Эта гипотеза
проверяется на основании выборки объема У, элементы которой —результаты
измерений у*, имеющие ошибку
которая распределена нормально со сред
ним нуль и известным стандартным отклонением Gi.
Критическая область: Т > Хг-ог
Число степеней свободы: N .
Критерий согласия хи-квадрат для проверки гипотезы о типе
распределения
Гипотеза: выборка объема п подчиняется некоторому заданному распределе
нию. Для проверки этой гипотезы на основании выборки найдем значения щ —
634 Приложение Н. Основные формулы
Т а б л и ц а Н .5 . Н аиболее часто используем ы е статистики критерия дл я
проверки различны х гипотез о п ар ам етр ах вы борки из норм ально распре
деленной совокупности со средн и м Л и ди сп ерси ей о 2. (С луч ай Г. о и з
вестна; случай 2: о н еи звестн а (критерий С тью дента); случай 3: критерий
хи-квадрат д л я проверки равенства дисперсий; случай 4: критерий равен
ства средних С тью дента д л я д в у х выборок объем ов TVi и N 2 при равны х,
но неизвестны х ди сп ер си я х (см. (8.3.19)); случай 5: F -критерий д л я дв ух
выборок.)
Случай
1
2
Статистика
критерия
г р _ х—Ао
~~ a/y/N'
N / .4
x = £ £ x w
i
т _ х—Ло
s/y/N ’
sS2 —
- N 1- 1Х
X
х £ (х«> - х ) 2
Нулевая
гипотеза
Критическая область
для статистики
критерия
Число
степеней
свободы
Л = Ло
Л < Ло
Л > Ло
|Т| > П ( 1 - а / 2 )
Т > (2( 1 - а)
Т < (2(a)
—
Л = Л0
Л < Ло
Л > Ло
\Т\ > t l - a /2
Т* > tl — а
Т < “ £i_a = *а
TV - 1
<т2 = Сто
<т2 < Сто
СТ2 > <Х2
X l—а/2 < Г < Ха/2
т > X l-a
TV — 1
5=1
3
4
5
T = (iV -l)^
Т
Ч~х2
Л1 = л?
T = sl/ 4,
Hi2 „— <722
5i
—
=
N t-
1*
XЕ (хР -х
хт2
0 2
/Т2
<Т21 ^ъ <722
T<xl
iVi + N 2 -
i^l-a/2 < т < F a / 2
Т > F i-a
Т < Fa
2
fi= N i- 1
f2 = N 2 — 1
число элементов выборки, попавших в г-й интервал в области значений случай
ной величины. Пусть рг —вероятность наблюдения случайной величины на г-м
интервале, посчитанная в соответствии с предположением гипотезы.
Статистика критерия; Т = ^
i— 1
ния.
, гДе г —число интервалов разбие-
Критическая область: Т > Хг-аЧисло степеней свободы: г —1 (или г —1 —к, если к параметров распределения
оценивались по выборке).
Метод наименьших квадратов
Пусть имеется т уравнений fk{x^rf) = 0 ; к = 1, . . . , ш, являющихся уравне
ниями связи между г-мерным вектором неизвестных х = (хь Х2 , . . . , х г) и
n-мерным вектором измеряемых величин г) ~ (тд, 772, . . . , rjn). Вместо истин-
Приложение Н. Основные формулы 635
ных значений измеряемых величины 7 7 , в процессе измерений были получены
значения у , отличающиеся от истинных значений на величину ошибок измере
ний е, т. е. у = г] + £. Согласно предположению, величины £ имеют нормальное
распределение со средним нуль. Их ковариационная матрица равна Су = G” 1.
Для того чтобы получить оценки ж, т/, нужно разложить функцию Д в ряд
в окрестности точки первого приближения Xq, 770 = у . Отбросив все члены
ряда за исключением линейных, получаем второе приближение Х \ = Хо + £
и вычисляем 7 7 1 = 77 + S. Затем эта итерационная процедура повторяется до
тех пор, пока не будет выполнено определенное условие сходимости, например,
пока скалярная функция М не перестанет убывать. Если функции Д линейны
по ж и по 7 7 , то для нахождения оценок необходим только один итерационный
шаг. Этот метод можно рассматривать как процесс минимизации функции М .
Значение функции М в точке минимума зависит от ошибок измерений. Оно
является случайной величиной и имеет хи-квадрат распределение с / = т —г
степенями свободы. Поэтому эту величину можно использовать и как стати
стику критерия согласия хи-квадрат, и как статистику для проверки других
гипотез, например гипотезы Су = G~ l . Если ошибки е не являются нормаль
но распределенными, однако распределены симметрично относительно нуля,
то оценка наименьших квадратов х будет иметь минимальную дисперсию и
Е( М) — т — г (теорема Гаусса ~ Маркова).
Дисперсионный анализ
Цель анализа состоит в изучении влияния внешних переменных на значение
измеряемой случайной ведичины х. С помощью соответствующим образом по
строенных F -критериев пытаются проверить, является ли величина х неза
висимой от внешних переменных. В зависимости от количества внешних пе
ременных и предположений, сделанных относительно вида функциональной
зависимости величины х от внешних переменных, можно построить различ
ные модели.
Простейшей моделью является двухфакторная классификация с пересекающи
мися факторами для нескольких наблюдений. Разбиение наблюдений на клас
сы Ai и B j (г = 1. 2,
j — 1, 2, . . . , J) осуществляется в соответствии со
значениями двух внешних переменных. В каждый класс
Bj попадает К
наблюдений Xijk (к = 1 , 2 , . . . , К). Предполагается, что в этом случае модель
имеет вид
%ijk = У + СЦ+ bj + (ab)ij + Eijk,
где по предположению ошибки измерений ець имеют нормальные распределе
ния со средним нуль и дисперсиями a*, bj, а величины (ab)ij характеризуют
степень взаимного влияния между классами в А и В, а также степень их вза
имодействия. Используя отношения
F^B\ F^AB\ можно проверить три
нулевые гипотезы:
Н (0А)(щ = 0, г = 1 , . . . ,1),
H^B)(bj = 0, j = 1 , . . J),
Н {АВ\(аЪ )ч = 0, г = 1, . . . , I, j = 1, . . . , J)
636
Приложение Н. Основные формулы
Т а б л и ц а Н . 6 . М етод наим еньш их квадратов в обобщ енной ф орм улировке и в
случае изм ерений с ограничениям и.
У равнения
П ервые
приближ ения
Обобщенная
формулировка
Измерения
с ограничениями
fk(x,Tj) = 0, к =
*о,
/ = А£ + Вд + с + ■■
{Л}*, = (dfk/dxi)aorio
{В}к1 = ( d f k / d v i ) ^ ^
fk(v) = О
V o
У равнения в
матричном виде
=
У
с = /(ж о ,
Ковариационная
м атрица для
изм ерений
V o )
£ = —( A t G b A ) ~ 1j C G b c
б = - G y 1BTGB{A^ + c)
G b = ( B G - ' B t )~'
Ж1 = x0 + £, r/1 =
С ледую щ ая итерация
О ценка (после
V o
A, В, с, б_
x = Xs-i + | ,
s,
s итераций)
V
М иним изируемая
ф ун кция
M = ( B l ) TGB(Be)
К овариационны е
матрицы
+ <5,
новые значения
=
V
s
~
l
=
У
f - B5 + c-\ ----{B}kl = (df k/ d r n \ o
c - f(vo)
Cy = Gy1
Су = G~'
П оправка
V o
+
e=y-v
G - 1 = (ATGBA)~1
G~1 = G~'- Gyl B TGBBGy 1
+ G ~ 1B t G b A ( A t G b A ) - 1
x A^GbB G -1
_______
5 =
Gb
—G y 1B TGBc
= (BGy1B T)~1
VI = Vo + s,
новы е зн ачени я
В, с, б
V = V s - i + S,
e= y-v
M = ( m ) TGB(Be)
Gfj1 = Gy1
—Gy1B TGBBGy 1
Результаты проверки этих гипотез представляются в виде таблиц дисперси
онного анализа (AN ОVA-таблиц). Описание других моделей можно найти в
гл. 11.
Полиномиальная регрессия
Задача: Нужно описать зависимость истинных значений r}{t) некоторой слу
чайной величины от контролируемой переменной t в виде полинома (г —1)го порядка. Это необходимо сделать на основании N результатов измерений
Vi(U) этой случайной величины, полученных при нормально распределенных
ошибках Ui. Вместо r](t) = х\ + x 2t + *■*+ x rt r~l обычно пишут
rj(t) = x i f i ( t ) + x 2/ 2 (£) + ■• ■+ x r fr{t).
Здесь fj — ортогональные многочлены (j —1)-го порядка, т. е.
№
=
k= 1
Основные формулы
П рилож ение Н.
Таблица Н.7.
637
М етод наим еньш их квадратов д л я прямы х и косвенных и з
мерений.
Косвенные измерения
У равнения
П ервые
приближ ения
f k = m - 9к(х) =
о
Жо, Г)0 — У
Прямые измерения
с различной
точностью
fk=Vk-X
ХО =
о, rjo =
у
/ = Д£ + £ + С
/ 11 \
f ~ А£ - £ + с + ■•
У равнения в
матричной ф ор м е
Д =
<•*}"=( й ) . „
С = у - д (хо)
К овариационная
м атрица дл я
изм ерений
Cy = G v-1
П оправки
£=
С ледую щ ая
итерация
Х \
-
1 /
с=у
О = G~1
О \
)
- ( A T G v A ) ~ 1A T G y c
=
Х о
+
новые зн ачени я
А, с, £
Hvk/vi
О ценка
(после s
итераций)
в =
М иним изируемая
ф ун кция
М = eTGv5
К овариационны е
матрицы
G r1 = (ЛТС И ) _1
G -1 = A { A T G v A ) A r
X
— X
з— \ + £ ,
Z~x ~
£k =Vk ~ x
M = ^G yi
А£ -4- с
•
ч1-■«)-(? 4 )
-1
коэффициенты bjk можно определить из условия ортогональности
N
9гf j ifi )fk(tj) —fijk'
9г —
■
г=1
Значения неизвестных Xj можно получить методом наименьших квадратов,
минимизируя выражение
N
Г
]2
Y ,9 i< Уг (U) - J Z XJ f j (l >) } = m in ■
1=1
J=1
Ковариационная матрица для Xj является r-мерной единичной матрицей.
А нализ временны х рядов
Имеется последовательность результатов измерений у*(^), г — 1
кото
рые (неизвестным образом) зависят от контролируемой переменной t (обычно
638 Приложение Н. Основные формулы
в роли контролируемой переменной выступает время). Величина у* предста
вляется в виде суммы тренда щ и ошибки
т. е. у* = ту* +
Измерения
осуществляются через равные промежутки времени, т. е. U — const. В
целях минимизации ошибок Si для всех ^ (г > i < n —k) строится скользящее
среднее. Это осуществляется путем аппроксимации (2&+ 1)-го результата изме
рений, лежащих по обеим сторонам от г-го измерения, полиномом Е~го порядка.
Результаты аппроксимации в точке U представляют собой скользящее среднее
T)o(i) — a - k V i - k
+ а ~А :-Ы У г-А :+1 4 - ■■ * 4 -
а^Уъ+к-
В табл. 13.1 приведены значения коэффициентов а _ ..., а& при малых значе
ниях параметров к и £. В точках Ьг, лежащих на концах исследуемого отрезка
(т. е. при i < k yi > n —fe), результаты аппроксимации нужно использовать осто
рожно. Это также касается тех точек, которые лежат вблизи границ отрезка,
отвечающего (2к 4- 1)-му измерению.
Приложение I
Статистические таблицы
Т а б л и ц а 1 .1 . К вантили Ар (&)
д ля
распределени я П уассона.
к- 1
е~Хр\ р /п]
п=0
—
к
1
2
3
4
5
6
1
8
9
10
И
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Р
0.0005
7,601
9.999
12.051
13.934
15.710
17.411
19.055
20.654
22.217
23.749
25.256
26.739
28.203
29.650
31.081
32.498
33.902
35.294
36.676
38.047
39.410
40.764
42.110
43.449
44.780
0.0010
6.908
9.233
11.229
13.062
14.794
16.455
18.062
19.626
21.156
22.657
24.134
25.589
27.026
28.446
29.852
31.244
32.624
33.993
35.351
36.701
38.042
39-375
40.700
42.019
43.330
0.0050
5.298
7.430
9.274
10.977
12.594
14.150
15.660
17.134
18.578
19.998
21.398
22.779
24.145
25.497
26.836
28.164
29.482
30.791
32.091
33.383
34.668
35.946
37.218
38.484
39.745
0.0100
4.605
6.638
8.406
10.045
11.605
13.108
14.571
16.000
17 403
18.783
20.145
21.490
22.821
24.139
25.446
26.743
28.030
29.310
30.581
31.845
33.103
34.355
35.601
36.841
38.077
0.0250
3.689
5.572
7.225
8.767
10.242
11.668
13.059
14.423
15.763
17.085
18.390
19.682
20.962
22.230
23.490
24.740
25.983
27.219
28.448
29.671
30.888
32.101
33.308
34.511
35.710
0.0500
2.996
4.744
6.296
7.754
9.154
10.513
11.842
13.148
14,435
15.705
16.962
18.208
19.443
20.669
21.886
23.097
24.301
25.499
26.692
27.879
29.062
30.240
31.415
32.585
33.752
0.1000
2.303
3.890
5.322
6.681
7.994
9.275
10.532
11.771
12.995
14.206
15.407
16.598
17.782
18.958
20.128
21.292
22.452
23.606
24.756
25.903
27.045
28.184
29.320
30.453
31.584
640
таблицы
П рилож ение I. С татистические
Таблица 1.1. (продолжение)
fc -i
Р = Е
е~Хр Хр/п\
71 = 0
Р
к
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
0.9000
0.105
0.532
1.1 0 2
1.745
2.433
3.152
3.895
4.656
5.432
6 .221
7.021
7.829
8.646
9.470
10.300
11.135
11.976
12.822
13.671
14 525
15.383
16.244
17,108
17.975
18.844
0.9500
0.051
0.355
0,818
1.366
1.970
2.613
3,285
3.981
4.695
5.425
6.169
6.924
7.690
8.464
9.246
10.036
10.832
11 634
12.442
13.255
14.072
14.894
15.719
16.549
17.382
0.9750
0.025
0.242
0.619
1.090
1.623
2.202
2.814
3.454
4 115
4.795
5.491
6.201
6.922
7.654
8,395
9.145
9.903
10.668
11.439
12.217
12.999
13.787
14.580
15.377
16.179
0.9900
0.010
0.149
0.436
0.823
1.279
1.785
2.330
2.906
3.507
4.130
4.771
5.428
6.099
6.782
7.477
8.181
8.895
9.616
10.346
11.082
11.825
12,574
13.329
14.089
14.853
0.9950
0.005
0.103
0.338
0.672
1.078
1.537
2.037
2.571
3.132
3.717
4.321
4.943
5.580
6.231
6.893
7 567
8.251
8.943
9,644
10.353
11.069
11.792
12.521
13.255
13.995
0.9990
0.001
0.045
0.191
0.429
0.739
1.107
1.520
1.971
2.452
2.961
3.491
4.042
4.611
5.195
5.794
6.405
7.028
7.662
8.306
8.958
9.619
10.288
10.964
11.647
12.337
0.9995
0,001
0.032
0.150
0.355
0.632
0.967
1.348
1.768
2.220
2.699
3.202
3.726
4.269
4.828
5.402
5.990
6.590
7.201
7.822
8.453
9.093
9.741
10.397
11.0 6 0
11.730
I. Статистические таблицы
Т а б л и ц а 1 . 2 . Ф ункция норм ального расп ределен и я
Фо(х).
РХ
Р(х < х) = Фъ(х) —
X
1
2
.001
.002
.002
.003
.005
.006
.008
.010
.001
.002
.002
.003
.004
.006
.008
.010
.013
.017
.022
.027
.034
.043
.053
.064
.078
.093
.1 1 1
.131
.154
.179
.206
.236
.268
.302
.337
.374
.413
.452
.492
т-Ч
о
- 3 .0
- 2 .9
- 2.8
- 2 .7
- 2.6
- 2 .5
- 2 .4
- 2 .3
- 2.2
- 2 .1
- 2.0
- 1 .9
- 1.8
- 1 .7
- 1.6
- 1 .5
- 1 .4
- 1 .3
- 1.2
- 1 .1
- 1.0
- 0 .9
- 0.8
- 0 .7
- 0.6
- 0 .5
- 0 .4
- 0 .3
- 0.2
- 0 .1
0.0
0
.001
.002
.003
.003
.005
.006
.008
.0 11
.014
.018
.023
.029
.036
.045
.055
.067
.081
.097
.115
.136
.159
.184
.2 12
.242
.274
.309
.345
.382
.421
.460
.500
.017
.022
.028
.035
.044
.054
.066
.079
.095
.113
.133
.156
.181
.209
.239
.271
.305
.341
.378
.417
.456
.496
3
.001
.002
.002
.003
.004
.006
.008
.010
.013
.017
.021
.027
.034
.042
.052
.063
,076
.092
.109
.129
.152
.176
.203
.233
.264
.298
.334
.371
.409
.448
.488
/
y f a *' —ос
4
.001
.002
.002
.003
,004
.006
.007
.010
.013
.016
.021
.026
.033
.041
.051
.062
.075
.090
.107
.127
.149
,174
.200
.230
.261
.295
.330
.367
.405
.444
.484
е х р (—х 2/ 2 )
5
.001
.002
.002
.003
.004
.005
.007
.009
.0 12
.016
.020
.026
.032
.040
.049
061
.074
.089
.106
.125
147
.171
.198
.227
.258
.291
.326
.363
.401
.440
.480
6
.001
.002
.002
.003
.004
005
.007
.009
.0 12
.015
.020
.025
.031
039
.048
.059
.072
.087
.104
.123
.145
.169
.195
.224
.255
.288
.323
.359
.397
436
.476
dx
7
.001
.001
.002
.003
.004
.005
.007
.009
.0 12
.015
.019
.024
.031
.038
.047
.058
.071
.085
.10 2
.1 2 1
.142
.166
.192
.2 2 1
.251
,284
.319
.356
.394
.433
.472
8
.001
.001
.002
.003
.004
.005
.007
009
.0 11
.015
,019
.024
.030
.038
.046
.057
.069
.084
.100
.119
.140
.164
.189
.218
.248
.281
.316
.352
.390
.429
.468
9
.001
.001
.002
.003
.004
005
,006
.008
.0 11
.014
.018
.023
.029
.037
,046
,056
.068
.082
.099
.117
.138
.161
.187
.215
.245
.278
.312
.348
.386
.425
.464
641
642
Приложение I. Статистические таблицы
Таблица 1.2. ( продолжение)
рт
Р (х <
х) = Фо(х)
X
0
1
2
0.0
.500
.540
.579
.504
.544
.583
.622
.659
.695
.729
.761
.791
.819
.844
.867
.887
.905
.921
,934
.946
.956
.965
.972
.978
.983
,986
.990
.992
.994
.995
.997
.998
.998
.999
.508
.548
.587
.626
.663
.698
.732
.764
.794
.821
.846
.869
.889
.907
.922
.936
.947
.957
.966
.973
.978
.983
.987
.990
.992
.994
.996
.997
.998
.998
.999
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2.0
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
3.0
.618
.655
.691
.726
.758
.788
.816
.841
.864
.885
.903
,919
.933
.945
.955
.964
.971
.977
.982
.986
.989
.992
.994
.995
.997
.997
.998
.999
3
.512
.552
.591
.629
.666
.702
.736
.767
.797
.824
.848
.871
.891
.908
,924
.937
.948
.958
966
.973
.979
.983
.987
.990
.992
.994
.996
.997
.998
.998
.999
/
J —оо
4
.516
.556
.595
.633
.670
.705
.739
.770
.800
,826
.851
.873
.893
.910
.925
.938
.949
.959
.967
.974
.979
.984
.987
.990
.993
.994
.996
.997
.998
.998
.999
5
.520
.560
.599
.637
.674
.709
.742
.773
.802
.829
.853
.875
.894
.911
.926
.939
.951
.960
.968
.974
.980
.984
,988
.991
.993
.995
.996
.997
.998
.998
.999
е х р (—х 2/2 )
6
.524
.564
.603
.641
.677
.712
.745
.776
.805
.831
.855
.877
.896
.913
.928
.941
.952
.961
.969
.975
.980
.985
.988
991
.993
.995
.996
.997
.998
.998
.999
dx
7
.528
.567
.606
.644
.681
.716
.749
.779
.808
.834
.858
.879
.898
.915
.929
.942
.953
.962
.969
.976
.981
.985
.988
.991
.993
.995
.996
.997
.998
.999
.999
8
.532
.571
.610
.648
.684
.719
.752
.782
.811
.836
.860
.881
.900
.916
.931
.943
.954
.962
.970
.976
.981
.985
.989
.991
993
.995
.996
.997
.998
.999
.999
9
.536
.575
.614
.652
.688
.722
.755
.785
.813
.839
.862
,883
.901
.918
.932
.944
.954
.963
.971
.977
.982
.986
.989
.992
.994
.995
,996
.997
.998
.999
.999
I. Статистические таблицы
Т а б л и ц а 1.3. Ф ункция расп р едел ен и я м одул я стандартной норм ально
распределенн ой случайной величины 2Фо(х) — 1.
Р (|х | <
X
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0,8
0.9
1.0
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2.0
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
3.0
0
.000
.080
.159
.236
.311
.383
.451
.516
.576
.632
.683
.729
.770
.806
.838
.866
.890
.911
.928
.943
.954
.964
.972
.979
.984
.988
.991
.993
.995
.996
.997
1
.008
.088
.166
.243
.318
.390
.458
.522
.582
.637
.688
.733
.774
.810
.841
.869
.893
.913
.930
.944
.956
.965
.973
.979
.984
.988
.991
.993
.995
.996
.997
х)
= 2 Фо(х)
2
.016
.096
.174
.251
.326
.397
.465
.528
.588
.642
.692
.737
.778
.813
.844
.871
.895
.915
.931
.945
.957
,966
.974
.980
.984
.988
.991
,993
.995
.996
.997
3
.024
.103
.182
259
.333
.404
.471
.535
.593
.648
.697
.742
.781
.816
.847
.874
.897
.916
.933
.946
.958
.967
.974
.980
.985
.989
.991
.994
.995
.997
.998
-
i АЧ-Г
е х р ( - ■х2/ 2 )
4
.032
.111
.190
.266
.340
.411
.478
.541
.599
,653
.702
.746
.785
.820
.850
.876
.899
.918
.934
.948
.959
.968
.975
.981
.985
.989
.992
.994
.995
.997
.998
6
.048
.127
.205
.281
.354
.425
.491
.553
.610
.663
.711
.754
.792
.826
.856
.881
.903
.922
937
.950
.961
.969
.976
.982
.986
.990
.992
.994
.996
.997
.998
=
с
\/2
5
.040
.119
.197
.274
.347
.418
.484
.547
.605
.658
.706
.750
.789
.823
.853
.879
.901
,920
.936
.949
.960
.968
.976
.981
.986
.989
.992
.994
.996
.997
.998
7
.056
.135
.213
.289
.362
.431
.497
.559
.616
.668
.715
.758
.796
.829
.858
.884
.905
.923
939
.951
.962
.970
.977
.982
.986
.990
.992
.994
.996
.997
.998
dx
8
.064
.143
.221
.296
.369
.438
.503
.565
.621
.673
.720
.762
.799
.832
.861
.886
.907
.925
.940
.952
,962
.971
.977
.983
.987
.990
.993
.995
.996
.997
.998
9
.072
.151
.228
.303
.376
.445
.510
.570
.627
.678
.724
.766
.803
.835
.864
.888
.909
.927
.941
.953
.963
.971
.978
.983
.987
.990
.993
.995
.996
.997
.998
643
644
Приложение I.
Ст ат ист ические т аблицы
Таблица 1.4. Квантили х р = J?(P) нормального распределения.
Р =
р
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0
—оо
- 1 .2 8
- 0 .8 4
- 0 .5 2
- 0 .2 5
0.00
0.25
0.52
0.84
1.28
1Г Р е х р (—х 2/2 ) d r
\/27Г J —оо
-З.'ЗЗ
- 1 .2 3
- 0 .8 1
- 0 .5 0
- 0 .2 3
2
- 2 .0 5
- 1 .1 7
- 0 .7 7
- 0 .4 7
- 0 .2 0
3
—1.88
- 1 .1 3
- 0 .7 4
- 0 .4 4
- 0 .1 8
4
- 1 .7 5
- 1 .0 8
- 0 .7 1
- 0 .4 1
- 0 .1 5
0.03
0.28
0.55
0.88
1.34
0.05
0.31
0.58
0.92
1.41
0.08
0.33
0.61
0.95
1.48
0.10
0.36
0.64
0.99
1.55
1
5
6
- 1 .6 4 - 1 .5 5
- 1 .0 4 - 0 .9 9
- 0 .6 7 - 0 .6 4
- 0 .3 9 - 0 .3 6
- 0 .1 3 - 0 .1 0
0.13
0.39
0.67
1.04
1.64
0.15
0.41
0.71
1.08
1.75
7
- 1 .4 8
- 0 .9 5
- 0 .6 1
- 0 .3 3
- 0 .0 8
8
- 1 .4 1
- 0 .9 2
- 0 .5 8
- 0 .3 1
- 0 .0 5
9
- 1 .3 4
- 0 .8 8
- 0 .5 5
- 0 .2 8
- 0 .0 3
0.18
0.44
0.74
1.13
1.88
0.20
0.47
0.77
1.17
2.05
0.23
0.50
0.81
1.23
2.33
I. Статистические таблицы
Т а б л и ц а 1.5. К вантили х'Р = 4?'(Р ) распределени я модуля стан
дар тн ой норм альной случайной величины.
р = -j= [
е х р (—х j/2 )
dx
л/2тг Л -*'е
р
1
0
0.0 0.002 0.013
0.1 6.126 0.138
0.2 0.253 0.226
0.3 0.385 0.399
0.4 0.524 0.549
0.4 8.674 0.690
0.6 0.842 0.860
0.7 1.036 1.058
0.8 1.282 1.311
0.9 1.645 1.695
Р
2
3
4
5
6
7
8
9
0.031
0 151
0.279
0.412
0.553
0.706
0.878
1.080
1.341
1.751
0.038
0.664
3.296
0.429
0.722
0.896
1.103
1.372
1.812
0.151
1.176
0.305
0440
0.593
0.739
0.915
1.126
1.405
1.881
8.063
0.189
0.319
0.454
0.538
0.755
0.935
1.150
1.440
1.960
0.075
0.202
7.532
0.468
0.613
0.772
0.954
1.175
1.476
2.054
4.088
0.215
0.345
0.485
0.628
0.789
0.974
1.200
1.514
2.170
0.100
0.428
0.358
0.496
0.613
0 806
0.994
1.227
1.555
2.326
0.913
0.240
0.312
0.510
0.669
0.824
1.015
1.254
1.598
2.576
6
7
9
1.675
1.728
1.787
1.852
1.927
2.014
2.120
2.257
2.457
2.878
1.680
1.734
1.793
1.859
1.935
2.024
2.132
2.273
2.484
2.968
8
1.685
1.739
1.799
1.866
1.943
2.034
2.144
2.290
2.512
3.090
1.690
1.745
1.805
1.873
1.951
2.044
2.157
2.308
2.543
3.291
8
9
0.568
1
2
3
4
0.90
0.91
0.92
0.93
0.94
0.95
0.96
0.97
0.98
0.99
0
1.645
1.695
1.751
1.812
1.881
1.960
2.054
2.170
2.326
2.576
1.650
1.701
1.757
1.818
1.888
1.969
2.064
2.183
2.346
2.612
1.655
1.706
1.762
1.825
1.896
1.977
2.075
2.197
2.366
2.652
1.660
1.711
1.768
1.832
1.903
1.986
2.086
2.212
2.387
2.697
1.665
1.717
1.774
1.838
1.911
1.995
2.097
2.226
2.409
2.748
5
1.670
1.722
1.780
1.845
1.919
2.005
2.108
2.241
2.432
2.807
Р
0
1
2
3
4
5
6
7
2.576 2.579 2.583 2.586
2.612 2.616 2.620 2.624
2.652 2.656 2.661 2.665
2.697 2.702 2.706 2.711
2.748 2.753 2.759 2.765
2.807 2.814 2.820 2.827
2.878 2.886 2.894 2.903
2.968 2.978 2.989 3.000
3.090 3.105 3.121 3.138
3.291 3.320 3.353 3.390
2.590
2.628
2.669
2.716
2.770
2.834
2.594
2.632
2.674
2.721
2.776
2.841
2.920
3.023
3.175
3.481
2.597
2.636
2.678
2.727
2.782
2.848
2.929
3.036
3.195
3.540
2.601
2.640
2.683
2 732
2.788
2.855
2.938
3.048
3.216
3.615
0.990
0.991
0.992
0.993
0.994
0.995
0.996
0.997
0.998
0.999
2.911
3.011
3.156
3.432
2.605 2.608
2.644 2.648
2.687 2.692
2.737 2.742
2.794 2.801
2.863 2.870
2.948 2.958
3.062 3.076
3.239 3.264
3.719 3.891
645
646 Приложение L Статистические таблицы
Таблица 1.6. Хи-квадрат распределение. Величины F ('X2).
, х»
F (x2) = /
/о
х2
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
2.0
3.0
4.0
5.0
6.0
7.0
8.0
9.0
10.0
11.0
12.0
13.0
14.0
15.0
16.0
17.0
18.0
19.0
20,0
1
2
0.248 0.049
0.345 0.095
0.416 0.139
0.473 0.181
0.520 0.221
0,561 0.259
0.597 0.295
0.629 0.330
0.657 0.362
0.683 0.393
0,843 0.632
0.917 0.777
0.954 0.865
0.975 0.918
0.986 0.950
0,992 0.970
0.995 0.982
0.997 0.989
0.998 0.993
0.999 0.996
0.999 0.998
1.000 0.998
1.000 0.999
1.000 0.999
1.000 1.000
1.000 1.000
1.000 1.000
1.000 1.000
1.000 1.000
3
0.008
0.022
0.040
0.060
0.081
0.104
0.127
0.151
0.175
0.199
0.428
0.608
0.739
0.828
0.888
0.928
0.954
0.971
0.981
0.988
0.993
0.995
0.997
0.998
0.999
0,999
1.000
1.000
1.000
4
0.001
0.005
0.010
0.018
0.026
0.037
0.049
0.062
0.075
0.090
0.264
0.442
0.594
0.713
0,801
0.864
0.908
0.939
0.960
0.973
0.983
0.989
0.993
0.995
0.997
0.998
0.999
0.999
1.000
Я х 2;/) Фс2
/
5
6
7
8
9
0.000 0.000 0.000
0.000 0.000 0.000
0.001 0.000 0.000
0.001 0.000 0.000
0.002 0.001 0.000
0.004 0.001 0.000
0.017 0.006 0.002 0.000
0.000
0.000
0.000
0.000
0.000
0.151
0.300
0.451
0.584
0.694
0.779
0.844
0.891
0.925
0.949
0.965
0.977
0.984
0.990
0.993
0.996
0.997
0.998
0.999
0.009
0.036
0.089
0166
0,260
0.363
0.466
0.563
0.650
0.724
0.787
0.837
0.878
0.909
0.933
0.951
0.965
0.975
0.982
10
0.000
0.000
0.000
0.000
0.000
0,000 0.000
0.000 0.000
0.023 0.008 0.003 0.001 0.000 0.000
0.030 0.011 0,004 0.001 0.000 0.000
0.037 0.014 0.005 0.002 0.001 0.000
0,000
0.001
0,002
0.005
0.008
0.012
0.080
0.191
0.323
0.456
0.577
0.679
0.762
0,040
0.115
0.220
0,340
0.460
0.571
0.66?
0.826 0.747
0.875 0.811
0.912 0.861
0.938 0.899
0.957 0.928
0.970 0.949
0.980 0.964
0.986 0.975
0.991 0.983
0.994 0.988
0.996 0,992
0.997 0.994
0.019
0.066
0.143
0.242
0.353
0,463
0.567
0.658
0.735
0.798
0.849
0.888
0.918
0.941
0.958
0.970
0,979
0.985
0.990
0.004
0.019
0.053
0.109
0.185
0.275
0.371
0.468
0.560
0.642
0.715
0.776
0.827
0.868
0.900
0.926
0.945
0.960
0.971
I. Статистические таблицы
Т а б л и ц а 1 .7 . К ван ти ли
ния.
\ р д л я хи -к вадрат р асп редел е
[ Х %
Р = J/Q
Д х 2; / ) Фс2
Р
/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
30
40
50
60
70
80
90
100
0.900
2.706
4.605
6.251
7.779
9.236
10.645
12.017
13.362
14.684
15.987
17.275
18.549
19.812
21.064
22.307
23.542
24.769
25.989
27.204
28.412
40.256
51.805
63.167
74.397
85.527
80.000
107.565
118.498
0.950
3.841
5.991
7,815
9,488
11.070
12.592
14.067
15.507
16.919
18.307
19.675
21.026
22.362
23.685
24.996
26.296
27.587
28.869
30.144
31.410
43.773
55.758
67.505
79.082
90.531
101.879
113.145
124.342
0.990
6.635
9.210
11.345
13.277
15.086
16.812
18.475
20.090
21.666
23.209
24.725
26.217
27.688
29.141
30.578
32.000
33.409
34.805
36.191
37.566
50.892
63.691
76.154
88.379
100.425
112.329
124.116
135.807
0.995
7.879
10.597
12.838
14.860
16.750
18.548
20.278
21.955
23.589
25.188
26.757
28.300
29.819
31.319
32.801
34.267
35.718
37.156
38.582
39.997
53.672
66.766
79.490
91.952
104.215
116.321
128.299
140.169
0.999
10,828
13.816
16.266
18.467
20.515
22.458
24.322
26.124
27.877
29.588
31.264
32.909
34.528
36.123
37.697
39.252
40.790
42.312
43.820
45.315
59.703
73.402
86.661
99.607
112.317
124.839
137.208
149.449
647
648
П рилож ение I. С татистические таблицы
Таблица 1.8. Квантили F p для ^-распределения Фишера.
pFp
f(F-,fu h ) d F
0.900 = Р =
1
h
/2
1
2
3
4
5
6
7
8
9
10
1
39.86
8.526
5.538
4.545
4.060
3.776
3.589
3.458
3.360
3.285
2
49.50
9.000
5.462
4.325
3.780
3.463
3.257
3.113
3.006
2.924
3
53.59
9.162
5.391
4.191
3.619
3.289
3.074
2.924
2.813
2.728
4
55.83
9.243
5.343
4.107
3.520
3.181
2.961
2.806
2.693
2.605
5
57.24
9.293
5.309
4.051
3.453
3.108
2.883
2.726
2.611
2.522
6
58.20
9.326
5.285
4.010
3.405
3.055
2.827
2.668
2.551
2.461
7
58.91
9.349
5.266
3.979
3.368
3.014
2.785
2.624
2.505
2.414
8
59.44
9.367
5.252
3.955
3.339
2.983
2.752
2.589
2.469
2.377
9
59.86
9.381
5.240
3.936
3.316
2.958
2.725
2.561
2.440
2.347
10
60.19
9.392
5.230
3.920
3.297
2.937
2.703
2.538
2.416
2.323
9
240.5
19.38
8.812
5.999
4.772
4.099
3.677
3.388
3.179
3.020
10
241.9
19.40
8.786
5.964
4.735
4.060
3.637
3.347
3.137
2.978
pFP
0.950 = P =
L
3
215.7
19.16
9.277
6.591
5.409
4.757
4.347
4.066
3.863
3.708
5
230.2
19.30
9.013
6.256
5.050
4.387
3.972
3.687
3482
3.326
f(F-,fu f 2) dF
h
н
1
2
3
4
5
6
7
8
9
10
1
161.4
18.51
10.13
7.709
6.608
5.987
5.591
5.318
5.117
4.965
2
199.5
19.00
9.552
6.944
5.786
5.143
4.737
4.459
4.256
4.103
4
224.6
19.25
9.117
6.388
5.192
4.534
4.120
3.838
3.633
3.478
6
234.0
19.33
8.941
6.163
4.950
4.284
3.866
3.581
3.374
3.217
7
236.8
19.35
8.887
6.094
4.876
4.207
3.787
3.500
3.293
3.135
8
238.9
19.37
8.845
6.041
4.818
4.147
3.726
3.438
3.230
3.072
I. Статистические т аблицы
Т а б л и ц а 1.8. (п р о д о л ж е н и е )
rFP
*
h
1
2
3
4
5
6
7
8
9
10
0.975 = Р =
/(f;/i,/2)dF
■L
h
1
647.8
38.51
17.44
12.22
10.01
8.813
8.073
7.571
7.209
6.937
2
799.5
39.00
16.04
10.65
8.434
7.260
6.542
6.059
5.715
5.456
3
864.2
39,17
15.44
9.979
7.764
6.599
5.890
5.416
5.078
4.826
4
899.6
39.25
15.10
9.605
7.388
6.227
5.523
5.053
4.718
4.468
5
921.8
39.30
14.88
9.364
7.146
5.988
5.285
4.817
4.484
4.236
6
937.1
39.33
14.73
9.197
6.978
5.820
5.119
4.652
4.320
4.072
7
948.2
39.36
14.62
9.074
6.853
5.695
4.995
4.529
4.197
3.950
8
956.7
39.37
14.54
8.980
6.757
5.600
4.899
4.433
4.102
3.855
9
963.3
39.39
14.47
8.905
6.681
5.523
4.823
4.357
4.026
3.779
10
968.6
39.40
14.42
8.844
6.619
5.461
4.761
4.295
3.964
3.717
9
6022.
99.39
27.35
14.66
10.16
7.976
6.719
5.911
8.751
4.942
10
6056.
99.40
27.23
14.55
10.05
7.874
6.626
3.814
5.257
4.849
f Fp
0.990 = Р =
f { F \ f u /2 )d F
■ l
h
/2
1
2
3
4
5
6
7
8
9
10
1
4052.
98.50
34.12
21.20
16.26
13.75
12.25
11.23
10.56
00.04
2
5000.
99.00
30.82
18.00
13.27
10.92
9.547
8.649
8.022
7.559
3
5403.
99.17
29.46
16.69
12.06
9.780
8.451
7.291
6.992
6.550
4
5625.
99.25
28.71
15.98
11.39
9.148
7.847
7.002
6.422
5.994
5
5764.
99.30
28.24
15.52
10.97
8.746
3.460
6.632
3.057
5.636
6
5859.
99.33
27.91
15.21
10.67
8.466
7.191
6.361
5.802
5.366
7
5928.
99.36
27.67
14.98
10.46
8.260
6.993
6.172
5.613
5,800
8
5981.
99.37
27.49
14.80
10.29
8.102
6.870
6.029
6.067
5.057
649
650
П рилож ение I.
Статистические таблицы
Т а б л и ц а 1 .9 . К вантили
tp д л я ^-распределения Стью дента.
Р=1
Ж / ) dt
-О О
/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
30
40
50
60
70
80
90
100
200
500
1000
0.9000
3.078
1.886
1.638
1.533
1.476
1.440
1.415
1.397
1.383
1.372
1.363
1.356
1.350
1.345
1.341
1.337
1.333
1.330
1.328
1.325
1.310
1.303
1.299
1.296
1.294
1.292
1.291
1.290
1.286
1.283
1.282
0.9500
6.314
2.920
2.353
2.132
2.015
1.943
1.895
1.860
1.833
1.812
1.796
1.782
1.771
1.761
1.753
1.746
1.740
1.734
1.729
1.725
1.697
1.684
1.676
1.671
1.667
1.664
1.662
1.660
1.653
1.648
1.646
0.9750
12.706
4.303
3.182
2.776
2.571
2.447
2.365
2.306
2.262
2.228
2.201
2.179
2.160
2.145
2.131
2.120
2.110
2.101
2.093
2.086
2.042
2.021
2.009
2.000
1.994
1.990
1.987
1,984
1.972
1.965
1.962
Р
0.9900
31.821
6.965
4.541
3.747
3.365
3.143
2.998
2.896
2.821
2.764
2.718
2.681
2.650
2.624
2.602
2.583
2.567
2.552
2.539
2.528
2.457
2.423
2.403
2.390
2.381
2.374
2.368
2.364
2.345
2.334
2.330
0.9950
63.657
9.925
5.841
4.604
4.032
3.707
3.499
3.355
3.250
3.169
3.106
3.055
3 012
2.977
2.947
2.921
2.898
2.878
2.861
2.845
2.750
2.704
2.678
2.660
2.648
2.639
2.632
2.626
2.601
2.586
2.581
0.9990
318.309
22.327
10.215
7.173
5.893
5.208
4.785
4.501
4.297
4.144
4.025
3.930
3.852
3.787
3.733
3.686
3.646
3.610
3.579
3.552
3.385
3.307
3.261
3.232
3.211
3.195
3.183
3.174
3.131
3.107
3.098
0.9995
636.619
31.599
12.924
8.610
6.869
5.959
5.408
5.041
4.781
4.587
4.437
4.318
4.221
4.140
4.073
4.015
3.965
3.922
3.883
3.850
3.646
3.551
3.496
3.460
3.435
3.416
3.402
3.390
3.340
3.310
3.300
Список литературы
1. А . N . K olmogorov, Ergebn. Math. 2 (1933) 3. [См. К олмогоров А. Н. О сновные
понятия теории вероятн остей . М.: Н аука, 1974.]
2. D . E . K n u t h , The Art of Computer Programming, vol. 2, A ddison-W esley, R eading
M A 1981. [Имеется перевод: К н у т Д . И скусство програм м ирования д л я ЭВМ : т.
2. М.: М ир, 1977.]
3. P . L ’E c u y e r , Comm. ACM 31 (1988) 742.
4. В . A .W jchmann and I. D . H ill . Appl Stat. 31 (1982) 188.
M uller . Ann. Math. Stat. 2 9 (1958) 611.
6. L. von B ortkiewicz . Das Gesetz der kleinen Zahlen, Teubner. Leipzig 1898.
7. D . J .D e S olla P rice , Little Science, Big Science. C olum bia U n iversity P ress, N ew
5. G . E . P . B o x and M. E.
York 1965.
8. M . G . K endall and A. Stuart , The Advanced Theory of Statistics, vol. 2, Charles
Griffin, London 1968. [И меется перевод: К ен дал л M. Д ж ., С тью арт А. С татистиче
ские выводы и связи. М.: Н аука, 1973.]
W ilks, Ann. Math. Stat., 9 (1938) 60.
10. A . H . R osenfeld ,
H. A . B arbero -G altieri,
W . J. P odolski,
L. R . P rice ,
P .S oding , Ch .G.W M hl , M .R oos, and W . J. W illis, Rev. Mod. Phys. 3 3
9. S . S .
(1967) 1.
P article Data G roup , Physics Letters B 2 0 4 (1988) 1.
12. W . H. P ress , В . P . F lannery , S. A . T eukolsky and W . T . V etterling , Numerical
Recipes, C am bridge U n iversity Press. C am bridge 1986.
13. R . P . B rent , Algorithms for Minimization without Derivatives. P rentice-H all,
11.
E nglew ood Cliffs NJ 1973.
Nelder and R . M ead , Computer Journal 7 (1965) 308.
P owell, Computer Journal 7 (1965) 155.
16. D . W . M arquardt, J. S oc. Ind . Appl. Math. 11 (1963) 431.
17. C . L anczos. SIAM J. Numerical Analysis 1 (1964) 86.
18. C . L . L awson and R. J. H anson , Solving Least Squares Problems, P rentice-H all,
14. J. A .
15. M . J. D .
E n glew ood Cliffs N J 1974. [И меется перевод: Л оусон К ,, Х ансон Р. Ч исленное ре
ш ение задач м етода наим еньш их квадратов. — М.: Н аука, 1986.]
G .H . G olub and W .K ahn, SIAM J. Numerical Analysis 2 (1965) 205,
20. P . A .B usinger and G . H . G olub , Comm. ACM 12 (1969) 564.
21. G . H. G olub and C . R einsch , in Linear Algebra (J. H. W ilkinson and C. R einsch ,
19.
ed s.), p. 134, Springer, Berlin 1971.
F rancis, Computer Journal 4 (1960) 265, 332.
F . J ames and M .R o o s , Nuclear Physics B 1 7 2 (1980) 475.
M . L . Swartz, Nuclear Instruments and Methods A 2 9 4 (1966) 278.
V .H .R egener , Physical Review 8 4 (1951) 161.
G .Z ech , Nuclear Instruments and Methods A 2 7 7 (1989) 608.
H. R utishauser, Numerische Mathematik 5 (1963) 48.
W. R omberg , Det. Kong. Norske Videnskapers Selskap Forhandlinger 2 8 (1955)
22. J. G F .
23.
24.
25.
26.
27.
28.
Nr. 7.
652
Список литературы
29. К . S. Koelbig , in GERN Computer Centre Program Library, Program D 401, C E R N ,
G eneva 1990.
Список литературы для дополнительного чтения
Н иж е приведен краткий список работ, в котором перечислены книги, которы е мо
гут служ и ть как д л я допол нительного ч тения, так и д л я справок. Б езусловно, эт от
список не полон, однако им м огут воспользоваться читатели с различны м уровнем
подготовки, так как в этом списке содерж атся книги различной степени слож ности.
Теория вероятностей
L. B reiman , Probability, A d dison-W esley, R eading M A 1968.
H. C ramer , The Elements of Probability Theory, W iley, N ew York 1955.
В. V. G nedenko . The Theory of Probability, 4th ed., Chelsea, New York 1967. [В ориги
нале. Гнеденко Б. В. К у р с теории вероятностей, и зд. 5-е. — М.: Н аука, 1969.]
K ai L ai C hung, A Course in Probability Theory, H axcourt, Brace and W orld, N ew York
1968.
K . K rickeberg , Wahrscheinlichkeitsrechnung, Teubner, S tu ttg a rt 1963.
Математическая статистика
R . B evington , Data Reduction and Error Analysis for the Physical Sciences, M cG rawHill, N ew York 1969.
В E . C ooper , Statistics for Experimentalists, Pergam on, O xford 1969.
G . C owan, Statistical Data Analysis , C larendon Press, O xford 1998.
H . C ramer . Mathematical Methods of Statistics, U n iversity Press, P rinceton 1946. [Име
ется перевод: К рам ер Г. М атем атические методы статистики. — М.: М ир, 1975.]
W . J. D ixon and F . J . M assey , Introduction to Statistical Analysis, M cG raw-H ill, N ew
York 1969.
D . D umas de R auly, LEstim ation Statistique, G authier-V illaxs, Paris 1968.
W . T . E adie , D . D rijard , F . E. J ames , M . R oos and B . S adoulet, Statistical Methods
in Experimental Physics, N orth -H ollan d , A m sterdam 1971.
W . F eller , An Introduction to Probability Theory and its Allpications, 2 V ols., W iley,
N ew York 1968. [Имеется перевод: Ф ел л ер В . В ведени е в теорию вероятностей и
ее прилож ения. — М.: М ир, 1984 (в д в у х том ах).]
M . F is z , Probability Theory and Mathematical Statistics , W iley, New York 1963.
D A . S. F raser , Statistics; An Introduction , W iley, N ew York 1958.
H . F reeman , Introduction to Statistical Inference, A ddison-W esley, R eading, M A 1963.
A. G. F rodensen and O . Skjeggestad , Probability and Statistics in Particle Physics,
U niversitetsforlaget, B ergen 1979.
P . G . H oel , Introduction to Mathematical Statistics , 4th ed., W iley, N ew York 1971.
M. G . K endall and A Stuart The Advanced Theory of Statistics, 4th ed., 3 vols.,
Charles Griffin, London 1977. [Имеется перевод: К ен дал л M. Д ж ., С тью арт А. Те
ория распределений. — М.; Н аука, 1966; С татистические выводы и связи. — М.:
Н аука, 1973; М ногомерны й статистически й анализ и временны е ряды . — М.: Н а
ука, 1976.]
L. Lyons , Statistics for Nuclear and Particle Physicists, C am bridge U n iversity Press,
C am bridge 1986.
J. Mandel , The Statistical Analysis of Experimental Data, Interscience, N ew York 1964.
S . L . M eyer , Data Analysis for Scientists and Engineers, W iley, N ew York 1975.
L. S achs, Statistische Auswertungsmethoden, 5. AufL, Springer, Berlin 1978.
E. Sverdrup , Laws and Chance Variations, 2 B d e., N orth-H olland, A m sterdam 1967.
P.
Список литературы д ля дополнительного чтения
653
B . L. VAN der Waerden , Mathematische Statistik, 3. AufL, Springer, B erlin 1971. [Име
ется перевод: В ан д ер В ар д ен Б . Л . М атем атическая Статистика. — М.: И Л , I960.]
S. S. W ilks , Mathematical Statistics , W iley, N ew York 1962. [Имеется перевод: У илкс С.
М атематическая статистика. — М.: Н аука, 1967.]
T . Yamane, Elementary Sampling Theory, P rentice-H all, E n glew ood Cliffs, N J 1967.
T . Yamane, Statistics, An Introductory Analysis , Harper and R ow , New York 1967.
Численные методы. Программы для работы над матрицами
A.
Bjork and G . Dahlquist, Numerische Methoden, R. O ldenbourg Verlag, M iinchen
1972.
R . P . B rent , Algorithms for Minimization without Derivatives, P rentice-H all, E n glew ood
Cliffs, N J 1973.
C . T .F ike , Computer Evaluation of Mathematical Functions, Prentice-H all, E nglew ood
Cliffs, N J 1968.
G . H . G olub and C. F . Van L oan, Matrix Computations, Johns H opkins U niversity Press,
B altim ore 1983. [И меется перевод: Г о л у б Д ж ., ван Л о у н Ч . М атричны е вы числе
ния. — М.: М ир, 1999.]
R. W. Hamming , Numerical Methods for Engineers and Scientists, 2nd ed., M cG raw-H ill,
N ew York 1973. [И меется перевод: Х ем м и н гР . В. Ч исленны е методы д л я научны х
работников и инж енеров. — М.: Н аука, 1968.]
D . Е. K nuth , The Art of Computer Programming, 3 vols., A ddison-W esley, R eading M A
1968. [Имеется перевод: К н у т Д . И ск усство програм м ирования д л я Э В М , т. 3 . —
М.: М ир, 1978.]
C. L. L awson and R. J. H anson , Solving Least Squares Problems, P rentice-H all,
E n glew ood Cliffs N J 1974. [И меется перевод: Л о у с о н К ., Х ансон P. Ч исленное ре
ш ение зад ач м етода наим еньш их квадратов. — М.: Н аука, 1986.]
W . H . P ress , В . Р. F lannery , S. A. T eukolsky, and W . Т . V etterling , Numerical
Recipes, C am bridge U n iversity P ress, C am bridge 1986.
J. R . R ice , Numerical Methods, Software and Analysis , M cG raw-H ill, N ew York 1983.
J. Stoer and R . B urlisch , Einfiihrung in die Numerische Mathematik, 2 B d e., Springer,
B erlin 1983.
J. H. W ilkinson and C .R einsch , Linear Algebra, Springer, Berlin 1971.
Основные формулы. Статистические таблицы
М.
Abramowitz and A . Stegun , Handbook of Mathematical Functions, D over, N ew York,
1965. [Имеется перевод: А бр ам ов и ц М ., С тиганИ . С правочник по специальны м
ф ун кциям с ф ор м улам и , граф икам и и м атем атическим и таблицами. — М.: Н аука,
1979.]
R . A . F isher and F . Yates , Statistical Tables for Biological, Agricultural and Medical
Research, Oliver and B oyd, London 1957.
U . G raf and H. J. H enning , Formeln und Tabellen zur Mathematischen Statistik ,
Springer, B erlin 1953.
A .H ald , Statistical Tables and Formulas, W iley, N ew York 1960.
G . A . K orn and T .M . K orn , Mathematical Handbook for Scientists and Engineers, 2nd
ed., M cGraw-Hill, N ew York 1968. [И меется перевод: К о р н Г., К о р н Т . С правочник
по м атематике д л я научны х работников и инж енеров. — М.: Наука, 1978.]
D . V . L indley and J. С. Р . M iller , Cambridge Elementary Statistical Tables, U n iversity
Press, C am bridge 1961.
D . B . O wen , Handbook of Statistical Tables, A ddison-W esley, R eading M A 1962. [И меется
перевод: О у эн Д . С борник стати сти ч еск и х таблиц. — М.: В Ц А Н СС С Р, 1966.]
E. S. P earson and Н . О . H artley , Biometrica Tables for Statisticians, U niversity Press,
Cam bridge 1958.
654
W.
Список литературы
W etzel , М . D. J ohnk , and P .N aeve , Statistische Tabellen, W alter de G ruyter,
Berlin 1967.
Список дополнительной литературы
1. Айвазян С. A. } Енюков И. С., МешалкинА. Д.
2.
3.
4.
5.
6.
7.
8
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
П ри к ладн ая стати сти к а.— М.: Фи
нансы и статистика, т. 1, 1983, т. 2, 1985.
АндерсонТ. В ведени е в м ногом ерны й статистический анализ. — М,: ГИ М Ф Л ,
1963.
АфифиА., ЭйзенС. С татистический анализ. П одход с использованием Э В М . —
М.: М ир, 1982.
БикелП Доксам К . М атем атическая статистика. — М.: Финансы и статистика,
1983.
Болдин И, В., Симонова Г. И.} Тюрин Ю. Н. Знаковы й статистический анализ л и
нейны х моделей. — М.: Н аука, 1977.
БолчьБ., Хуань К. Дою. М ногом ерны е статистические методы д л я эк он ом и к и .—
М.: Статистика, 1979.
Большее Л. Я , Смирнов Н. В. Таблицы м атем атической статистики. — М.: Н аука,
1968.
Боровков А. А. М атем атическая статистика: О ценка парам етров. П роверка гипо
тез. — М.: Н аука, 1984.
Бочаров П. П., Печинкин А. В. Т еория вероятностей. М атем атическая статисти
ка. — М.: Гардарика, 1998.
Гнеденко Б. В. К ур с теории вероятностей. — М.: У Р С С , 2001.
ДейперНСмитпГ. П рикладной регрессионны й анализ. К ниги 1, 2. — М.: Ф инан
сы и статистика, 1986.
Ивченко Г. И., Медведев Ю.И. М атем атическая статистика. — М.: Вы сш ая школа,
1984.
Кокс Д. у Хинкли Д. Задач и по теоретической статистике с реш ениями. — М.: М ир,
1981.
ЛеманЭ. П роверка статистич ески х гипотез. — М.: Н аука, 1979.
ЛеманЭ. Т еория точного оценивания. — М.: Н аука, 1991.
ПагуроваВ. И., Чибисов Д. М. З адач н и к по м атем атической статистике. — М.:
МГУ, 1990.
Рао С. Р. Л инейны е статистич ески е м етоды и их применение. — М.: Н аука, 1968.
Север Дж. Л инейны й регрессионны й анализ. — М.: М ир, 1980.
Севастьянов Б . А. К у р с теор и и вероятн остей и м атем атической статистики. — М.:
Наука, 1982.
Севастьянов Б. А., Чистяков В. Я ., Зубков А. М. С борник зад ач по теории веро
ятностей. — М.: Н аука, 1980.
ТьюкиДж. А н ализ результатов наблю дений. Р азведочны й анализ. — М.: М ир,
1981.
Харин Ю. С. у Степанова М. Д . П рак ти к ум н а Э В М по м атем атической статисти
к е .— Минск: У ниверситетск ое, 1987.
ХеннанЭ. М ногомерны е временны е ряды . — М.: М ир, 1974.
Холлендер М., Вульф Д. А. Н еп арам етри ческ и е м етоды статистики. — М.: Ф инан
сы и статистика, 1983.
ХьюберП. Робастность в статистике. — М.: М ир, 1984.
Чистяков В. Л. К у р с теор и и вероятностей. — М.: Агар. 2000.
Шурыгин А. М. П р и к л адн ая статистика: робастность, оценивание, прогноз. — М.:
Финансы и статистика, 2000.
Эфрон Б. Н етрадици онны е м етоды м ногом ерного статистического анализа. — М.:
Финансы и статистика, 1983.
Список примеров
2.1. Вы борочное п ростр анство д л я непреры вны х величин
......................................
15
2.2. Вы борочное пространство д л я ди ск р етн ы х величин ..........................................
15
3.1. Д и ск ретн ая случ айная в е л и ч и н а ............ , . . .............................................................
3.2. Н епреры вная случайная величина ................................................................................
3.3. Равном ерное р асп ределен и е ...............................................................................................
24
24
31
3.4. Р аспределени е К ош и ..........................................
32
3.5. Р аспределени е Л оренца, (Б рай та—В и гн ера)
...........................................................
33
3.6. П реобразование ди сп ерси й и ковариаций .................................................................
46
4.1. Экспоненциально распределенн ы е случайны е числа ....................................
73
4.2. М оделирование случайны х чисел, им ею щ их распределени е Б райта—В иг
н ера .................................................................................................................................................
73
4.3. М оделирование случайны х чисел, им ею щ их треугольное распределение
74
4.4. Равном ерное р асп ределен и е на п олук руге ...............................................................
4.5. Равном ерное расп р едел ен и е на полук руге и м етод просеивания в общ ем
75
виде .................................................................................................................................................
77
4.6. Вы числение числа тг ...............................
4.7. М оделирование ош ибок изм ерений координат точек на прямой
.................
82
84
4.8. М оделирование времени р асп ада д л я смеси д в у х различны х ради оактив
ных субстанций ........................................................................................................................
85
5.1. С татистическая ош ибка ......................................................................................
5.2. П рименение гипергеом етри ческого распределени я дл я определения объ
ем а зоологи ческих популяций ..........................................................................................
96
99
5.3. Распределени е П уассон а и радиоактивны й р асп ад независимы х д р у г от
д р уга я дер ...................................................................................................................................
102
5.4. Распределение П уассон а и независим ость научны х откры тий
102
..............
5.5. С лож ение дв у х случайны х величин, распределенн ы х по закону П уассона,
с использованием их харак тер и сти ч еск и х ф ун кций ............................................
105
5.6. Н орм альное р асп ределен и е как предельны й случай бином иального рас
пределени я .....................
112
5.7. М одель ош ибок Л ап л аса .......................
ИЗ
5.8. Свертка равном ерны х р асп ределен и й ..........................................................................
122
5.9. Свертка равном ерного и норм ального р а с п р е д е л е н и й ........................................
124
5.10. С вертка д в у х норм альны х распределени й. «К вадрати ч н ое слож ение ош и
бок» ..............................................................................................
124
5.11. Свертка экспоненциального и норм ального распределени й
.........................
124
6.1. Вы числение вы борочны х средн его и ди сп ер си и на основе имею щ ихся д а н
ны х ....................................................................................................................................................
140
6.2. Гистограммы дл я одной и той ж е вы борки с различны м и длинам и интер
валов р а з б и е н и я ........................................................................................................................
6.3. П олная ш ирота полум аксим ального уровня (П Ш П У )
..........
144
148
656
Слисок примеров
6.4. И сследование при пом ощ и м етода М онте-К арло характеристических ве
личин выборок, взяты х и з гауссовского распределени я ....................................
148
6.5. Д вум ерная ди агр ам м а рассеяния: зависим ость ди ви ден дов от цен акций
промы ш ленны х п р едп р и яти й ........ .............. .............................................................. ..
151
6 6. О птимальны й выбор объ ем а выборок д л я п одм нож еств совокупности
..
155
О пределение н и ж н ей границы д л я времени ж и зн и протона при условии,
что в качестве и схода не н аблю далось ни одного р а с п а д а ...... .........................
170
7.1. Отнош ение правдоподобий .......................................... ....................................... ..............
190
7.2. М ногократны е изм ерения с различ ной точностью
..............................................
191
N гипергеом етри ческого распределени я .................
192
6.7.
7 3. Оценивание пар ам етр а
7.4. О ценка парам етра пуассоновского р асп ределен и я
...... .......................................
197
7.5. О ценка парам етра бином иального расп ределен и я
............................. ..
198
7.6. П ример объ еди н ен и я ош ибок («К в адр ати ч еск ое усреднение отдельны х
ош ибок»)
. ..................................................................................
..................................... ....
198
7.7. О пределение средн его врем ени р асп ада я др а по наблю дениям в течение
небольш их отрезков врем ени ................................................ .............. .............................
201
Оценивание средн его и ди сп ер си и норм ального р а с п р е д е л е н и я ...........
205
7.9. О ценки парам етров двум ерн ого норм ального распределени я ........................
206
8.1. F -критерий д л я проверки гипотезы о равенстве дисперсий д в у х последо
вательностей изм ерений ............................................... ........................................................
217
8.2. К ритерий С тью дента дл я проверки гипотезы о равенстве средних зн аче
ний двух последовательностей и з м е р е н и й ........ .................... .................... ..
221
8.3. П роверка гипотезы о том , что норм альное распределени е с задан н ой д и с
персией гг2 им еет средн ее Л = Ло .............................................. .................. ..
224
8.4. Н аиболее мощ ный к ри терий д л я проверки гипотезы и з прим ера 8.3
....
228
8.5. Ф ункция м ощ ности д л я кри терия из при м ера 8 . 3 ...... .................... .................. ..
231
8.6. П роверка гипотезы о том , что вы борка и з норм ального р асп ределен и я с
неизвестной ди сп ерси ей им еет средн ее значение Л = Л о ....................................
233
8.7. К ритерий хи -к вадр ат д л я проверки согласия эм пирической плотности
распределения вероятн остей с расп ределен и ем П уассон а ................................
237
9.1. Взвеш енное средн ее результатов изм ерений с различной т о ч н о с т ь ю ........
249
9.2. А ппроксим ация различны м и полином ам и
261
7.8
...... .............................,
9.3. А ппроксим ация пропорциональной зависим остью
................................... ..
265
9.4. А ппроксим ация гауссовским расп ределен и ем ........................................................
273
9.5. А ппроксим ация экспоненциальной ф ун к ц и ей
.......................................................
275
9.6. Аппроксим ация сум м ой экспоненциальны х ф ун к ц и й ............ ...........................
277
9.7. А ппроксим ация сум м ой д в у х гауссовских ф ун кций и полиномом .......... ....
282
9.8. Влияние больш их ош ибок изм ерен и й на доверител ьн ую область д л я па
раметров при аппроксим ации данн ы х экспоненциальной ф ун к ц и ей ........
290
9.9. О граничение н а сум м у углов треугольника ....................... ................................ ....
298
9.10. П рименение м етода м н ож и тел ей Л а гр ан ж а к задач е и з при м ера 9.9
....
301
9.11. А ппроксим ация прям ой результатов изм ерений, им ею щ их ош ибку как по
оси абсцисс, так и по оси орди нат ............................. ...................... .............................
9.12. Ф иксирование отдельны х п а р а м е т р о в ................. .................... ...........................
311
312
Список примеров
9.13. К ритер ий согласия хи -к вадрат зад ан н ой прямой с результатами изм ере
ния координат точек при наличии ош ибок как по оси абсцисс, так и по
оси ординат .........................................................................
9.14. Н есим метричны е ош ибки и доверительн ая область дл я аппроксимации
прямой результатов изм ерений координат точек при наличии ош ибок как
по оси абсцисс, так и по оси о р д и н а т ............................................................................
10.1. О пределение парам етров расп ределен и я по результатам выборки м етодом
максимального п равдоподобия ........................................................................................
10.2. Оценка парам етров расп ределен и я по гистограм м е выборки м етодом м ак
симального правдоподобия .............................
10.3. О ценка парам етров р асп редел ен и я по гистограм м е выборки м етодом наи
меньш их квадратов ................................................................................................................
11.1. О дноф акторны й дисперсион ны й анали з влияния воздействия различны х
медикаментов .............
11.2. Д вухф ак тор н ы й дисперсион ны й анализ при исследовании раковы х забо
леваний .................................................................................................
12.1. Реш ение задачи из п ри м ера 9.2 с помощ ью ортогональны х полиномов ..
657
314
319
388
390
393
404
415
426
12.2. Д оверительны е границы д л я линейной р е г р е с с и и ................................................
430
13.1. Скользящ ее средн ее д л я р я д а с линейны м т р е н д о м ............................................
13.2. А нализ временного р яда дл я одного и того ж е набора результатов изм е
рений для различны х уср едн яю щ и х интервалов и полиномов различны х
порядков .......................................................................................................................................
А .1. О бращ ение матрицы р азм ер а 3 x 3 ............................................................................
А .2. Б лизкие к нулю сингулярны е значения ....................................................................
А.З. Точка пересечения д в у х почти параллельны х прямы х ....................................
А .4. П реим ущ ество точ ности м етода сингулярного разлож ен и я по сравнению
с точностью м етола норм альны х уравнений ...........................................................
438
А .5.
Реш ение задач и с ограничениям и м етодом наим еньш их квадратов .........
444
484
500
500
503
530
Список программ
4.1. П одпрограм м а RNMLCG. М ультипликативны й линейны й конгруэнтны й
датчик дл я м оделирования равном ерно распределенн ы х случайны х чи
сел
..............................................................................................................................
66
4.2. П одпрограм м а RNECUY. О бъедин ен ны й д атч и к случайны х чисел Л екю йе
с очень больш им п ер и одом .................................................................
69
4.3. П одпрограм м а RNSTNR м оделирования случайны х чисел, им ею щ их стан
дартн ое норм альное распределени е ...............................
79
4.4. П одпрограм м а RNMNPR инициализации датч ик а случайны х чисел, им ею
щ их n -мерное норм альное распределени е .............................................................
81
4.5. П одпрограм м а RWMWGN д л я м оделирования случайны х величин, имею щ их
n -мерное норм альное р асп ределен и е
.......................................................................
81
4.6. П одпрограм м а RWLINE м оделирования значений координат точек на пря
мой с ош ибками изм ерений .............................................................................................
85
4.7. П одпрограм м а RNRADI д л я моделирования времени расп ада ради оактив
ных ядер .......................................................................................................
85
6.1. П одпрограм м а SMMNVR д л я вы числения вы борочны х среднего, дисперсии
и стандартного отклонения, а так ж е их ош ибок ................................................
141
6.2. П одпрограм м а SMHSIN д л я подготовк и к построению гистограммы
145
..
6.3. П одпрограм м а SMHSFL д л я отобр аж ен и я на гистограм м е отдельного эле
мента выборки
........................................................................
6.4. П одпрограм м а SMHSGR д л я построени я гистограмм ы
......................................
146
6.5. П одпрограм м а SMSDGR д л я построени я двум ерн ой диаграм мы рассеяния
150
6.6. П одпрограм м а SMERSS вы числяет доверительны е границы дл я парам е
тра распределени я П уассона, оп ределенн ого по выборке малого объем а,
учиты ваю щ ая в озм ож н ое наличие ш ум а .............................
174
6.7. П одпрограм м а SMERQS вы числяет доверительны е границы д л я отнош е
ния количества сигнальны х собы тий к количеству элементарны х собы
тий на основании выборки м алого объ ем а с возм ож ны м наличием ш ум а
178
9.1. П одпрограм м а LSQP0L д л я аппроксимации результатов изм ерений поли
номом .........................................................................................................................................
260
9.2. П одпрограм м а LSQLIN д л я аппроксим ации неизвестны х изм еряем ы х ве
личин некоторой линейной ф ун к ц и ей .....................................................................
264
9.3. П одпрограм м а LSQN0N аппроксим ирует результаты измерений нелиней
ной ф ункцией, используя итерационны й процесс с уменьш ением длины
шага итерации ........................................................................................................................
269
9.4. Ф ункция LSQGSS вы числяет гауссовскую ф ун к ц и ю д л я трех заданны х
парам етров ..............................................................................................................................
273
9.5. Ф ункция LSQEXP вы числяет зн ачени я экспоненциальной ф ун кции при
двух заданны х п а р а м е т р а х ...............................................................................................
275
Список программ
659
9.6. Ф ункция LSQ2EX вы числяет зн ачени я суммы дв у х экспоненциальны х
ф ун кций при четы рех задан н ы х парам етрах ......................................................
277
9.7. П одпрограм м а LSQMAR д л я аппроксим ации данн ы х нелинейной ф ун кцией
с неизвестны ми п арам етрам и при помощ и м етода М аркардта .................
279
9.8. Ф ункция LSQP2G вы числяет сум м у полином а и д в у х гауссовских ф ун к
ций
...................................................................................... .......................................................
283
9.9. П одпрограм м а LSQC0N строи т сечение доверительной области плоско
стью , натянутой на оси. соответствую щ ие дв ум парам етрам , значения
которых были определены д л я нелинейного случая м етодом наименьш их
квадратов ................................................................................................................................
289
9.10. П одпрограм м а LSQASN вы числяет несим м етричны е ош ибки (или довери
тельные границы) д л я нелинейного случая м етода наименьш их квадра
тов, используя прогр ам м у LSQN0N ..............................................................................
293
9.11. П одпрограм м а LSQASM реш ает ту ж е задачу, что и модуль LSQASN, но
использует при этом програм м у LSQMAR .................................................................
296
9.12. П одпрограм м а LSQGEN реал и зует м етод наименьш их квадратов в обоб
щ енной ф орм улировке
...................................
308
9.13. Ф ункция LSQGFN вы числяет значения ф ун кции Д (аз, 7]) м етодом наим ень
ших квадратов вобобщ енной ф орм улировке ........................................................
312
9.14. П одпрограм м а LSQASG вы числяет несим м етричны е ош ибки (или довери
тельные границы) д л я м етода наим еньш их квадратов в обобщ енной ф о р
мулировке, используя програм м у LSQGEN
.......... ....................................................
314
9.15. П одпрограм м а LSQC0G строит доверител ьн ую область на плоскости, на
тянутой на оси, соответствую щ ие дв ум парам етрам , значения которых
были найдены м етодом наим еньш их квадратов в обобщ енной ф ор м ул и
ровке
.........................................................................
318
10.1. П одпрограм м а MINPRB вы числяет точку экстрем ум а параболы, п р оходя
щей через три заданны е точки ....................................................................................
339
10.2. Ф ункция MINFND вы числяет значение ф ун кции п переменны х, заданной
на прямой в n -м ерном пространстве
........................................................................
340
10.3. П одпрограм м а MINENC осущ ествл яет интервальное приближ ение к точ
ке минимума д л я ф ун к ц и и п перем енны х вдоль задан н ой прямой в пмерном пространстве .........................................................................................................
343
10.4. П одпрограм м а MINGLD н аходи т миним ум ф ун кции
п переменны х вдоль
прямой в n -мерном п ространстве м етодом золотого сечения
10.5. П одпрограм м а MINCMB н аходи т миним ум ф ун кции
.....................
347
п переменны х вдоль
прямой в n -мерном пространстве обобщ енны м м етодом Брента
...............
349
10.6. П одпрограм м а MINDIR н аходи т миним ум ф ун кции п переменны х вдоль
прямой в n -мерном пространстве ................................................................................
353
10.7. П одпрограм м а MINSIM н аходи т м иним ум ф ун кции п перем енны х при по
мощи сим плекс-м етода .................................................................
357
10.8. П одпрограм м а MINP0W находи т значение м иним ум а ф ун кции п перем ен
ных путем п оследовательной м иним изации по заданны м направлениям
м етодом П ауэлла ..................................................................................................................
365
660
Список программ
П одпрограм м а MINCJG д л я н ахож ден и я м иним ум а ф ункции п перем ен
ных путем последовательной миним изации по направлениям сопряж ен
ных градиентов
....................................................................................................................
370
10.10. П одпрограм м а MINQDR д л я н ахож ден и я м иним ум а ф ункции п перем ен
ных методом м иним изации п осредством квадратичной формы ...............
373
10.11. П одпрограм м а MINMAR д л я н ахож ден и я миним ум а ф ун кции п перем ен
ных методом М аркардта
.................................................................................................
377
10.12. П одпрограм м а MINC0V вы числяет ковариационную м атрицу или довери
тельную м атрицу дл я парам етров, полученны х в результате м иним иза
ции некоторой ф ун кции ...................................................................................................
382
10.13. П одпрограм м а MINCNT строи т доверител ьн ую область на плоскости, н а
тянутой на координатны е оси, соответствую щ ие двум парам етрам , зн а
чения которы х оценивались в п роц ессе м иним изации ....................................
383
10.14. П одпрограм м а MINASY вы числяет значения несимметричны х ош ибок
(или расстояния до доверительн ы х границ) д л я парам етров, которые
оценивались в процессе миним изации .......................................................................
385
10.15. Ф ункция MINGLS вы числяет значения логариф м ической ф ун кции прав
доподобия со знаком м инус д л я вы борки из норм ально распределенной
совокупности ..........................................................................................................................
388
10.16. Ф ункция MINGLP вы числяет зн ачени я ф ун кции правдоподобия с проти
воположны м знаком д л я гистограм м ы в предп олож ении о том , что вы
борка, по которой бы ла п остроен а гистограм м а, получена из нормально
распределенной совокупности. П редполагается, что число элем ентов, п о
павш их в различны е интервалы разбиения на гистограмм е, подчинено
пуассоновскому р асп р едел ен и ю .......................................................................................
391
10.9.
10.17. Ф ункция MINGSQ вы числяет взвеш енную сум м у квадратов, являю щ ую ся
м ерой отклонения построен н ой гистограм м ы от предполагаем ой п л от
ности распределени я (в дан н ом случ ае это норм альное распределени е).
Р аспределени е количества элем ентов выборки, попавш их в соответству
ющ ие интервалы разбиения на гистограм м е, аппроксимируется гауссов
ским расп р едел ен и ем .............................................................................................................
394
11.1. П одпрограм м а AVTBLE осущ ествл яет двухф ак тор н ы й дисперсионны й
анализ и в качестве результата вы дает элем енты A N O VA-таблицы ___
412
11.2. П одпрограм м а AV0UTP распечаты вает результаты , выданные програм м ой
AVTBLE в виде A N O VA-таблицы
..................................................................................
414
12.1. П одпрограм м а REGP0L осущ ествл яет п остроени е полиномиальной регрес
сии, где в качестве полиномов вы ступаю т ортогональны е многочлены
424
12.2. П одпрограм м а REGC0N вы числяет координаты точек, леж ащ их н а кривой
регрессии, и расстояние от них до доверительны х границ
13.1.
.........................
429
П одпрограм м а TIMSER осущ ествл яет анализ временны х р я д о в ..................
442
А .1. П одпрограм м а MTXTRA копирует м атрицу разм ера
А .2. П одпрограм м а MTXWRT п ер едает м атрицу
стандартное устрой ство вы вода
А
т
разм ера
х
п
т
х
.............................
п
построчно на
..................................................................................
А.З. П одпрограм м а MTXADD склады вает дв е матрицы разм ера
А .4. П одпрограм м а MTXSUB вы числяет разность м атриц
Ли В
456
т
х
п
разм ера
456
.............
456
т
457
х
п
Список программ 661
А .5. П одпрограм м а MTXMLT вы числяет п рои зведен и е матрицы А разм ера т х £
на м атрицу В р азм ер а £ х п ...........................................................................................
457
А .6. П одпрограм м а МТХМВТ вы числяет п р ои зведен и е матрицы А разм ера т х £
и транспонированной матрицы В р азм ер а п х £ ..............................................
458
А .7. П одпрограм м а МТХМАТ вы числяет п рои зведен и е транспонированной ма
трицы А разм ера 1 х т н а м атрицу В р азм ер а £ х п..........................................
458
n х п ........
А .9. П одпрограм м а MTXZER со зд а ет нулевую м атрицу р азм ер а т х п .............
АЛО. П одпрограм м а MTXMSC ум н ож ает м атрицу А р азм ер а т х п н а скалярны й
А .8. П одпрограм м а MTXUNT с о зд а ет еди н и чн ую м атрицу р азм ер а
м нож итель
...............................................................................................................................
А. 11. П одпрограм м а MTXTRP осущ ествл яет транспонирование матрицы
мера
т х п
459
459
460
А р а з
........................................................................................
460
А Л 2. П одпрограм м а MTXGSM вы деляет подм атри ц у 5 р азм ер а к х £ и з матрицы
А разм ера m x n ..................................................................................................................
460
АЛ З. П одпрограм м а MTXPSM зам ен яет подм атриц у разм ера к х £ в м атрице А
разм ера т х п н а подм атриц у 5 такого ж е разм ера
......................................
461
А Л 4. П одпрограм м а MTXGCL вы деляет г-й вектор-столбец с и з матрицы
м ера
т хп
А р аз
...............................................................................................................................
461
А Л 5. П одпрограм м а MTXPCL зам ен яет г-й столбец матрицы А разм ера т х п
на вектор-столбец с
............................................................................................................
462
А Л 6. П одпрограм м а MTXGRW вы деляет г-ю стр ок у г из матрицы А разм ера т х
п ....................................................................................................................................................
462
АЛ 7. П одпрограм м а MTXPRW зам ен я ет г-ю строк у матрицы
вектор-строку г ...........................
А Л 8.
А Л 9.
А разм ера т х п на
462
П одпрограм м а MTXCPV копирует n -м ерны й вектор .....................
П одпрограм м а MTXADV склады вает дв а n -м ерны х вектора ..........................
А .20. П одпрограм м а MTXSBV вы числяет разность д в у х n -м ерны х векторов
и
463
463
v и
...................................................................................................................................................
463
А .21. П одпрограм м а MTXD0T вы числяет скалярное произведение д в у х пмерны х векторов ..................................................................................................................
464
А .22.
П одпрограм м а MTXNRV вы числяет евклидову норм у
п-мерного
вектора
464
А ,23. П одпрограм м а MTXMSV ум н ож ает п-мерны й вектор на скалярны й м н ож и
тель
.............................................................................................................................................
465
А .24.
465
П одпрограм м а MTXZRV с о зд а ет п-м ерны й нулевой вектор
А .25. П одпрограм м а MTXGSV в ы деля ет т -м е р н ы й подвектор
..........................
v из п-м ерного
и ....................................................
А .26. П одпрограм м а MTXPSV зам ен я ет т элем ентов n -м ерного вектора и на
элем енты m -м ерного в ек тора v ....................................................................................
465
А .27.
.........
468
А .28. П одпрограм м а MTXGVA оп р едел я ет парам етры преобразования Гивенса, а
затем осущ ествляет преобразование того вектора, с помощ ью которого
оно было задан о ....................................................................................................................
469
А .29. П одпрограм м а MTXGVT при м еняет преобразование Гивенса к дв ум компо
нентам произвольного вектора ....................................................................................
469
А .30. П одпрограм м а MTXHSD оп р едел я ет парам етры преобразования Хаусхолд ер а .............................................................................................................................................
472
вектора
П одпрограм м а MTXGVD оп р едел я ет парам етры вращ ения Гивенса
466
662
Список программ
А .31. П одпрограм м а MTXHST осущ ествл яет преобразование Х аусхолдер а д л я за
данного вектора ....................................................................................................................
473
А .32. П одпрограм м а MTXEQU д л я реш ения полностью определенного м атрич но
го уравнения А Х = В м етодом исклю чения Гаусса с выбором главного
элемента .....................................................................................................................................
486
А.ЗЗ. П одпрограм м а MTXCHL осущ ествл яет построени е разлож ен и я Х оледкого
д л я симм етричной п ол ож и тел ь н о оп ределенн ой квадратной матрицы
490
А .34. П одпрограм м а МТХСНМ вы полняет ум н ож ен и е верхнетреугольной м атри
цы
U разм ера т х т на произвольную м атрицу А р азм ера т х п ........
491
А.35. П одпрограм м а MTXCHI осущ ествл яет обращ ение полож ительно оп р еде
А м етодом р азл ож ен и я Х олецкого ........................................
493
А .36. П одпрограм м а MTXSVD осущ ествл яет построени е сингулярного р азл ож е
ния и анализ матрицы А р азм ер а т х п ...............................................................
505
А .37. П одпрограм м а MTXDEC осущ ествл яет построение сингулярного разлож егп
ния A — U S V матрицы А р азм ер а т х п, а такж е вы дает матрицы U,
5 , V и псевдообратн ую м атрицу X .................................................. 4 ......................
506
А .38. П одпрограм м а MTXSV1 осущ ествляет приведение матрицы А разм ера
т х п к д в ухди агон ал ь н ом у виду, т. е, построени е р азл ож ен и я вида
А = Q C Я т , где С — дв ухди агон ал ь н ая м атрица ............................................
509
А .39. П одпрограм м а MTXSV2 с помощ ью итерационного м етода приводит д в у х
диагональную м атрицу С к диагонал ьн ом у виду, в результате строится
диагональная м атр ица S * = U,TC V / .................................................................
515
А .40. П одпрограм м а MTXSV3 осущ ествл яет сортировку диагональны х элем ен
тов матрицы S f п утем перестановок, в результате строится м атрица
S" = U,,TS 'V", диагональны е элем енты которой сл едую т в порядке убы
вания .............................................................................................................................. ............
519
А .41. П одпрограм м а MTXSV4 осущ ествл яет анализ сингулярны х значений
...
521
А .42. П одпрограм м а MTXMAR находи т векторы х \ и ж г , являю щ иеся реш ением
задачи А х « b ........................................................................................................................
526
А .43. П одпрограм м а MTXLSC реш ает за д а ч у (А х —Ь) 2 = m in с линейны ми огра
ничениями E x = d м етодом наим еньш их квадратов ......................................
531
С.1. Ф ункция SDBINM вы числяет вероятность д л я бином иального расп р едел е
ния ...............................................................................................................................................
541
С .2. Ф ункция SCBINM вы числяет значение ф ун кции распределени я д л я бино
миального р асп редел ен и я ..............................................................................................
542
С.З. Ф ункция SDHYPG вы числяет вероятность д л я гипергеом етрического рас
пределени я ..............................................................................................................................
543
ленной матрицы
С .4. Ф ункция SCHYPG вы числяет зн ачени е ф ун кции распределени я д л я гипер
геом етрического расп р едел ен и я
..................................................................................
С .5. Ф ункция SDP0IS вы числяет вероятность д л я расп ределен и я П уассона
543
.
544
С .6. Ф ункция SCP0IS вы числяет значение ф ун к ц и и распределени я д л я рас
пределения П уассона .........................................................................................................
544
С .7. Ф ункция SQPQIS вы числяет зн ачени е квантили д л я распределени я П уас
сона .............................................................................................................................................
545
С .8. Ф ункция SDSTNR вы числяет значение п лотности распределени я вероят
ностей для стан дар тн ого норм ального расп ределен и я
..................................
546
Список программ 663
C . 9. Ф ункция SDNORM вы числяет значение плотности распределения д л я нор
мального распределени я
......................................
547
С. 10. Ф ункция SCSTNR вы числяет значение ф ун кции распределени я д л я стан
дартного норм ального расп ределен и я .......................
548
С .11. Ф ункция SCN0RM вы числяет значение ф ун кции распределени я д л я н ор
мального распределени я
.................................................................................................
548
С .12. Ф ункция SQSTNR вы числяет значение квантили стандартного норм ально
го распределени я ..................................................................................................................
549
С. 13. Ф ункция SQN0RM вы числяет значение квантили норм ального р асп р едел е
ния ............................................................................................
550
С. 14. Ф ункция SDCHI2 вы числяет значение плотности хи -к вадрат р асп р едел е
ния ...............................
550
С.15. Ф ункция
квадрат
С. 16.
SCCHI2
вы числяет
значение
ф ун кции
распределени я
хи-
.......................................................................................................................................
Ф ункция SQCHI2 вы числяет значение квантили хи -к вадрат р асп р едел е
ния
С. 17.
551
Ф ункция SDFTST вы числяет значение д л я плотности F -распределения
С.18. Ф ункция
SCFTST
F -распределения
С. 19.
вы числяет
значение
для
551
552
ф ун кции
..................................................................................................................
Ф ункция SQFTST вы числяет значение д л я квантили F -распределения
553
554
С .20. Ф ункция SDSTUD вы числяет значение плотности ^-распределения Стьюден та ...........................................................................................................................................
555
С .21. Ф ункция SCSTUD вы числяет значение ф ун кции распределения д л я tраспределения С тью дента ...............................................................................................
555
С .22. Ф ункция SQSTUD вы числяет значение дл я квантили ^-распределения
С тью дента .................................................................................................................................
556
D . I.
D.2.
Ф ункция GGAMMA вы числяет значения гам м а-ф ункции Э йлера
.............
560
Ф ункция GLNGAM вы числяет значение натурального логариф м а гаммаф ун кции Э йлера
..................................................................................................................
561
D .3.
Ф ункция GBINC0 вы числяет значения бином иальны х коэф ф и циентов
.
563
D .4.
Ф ункция GBETAFвы числяет значения бета-ф ункц ии
.......................................
564
D .5.
Ф ункция GINCGMвы числяет значение неполной гам м а-ф ункции
..............
567
..................
569
D . 6. Ф ункция GINCBTвы числяет значение неполной бета-ф ункции
E.
1. П одпрограм м а AUXDER м етодом численного ди ф ф ерен ц и рован и я н аходи т
значение производной ф ун к ц и и f ( x) вточке х ....................................................
574
Е.2. П одпрограм м а AUXDRI вы числяет м атрицу производны х А , которая за
тем используется д л я построени я оценок м етодом наименьш их квадратов
(косвенные изм ерения, нелинейны й случай)
.........................................................
577
Е.З. П одпрограм м а AUXDRG находи т м атрицу производны х Е, которая затем
используется в вы числениях с помощ ью м етода наим еньш их квадратов
в обобщ енной ф орм улировке ........................................................................................
577
Е.4. П одпрограм м а AUXGRD вы числяет вектор гради ен та дл я ф ун кции п пере
менны х .......................................................................................................................................
577
Е.5. П одпрограм м а AUXHES вы числяет м атрицу Гессе вторы х производны х
д л я ф ун кции п перем енны х ..........................................................................................
578
664
Список программ
Е.6. П одпрограм м а AUXZBR строи т интервальное приближ ение д л я нуля
ф ункции f ( x ) ..............................................................................................................................
580
E . 7. П одпрограм м а AUXZFN оп р едел я ет нуль ф ун кции f (x) путем последова
тельного ум еньш ения исходного интервала ......................................................... 581
F . I. П одпрограм м а GR0PEN откры вает д о с т у п к граф и ческ ом у пакету GRPACK
584
F.2. П одпрограм м а GRCLSE осущ ествл яет заверш ение сеанса работы в гр аф и
ческом пакете GRPACK .........................................................................................................
584
F .3. П одпрограм м а GR0PWS акти визи рует гр аф и ч еск ую рабочую станцию
..
584
.........................
584
F.5. П одпрограм м а GRWNCC за д а ет гр аф и ч еск ое окно в стандартной систем е
координат .................................................................................................................................
587
F .6. П одпрограм м а GRVWWC за д а ет окно просм отра в относительной систем е
координат .................................................................................................................................
588
F.7. П одпрограм м а GRSTFR устанавливает ф ор м ат рисунка дл я данн ой рабо
чей станции
............................................................................................................................
588
F.8. П одпрограм м а GRWNWC устанавливает граф и ческ ое окно в относительной
систем е координат ..............................................................................................
589
F.9. П одпрограм м а GRSTCL устанавливает индекс цвета
F.4. П одпрограм м а GRCLWS заверш ает работу рабочей станции
..........................................
590
F .10. П одпрограм м а GRPLIN строи т лом ан ую к ри вую .....................................................
591
F.11. П одпрограм м а GRBRPL строи т лом ан ую кривую задан н ого типа
.............
591
.................................
591
F.13. П одпрограм м а GRDATP сл у ж и т д л я представления данн ы х и и х ош ибок на
граф и ке в ви де точек с отрезкам и ош ибок или в виде точек с эллипсами
равны х вероятностей .........................................................................................................
592
F.14. П одпрограм м а GRHSDR осущ ествл яет построени е гистограмм ы
.................
593
F.15. П одпрограм м а GRPLCT в ви де лом аной на плоскости (сс, у) строит к онтур
ную линию f ( x , у) ~ с д л я ф ун кции /
...................................................................
594
F.16. П одпрограм м а GRPXCT стр ои т аппроксимацию прямой д л я контурной ли
нии f ( x, y) = с в п р ед ел ах прямоугольника, составляю щ его разбиение
исходного прям оугольника н а плоскости (х , у) ..................................................
594
F.17. П одпрограм м а GRFRAM стр ои т рам ку вокруг граф ического окна в отно
сительной систем е координат ......................................................................................
595
F.18. П одпрограм м а GRB0UN стр ои т рам ку вокруг граф ического окна в стан
дартной систем е координат
..........................................................................................
595
F .19. П одпрограм м а GRSCLX ри сует координатн ую ось
х ..............................................
595
F.20. П одпрограм м а GRSCLY р и сует координатн ую ось
у
.............................................
596
F.21. П одпрограм м а GRSCDF оп р едел я ет парам етры координатны х осей .............
596
F.22. П одпрограм м а GRCCRS р и сует координатны е оси в стандартной систем е
координат .................................................................................................................................
596
F.23. П одпрограм м а GRTXTC добав л я ет текст к гр аф и к у ............................................
600
F.24. П одпрограм м а GRTXTF вставляет текст в определенн ом месте на граф и к е
600
F.25. П одпрограм м а GRHSCV д л я построени я гистограм м ы и произвольной ло
маной ...........................................................................................................................................
601
F.26. П одпрограм м а GRDTCV д л я построени я диаграм м ы рассеяния и п р ои з
вольной лом аной ....................................................................................................................
601
F.12. П одпрограм м а GRMARK н аносит на граф и к полимаркер
Список программ 665
F.27. П одпрограм м а GRDTMC д л я построени я диаграм м ы рассеяния и несколь
ких произвольны х лом ан ы х .............................................................................................
602
F.28. П одпрограм м а GRNBWS вы водит на эк ран ном ера рабочих станций ..........
G. I. П одпрограм м а WNINIT осущ ествляет инициализацию головной програм
мы в ср еде W IN D O W S .......................................................................................................
G.2. П одпрограм м а WNRGPR вы зы вает п р и к л адн ую програм м у
......................
617
617
G-3. П одпрограм м а WNRUNP осущ ествляет зап уск вызванной прикладной п ро
граммы ...................................................................
617
G .4. П одпрограм м а WNRDST считы вает сим ольную строк у и з командной стр о
ки головного окна ..................................................................................................................
618
G .5. П одпрограм м а WNWRST вы водит сим вольную стр ок у на эк ране в головном
окне ...............................................................................................................................................
619
605
Указатель компьютерных программ
A U X D E R , 574
E 2 S M , 181
Е 8 М Т Х , 536
A U X D R G , 577
E 2 T E S T , 241
Е 9 М Т Х , 537
A U X D R I, 324, 577
A U X G R D , 577
E 2 T IM , 446
A U X H E S , 578
E 3 G A M , 572
A U X Z B R , 580
E 3 G R , 607
A U X Z F N , 583
E 3 L S Q , 321
A V 0 U T P , 416, 417
A V T B L E , 412, 416
ЕЗМ 1 N, 397
Е З М Т Х , 534
Е 1 0 М Т Х , 538
E 1 A V , 416
E 1 D S , 126
E 1G A M , 572
E 1 G R , 588
E 1 L S Q , 319
E 3 D S , 127
E 3 R E G , 431
E 3 R N , 86
E 3 S M , 181
E 3 T E S T , 241
E 4 G R , 607
E 4 L S Q , 322
G B E T A F , 564, 572
G B I N C 0 , 563, 572
GGAMMA, 560, 572
G IN C B T , 569, 572
G I NCGM, 567, 572
G LN G A M , 561, 572
G R B 0 U N , 595, 606
G R B R P L , 591, 606
G R C C R S , 596, 608
G R C L S E , 584, 606
G R C LW S, 584, 606
G R D A T P , 592, 607
E 4 M IN , 398
G R D T C V , 601, 609
E 1 M IN , 385
Е 4 М Т Х , 535
E 4 R E G , 432
G R D TM C , 602, 611
E 1 M L , 207
Е 1 М Т Х , 533
E 1 R E G , 431
E 1 R N , 86
E 4 R N , 87
G R H S C V , 601, 609
E 4 S M , 182
G R H S D R , 593
E 1 S D , 557
E 5 G R , 608
G R M AR K, 591, 607
E 1 S M , 181
E 1 T E S T , 240
E 5 L S Q , 322
GRNBW S, 605
Е 5 М Т Х , 535
G R 0 P E N , 584, 606
E 1 T IM , 446
E 5 R N , 88
G R 0P W S , 584, 606
E 2 A V , 417
E 5 S M , 183
G R P L C T , 594, 607
E 2 D S , 126
E 6 G R , 609
G R P L I N, 591, 606
E 2G A M , 572
E 6 L S Q , 323
G R P X C T , 594
E 2 G R , 607
Е 6 М Т Х , 535
G R S C D F , 596, 608
E 2 L S Q , 321
E 6 S M , 183
G R S C L X , 595, 606
Е2М 1 N, 397
E 2 M L , 208
Е 2 М Т Х . 534
E 7 G R , 609
G R S C L Y , 596, 606
E 7 L S Q . 323
G R S T C L , 590, 606
Е 7 М Т Х , 536
G R S tF R , 598, 606
E 2 R E G , 431
E 7 S M , 183
G R T X T C , 600, 606
E 2 R N , 86
E 8 G R , 611
G R T X T F , 600, 608
E 2 S D , 557
E 8 L S Q , 324
GRVWWC, 588, 606
G R FR A M , 595, 606
Указатель компьютерных гр:грддем
GRWNCC, 587, 606
GRWNWC, 589, 606
L S Q 2 E X , 277
L S Q A S G , 315, 324
LS Q A S M , 296
L S Q A S N , 293, 322
LS Q C O G , 318, 324
LS Q C O N , 289, 323
L S Q E X P , 275
LS Q G E N , 308, 323
L S Q G F N , 312
L S Q G S S , 273
L S Q L ! N, 264, 321
LS Q M A R , 279, 322
LS Q N O N , 269, 327
L S Q P 2 G , 283
L S Q P O L , 260, 319
69, 86
84, 85
M T X D O T , 467, 533
RNECUY,
R N L IN E ,
M T X E Q U , 485, 535
R N M LC G , 66, 86
M T X G C L , 461, 534
RNM NGN, 81, 88
M TXGRW , 462, 534
RNM NPR, 81, 88
M TX G S M , 461. 534
R N R A D I, 85
M T X G S V , 466, 534
R N S T N R , 79, 86
M T X G V A , 469, 534
R N T R IR , 89
M T X G V D , 468, 534
R N T R IT , 88
M T X D E C , 507, 536
M T X G V T , 470, 534
M T X H S D , 473, 535
M T X H S T , 474, 535
M T X L S C , 531, 538
M T X M A R , 527, 537
M T X M A T , 458, 533
M T X M B T , 458, 533
M T X M L T , 457, 533
M T X M S C , 460, 533
S C B I NM, 542, 557
S C C H I2 , 551, 557
S C F T S T , 533, 557
S C H Y P G , 543, 557
SCNO RM , 548, 557
S C P O IS , 544, 557
S C S T N R , 548, 557
S C S T U D , 555
S D B IN M , 541, 557
M I N A S Y , 385, 397
M T X M S V , 465. 533
M IN C J G , 370, 395
M I NCMB, 349
M T X N R V , 465
M T X P C L , 462. 534
M I N C N T , 383, 397
M I NCO V, 382, 397
M TXPR W , 463, 534
M IN D IR , 353
M T X P S V , 466. 534
M l N E N C , 343
M T X S B V , 464, 533
M l N FN D , 340
M T X S U B . 457. 533
M l N G LD , 347
M T X S V 1 , 510
M I N G LP , 391, 398
M T X S V 2 , 516
S M E R S S , 173, 182
M I N G LS , 388
M IN G S Q , 394, 398
M T X S V 3 , 520
S M H S F L , 145, 181
M T X S V 4 , 521
SM H SG R , 146, 181
M IN M A R , 377, 395
M T X S V D , 506, 536
S M H S IN , 145, 181
M IN P O W , 365. 395
M T X T R A , 456, 533
SM M NVR , 141, 181
M T X T R P , 460, 533
SM SD G R , 150, 181
M T X U N T , 459, 533
S Q C H I2 , 551, 557
M TX W R T, 456, 533
S Q F T S T , 554, 557
M T X Z E R , 459, 533
SQ NORM , 550, 557
M T X Z R V , 465, 533
S Q P O IS , 545, 557
M IN P R B , 339
M I NQDR, 373, 395
M I NS IM , 357, 395
M T X A D D , 456, 533
M T X A D V , 463, 533
M T X P S M , 461, 534
M TX C H 1, 493, 535
S D C H I2 , 550. 557
S D F T S T , 552, 557
S D H Y P G . 543, 557
SD NO RM , 547, 557
S D P O IS , 547, 557
S D S T N R , 546, 557
S D S T U D , 555, 557
S M E R Q S , 178, 183
S Q S T N R , 549, 557
M T X C H L , 490, 535
M TXC H M , 497, 535
REG C O N , 419, 433
R E G P O L , 424, 431
S Q S T U D , 556
M T X C P V , 463, 533
RNBW, 88
T IM S E R , 442, 446
Vfe
Предметный указатель
A N O V A (A N O V A ) 401
таблица (table) 403
А лгебраическое дополнение (cofactor)
476
А постериорная вероятность (aposteriori
probability) 189
А сим м етрия (skew ness) 28, 626
Б а зи с (basis) 453
Б ай т (b yte) 56
Б ета-ф унк ция (b eta fu n ction ) 564,
572
неполная (incom plete) 569, 572
Библиотека
анализа данн ы х (d a ta analysis library)
620, 622
граф ическая (graphics library)
621
Б ином Н ью тона (binom ial theorem )
540
Биномиальны й к оэф ф и ц и ен т (bin om ial
coefficient) 539, 563, 572
Б ит (bit) 56
В ек тор н ое пространство (vector space)
452
базис (basis) 453
зам кнутое (closed) 452
подпространство (su bspace) 453
разм ерность (dim ension) 453
Векторы (vectors) 450
абсолю тное значение (ab solu te value)
452
единичны е (unit) 452
компоненты (com ponents) 450
линейно
зависимы е (linearly dep en d en t)
453
независимы е (linearly ind ep en d en t)
452
норм а (norm ) 452
нулевые (null) 451
ортонормированны е (orthonorm al)
455
В ероятность (probability)
апостериорная (aposteriori
probability) 189
полная (to ta l probability) 19
принятия гипотезы (acceptance
probability) 224
условная (con ditional) 18
ч астотное определение (frequency
definition) 16
В заим одействи е (interaction) 411
В рем енны е ряды (tim e series) 435
анали з (analysis) 435, 637
экстраполяция (extrapolation)
447
точки разры ва (discontin uities)
447
Вы борка (sam ple) 96, 135, 630
вы борочная дисперсия (sam ple
variance) 139, 181, 184
вы борочное пространство (space)
15
вы борочное среднее (sam ple m ean)
136, 137, 181, 184
граф и ческое представление (graphical
representation) 142
из
двум ерн ого норм ального
распределени я (from a bivariate
norm al distribution) 208
гауссовского распределени я (from а
G aussian distribution) 159
конечной совокупности (from а
finite p opu lation ) 156
непреры вной совокупности (from а
continuous p opu lation ) 137
подм нож ества совокупности (from
a sub p op u lation ) 153
составной совокупности (from а
p artition ed p opu lation ) 185
инф орм ационное количество
(inform ation) 195
малого объем а (sm all) 165
с ш умом (w ith background) 171
объ ем (size of a sam ple) 135
случайная (random ) 136
Предметный указатель 669
стандартное уклонение вы борочной
дисперсии (error of th e variance)
139
Г ам м а-ф ункци я (gam m a function) 559,
572
неполная (incom plete) 566, 572
Гаусса м етод исклю чения (G aussian
elim ination) 483
с выбором главного элем ента (w ith
pivoting) 486
Г ипотеза (hypothesis) 213, 222
альтернативная (altern ative) 222,
632
нулевая (null) 222, 632
проверка гипотезы (test, of h yp oth esis)
632
простая (sim ple) 222, 632
слож ная (com posite) 222, 632
Гистограм м а (histogram ) 143, 181,
185
дли н а интервала разбиения (bin
w idth) 144
граф и ческое представление лом аной
(graphical representation w ith
polyline) 601
Главный элем ент (pivot) 486
Граница минимальной ди сп ерси и
(m inim um variance bound)
196
Д а т ч и к случайны х чисел (random
num ber generator) 58
линейны й конгруэнтны й (Л К Д )
(linear congruential ( LCG) )
58
мультипликативный линейны й
конгруэнтны й (М Л К Д )
(m ultiplicative linear congruential
(M L C G )) 59
Д ец и ль (decile) 30
Д и аграм м а рассеяния (scatter diagram )
181
двум ерн ая (tw o-dim ensional) 149
одном ерная (one-dim en sional) 142
Д исперсионны й анализ (an alysis of
variance) 401, 635
двухф акторн ы й (tw o-w ay) 406
группируем ая классиф икаци я
(w ith n ested classification) 408,
410
классиф икация с пересекаю щ имися
ф ак торам и (w ith crossed
classification) 407
м одель (m odel) 406
одноф акторн ы й (one-w ay) 401
таблица (table) 404
Д и сп ерси я (variance) 35, 40, 625,
627
вы борочная (sam ple variance) 138,
181, 184
оценки (of an estim ator) 210
случайной величины (of a random
variable) 27
Д оверительны е
границы (confidence lim its) 382, 385,
432
интервал (confidence interval) 427,
440
область (confidence region) 205, 289,
314, 323, 324, 328, 383
уровень (confidence level) 163, 632
Д оск а Гальтона (G alton ’s board)
127
З ак он больш их чисел (law of large
num bers) 96, 628
И гральны е кости (dice) 20
И зм ерения
косвенные (indirect
m easurem ents)
линейны й случай (linear case)
252
нелинейны й случай (nonlinear case)
266
прямы е (direct m easurem ents)
с различной точностью (of different
accuracy) 248
с одинаковой точностью (of equal
accuracy) 247
с ограничениям и (constrained
m easurem ents) 297, 312
И нтервальное приближ ение к точке
миним ум а (bracketing the
m inim um ) 342
И нф орм ационное количество
(inform ation) 195, 210
вы борки (of a sam ple) 631
инф орм ационное неравенство
(inequ ality) 193, 196, 631
К в ан ти л ь (quantile) 30, 626
^ -р а сп р ед ел ен и я Ф иш ера
(^ -d istrib u tio n ) 647
^-распределения С тью дента
(S tu d e n t’s distribution) 649
670
Предметный указатель
нормального расп ределен и я (norm al
distribution) 643, 644
распределения П уассон а (P oisson
distribution) 638
хи-квадрат распределения
(^ -D is tr ib u tio n ) 646
К вартиль (quartile) 30
К лассиф икация (classification ) 401,
635
группируем ая (n ested ) 408, 410
дв ухф ак тор н ая (tw o-w ay) 407
одноф акторная (one-w ay) 406
с пересекаю щ имися ф ак торам и
(crossed) 407
Ковариация (covariance) 37, 40, 627
К овариационная м атр ица (covariance
m atrix) 381, 627
взвеш енная (w eigh ted) 523
К ом бинаторика (com binatorics) 539
К онтролируем ая перем енная (controlled
variable) 256
К онтур ная линия (contour lines) 593
К оординаты
маш инные (device coordin ates)
585
относительны е (world coordin ates)
584
стандартны е (com p u tin g coordin ates)
585
К оэф ф и ц и ен т корреляции (correlation
coefficient) 37, 627
выборочны й (of a sam p le) 209
К ритер ий (test) 213, 632, 634
F - критерий (F -te s t) 214, 240, 243
двусторонний (tw o-sided) 214
дл я таблицы соп ряж ен н ости 2 x 2
( 2 x 2 table) 240
наиболее мощный (m ost pow erful)
224, 632
несмещ енный (unbiased) 224, 633
одностороний (on e-sided te st) 214
отнош ения правдоподобия
(likelihood-ratio te s t) 230, 633
равном ерно наиболее мощный
(uniform ly m ost pow erful) 224,
633
статистический (sta tistica l te st)
213
С тью дента (S tu d e n t’s test) 218, 241,
243
С тью дента равенства ср едн и х
(S tu d en t’s difference te s t) 221
хи -к вадр ат ( у 2-T est) 234, 242, 243,
633
К ритическая область (critical region)
214, 223, 632
К ронекера символ (Kronecker sym b ol)
158
Л агранж а
ф ун к ц и я (Lagrange fu n ction) 300
м нож и тели (Lagrange m ultipliers) 155,
299
Л ап ласа м одель ош ибок (Laplace error
m odel) 113
Л ем м а Н ейм ана—П ирсона
(N eym an —Pearson lem m a) 227,
633
Л инейная оболочка (span) 453
LR -р азл ож ен и е (L R -decom p osition)
487
М ар к ар д та м етод м инимизации
(M arquardt m inim ization)
372
М атем атическое ож и дан и е (ex p ecta tio n
value) 26, 39, 626
М атрица (m atrix) 450
весовых коэф ф ициентов (w eight
m atrix) 253
взвеш енны х ковариаций (w eighted
covariance m atrix) 523
вы рож ден ная (singular m atrix) 454,
477
Гессе (H essian m atrix) 336
главная диагональ (m ain diagonal)
451
дв ухди агон альн ая (bidiagonal m atrix)
452
диагональная (diagonal m atrix)
451
единичная (unit m atrix) 451
ковариационная (covariance m atrix)
381, 627
кососим м етричная (an tisym m etric
m atrix) 451
матричны е уравнения (m atrix
equations) 477. 535
норм а (norm ) 452
нулевая (null m atrix) 451
обратная (inverse m atrix) 481
ортогональная (orthogonal m atrix)
467
присоединенная (adjoint m atrix) 477,
482
Предметный указатель 671
псевдообратная (pseudo-inverse
m atrix) 495
ранг (rank) 454
сим м етричная (sym m etric m atrix)
451
треугольная (triangular m atrix)
‘ 452
трехди агон альная (tridiagonal m atrix)
452
М едиана (m edian) 30, 627
М иним изация (m in im ization) 332
анализ ош ибок (errors in) 381
интервальное приближ ение к точке
минимума (bracketing th e
m inim um ) 342
квадратичная интерполяция
(quadratic in terpolation) 349
квадратичной ф орм ы (w ith th e
quadratic form ) 372
м етод Брента (B rent m eth od ) 349
м етод золотого сечения (golden
section) 345
м етод М аркардта (M arquardt
procedure) 375
м етод П ауэлла (Pow ell m eth od )
364
по заданны м направлениям (along
chosen directions) 364
по направлению (along a direction)
353
по направлению наискорейш его
спуска (in th e direction o f steep est
descent) 336, 367
по направлениям координатны х осей
(along the coordin ate directions)
362
сим плекс-м етод (sim plex m eth od )
355
М ода (m ode) 29, 626
М оменты (m om ents) 27, 36, 40, 625,
627
относительно ср едн его (ab ou t th e
m ean) 27
М онте-К арло (M onte Carlo)
м етод (m ethod) 55
интегрирования (of integration)
82
минимизации (m in im ization )
398
м оделирования (for sim ulation)
83
Н аим еньш их квадратов м етод (least
squares) 247, 477, 633
взвеш енный (w ith w eights) 523
изм ерения с ограничениям и
(constrained m easurem ents) 296,
635
косвенные изм ерения (indirect
m easurem ents) 252, 266, 636
м одиф икация М аркардта (according
to M arquardt) 525
обобщ енная ф орм улировка (general
case) 303. 635
прямые изм ерения (direct
m easurem ents) 247, 636
свойства оценок наименьш их
квадратов (properties of th e
solution) 284
с изм енением масш таба (w ith change
of scale) 524
с ограничениям и (w ith constraints)
528, 538
Н аискорейш его спуска м етод (steep est
descent) 367
Н ачальное значение (seed) 65
Н езависим ость
собы тий (ind ep en dence of events)
19
случайны х величин (ind ep en dence of
random variables) 35, 39
Н епреры вная дробь (continued fraction)
565
Н орм ированная величина (reduced
variable) 29, 626
О бласть отсечен ия (clipping region)
589
О граничения на размеры массивов
(array size lim itation s) 623
О кно
п росм отра (view port) 586
граф и ческое (w indow ) 586
О перативная характеристика (operating
characteristic function) 224,
632
О пределитель (determ inant) 476
Я коби (Jacobian determ inant) 43,
628
ортогонального преобразования (of
an orthogonal transform ation)
48
О ртогональность (orthogonal) 451
ортогональны е дополнения
(com plem ents) 455
672
Предметный указатель
ортогональны е многочлены
(polynom ials) 420. 637
О ценивание (estim ation ) 137
Оценка (estim ator) 630, 631
асимптотически несм ещ енная
(asym p totically unbiased) 200,
631
максимального п равдоподобия
(m axim u m -likelihood estim ates)
209
несмещ енная (unbiased) 137, 630
парам етров распределени я
биномиального (binom ial
distribution param eter estim a tio n )
198
на основании гистограм м ы
(determ ination of param eters from
histogram ) 398
по выборке (d eterm in ation of
param eters from sam p le) 397
П уассона (P oisson d istrib u tion
param eter estim ation ) 197
с минимальной ди сп ер си ей (m inim um
variance estim ator) 197, 631
состоятельная (con sisten t) 137,
630
эф ф екти вная (efficient) 137
Ошибка (error) 96, 126, 166, 199, 321,
381, 397, 547
второго р ода (of th e secon d kind) 223,
632
выборочной ди сп ерси и (o f th e sam p le
variance) 139
модель ош ибок Л ап л аса (m od el of
Laplace) 113
несиммм етричная (asym m etric) 201,
207, 292, 314, 322, 324. 328, 385,
397
отрезки ош ибок (bars) 144
первого рода (of theirst kind) 223,
632
симмм етричная (sym m etric) 322,
381
среднего (of the m ean) 139
стандартная (standard) 110
статистическая (sta tistica l) 96, 126,
166
П аскаля треугольник (P a sca l’s triangle)
114, 540, 572
П лотность распределени я вероятн остей
(probability d en sity) 25, 625
дл я д в у х перем енны х (of two
variables) 33
маргинальная (m arginal probability
d en sity) 34, 39, 626
многих переменны х (of several
variables) 39
совместная (joint) 626
условная (conditional) 35
П одстановка
обратн ая (backward su b stitu tio n )
492
прям ая (forward su b stitu tion ) 492
П олимаркер (polym arker) 590
П олная ш ирота полу максимального
уровня — П Ш П У (full w idth at
h alf m axim um — FW H M ) 148
П равдоподоби е
критерий отнош ения правдоподобий
(likelihood-ratio te st) 230, 633
логариф м ическая ф ун кция
правдоподобия (likelihood
logarithm ic function) 190, 191,
631
м етод максимального правдоподобия
(m axim u m likelihood) 630
отнош ение правдоподобий (likelihood
ratio) 189
оценки максимального
правдоподобия
(m axim u m -likelihood estim ates)
209
уравнение правдоподобия (likelihood
equation) 191, 631
ф ун кция правдоподобия (likelihood
function) 190, 630
П редставление чисел на компью тере
(representation of num bers in a
com p uter) 56
П реобразовани е (transform ation)
вектора (of a vector) 453
Гивенса (G ivens) 467, 534
главных осей (principal axis) 497
зам ен а переменны х (of variables) 41,
49. 50, 627
линейное (linear) 44
ортогональное (orthogonal) 47. 467,
534
перем ена знака (sign inversion)
474
перестановки (p erm utation) 475
Х аусхолдер а (H ouseholder) 470,
535
Предметный указатель 673
П римитивны й элем ент (p rim itive
elem ent) 59
П рограммы
выполнение (execu tin g program s)
622
компиляция (com piling program s)
622
на C D -R O M (C D -R O M ) 612
пакет граф и ческ и х програм м
(graphical program m ing package)
583
трансляция (linking program s)
622
установка (in stallation ) 619
П рямая сум м а (direct sum ) 454
Р абоч ая станция (w orkstation) 602
граф ическая рабочая станция
(graphic w orkstation) 583,
602
Р азбр ос (dispersion) 28
Распределени е
F - распределение Ф иш ера
(F -d istrib u tion ) 552, 557
t-распределение С тью дента (S tu d e n t’s
t-distribution ) 219, 554, 557
бином иальное (binom ial d istrib u tion )
93, 128, 541, 557
Брайта—Вигнера (B reit—W igner
distribution) 33, 73, 88
гипергеом етрическое (hvpergeom etric
distribution) 96, 542, 557
дискретной случайной величины (of a
discrete variable) 629
К ош и (C auchy d istribution) 32
Л оренца (Lorentz distrib u tion ) 33
норм альное (гауссовское) (norm al
distribution) 107. 129, 546, 557.
640, 642
многом ерное (m ultivariate) 80, 88,
115, 129
стандартное (standard) 106, 546,
557
непреры вной случайной величины (of
a continuous variable) 629
П уассона (Poisson distrib u tion ) 100,
129, 544, 557
П олна (P olya distribution) 99
равном ерное (uniform d istrib u tion )
31
треугольное (triangular d istrib u tion )
49, 74, 88
уним одальное (unim odal distribution)
29
хи-квадрат ^ - D is t r ib u t io n ) 159, 185,
520, 557, 645
частот (frequency distribution)
135
Регрессия (regression) 420
кривая регрессии (curve) 427
полиномиальная (polynom ial
regression) 637
уравнение регресси и (equation) 427,
637
С вертка (con volution) 120, 130, 630
равном ерного и норм ального
распределени й (of uniform
d istribution and norm al
distribution) 130
равном ерны х распределени й (of
uniform distributions) 122.
130
с нормальны м распределением (w ith
th e norm al distribution) 123
Симплекс (sim plex) 355
С ингулярность (singular)
сингулярное значение (value) 499
анализ (analysis) 500, 503
сингулярное разлож ение
(d ecom p osition ) 499, 505, 536
Скользящ ее среднее (m oving average)
436, 637
С лучайная величина (random variable)
24, 625
непреры вная (continuous) 24
С лучайная составляю щ ая (random
com p on en t) 435
С лучайны е числа (random num bers)
55
имею щ ие произвольное
распределени е (arbitrarily
distrib u ted ) 71
имею щ ие норм альное распределени е
(norm ally distributed ) 78, 86
м оделирование
м етодом просеивания
(acceptance-rejection technique)
75
м етодом обращ ения ф ун кции
распределени я (transform ation
procedures) 72
равном ерно распределенны е
(uniform ly d istributed ) 88
Смещ ение (bias) 193, 631
674
Предметный указатель
Собственное значение (eigenvalue)
495
Собственный вектор (eigenvector)
495
Собы тия (events) 16, 625
редкие, отнош ение вероятн остей
(ratio o f sm all num bers of even ts)
175
с ш умом (w ith background) 176
сигнальные (signal) 171
С овокупность (p op u lation ) 135, 630
подм нож ество совокупности
(su bpopu lation ) 153
Сопряж енны е направления (con jugate
directions) 362
С реднее (m ean) 26
выборочное (sam ple m ean ) 136, 137,
181, 184
квадратичное (square) 158
отклонение (d eviation ) 158
ош ибка (error) 139
скользящ ее (m oving average) 436,
637
С тандартное отклонение (standard
deviation) 28, 110, 626
С татистика (sta tistic) 136, 630
критерия (test sta tistic ) 214, 223, 633.
634
С тепени свободы (degrees of freedom )
157, 286
С тупенчатая ди аграм м а (step diagram )
143
С ум м а квадратов (sum of squares) 157,
402
Т абл и ц а сопряж енности признаков
(contingency tab le) 239, 244
таблица 2 x 2 (2 x 2 tab le) 240
Текст на граф иках (te x t in p lo t) 597
Теорема
Гаусса—М аркова (G auss—M arkov
theorem ) 286, 634
У илкса (W ilks th eorem ) 231, 633
центральная п редельная (central lim it
theorem ) 111, 629
Точность (precision)
абсолю тная (ab solu te) 58
относительная (relative) 58
Т р ен д (trend) 435, 637
У равнения
нормальны е (norm al equ ation s)
480
связи и ограничения (eq u ation s of
constraint) 286, 296, 529, 538
систем а, недоопр едел ен ная
(underdeterm ined sy stem of
equation s) 478
У ровень
зн ачи м ости (significance level) 163,
213, 632
доверительны й (confidence level) 167,
632
Ф ак тори ал (factorial) 563
Ф орм ула преобразования
ковариационны х м атриц и
ди сп ерси й (error propagation) 45,
50, 628
Ф ункция мощ ности (power function)
224. 632
Ф ункция распределени я (distribu tion
fu n ction ) 24, 625, 626
дв у х перем енны х (of tw o variables)
33
многих переменны х (of several
variables) 39
Х ар актеристи ческая ф ун кция
(characteristic function) 103
Х арактеристи ческое уравнение
(characteristic eq u ation ) 498
Х олецкого
р азл ож ен и е (C holesky d ecom p osition)
489, 535
м етод обращ ения матрицы (C holesk y
inversion) 535
Ч а с т о т а (frequency) 126, 628
Ч исло
разм ещ ений (num ber of perm u tation )
539
сочетаний (num ber of com b ination)
539
Ш у м (background) 171
Э л л и п с равны х вероятностей
(covariance ellipse) 117, 323, 324,
398
Э лли п сои д
равны х вероятностей (covariance
ellipsoid) 1118, 288
доверительны й (confidence ellipsoid)
120, 288, 382
Э м пирическая ф ункция распределени я
(sam ple distribution fu n ction ) 136,
630
Э ф ф ек ти в н ость оценки (efficiency of
estim ator) 184
Наиболее часто используемые
символы и обозначения
х, у , ??, ... (одномерная)
переменная
х, У, £,??, ■•. векторная переменная
х, у. ... случайная величина
х. у, ... многомерная ату чайная
величина.
А, В, С, ... матрицы
В смещение
cov(x, у) ковариация
F дисперсионное отношение
(случайная величина, имеющая
F -распределение Фишера)
f(x) плотность распределения
F(x) функция распределения
F(x) = х среднее значение,
математическое ожидание
Н гипотеза
Но нулевая гипотеза
L, I функции правдоподобия
L(SC, А) оперативная
характеристика
M(S'cA) функпия критерия,
функция мощности критерия
М минимизируемая функция,
целевая функция
Р{А) вероятность события А
Q сумма квадратов
s2, s2 выборочная дисперсия
S оценка
Sc критическая область
Т функция критерия
t случайная величина, имеющая
^-распределение Стьюдента
х т наиболее вероятное значение
(мода)
то. 5 медиана
x q квантиль
х выборочное среднее
х оценка максимального
правдоподобия и оценка
наименьших квадратов
а уровень значимости
1 —а доверительный уровень
А параметр распределения
ip{t) характеристическая функция
ф(х), ф{х) плотность распределения
и функция распределения для
нормально распределенной
случайной величины
Фо(х), Ф о(х) плотность
распределения и функция
распределения для стандартно
нормально распределенной
случайной величины
сг(х) —Л(х) стандартное отклонение
сг2 (х) дисперсия
X2 случайная величина, имеющая
хи-квадрат распределение
i?(P) функция, обратная к функции
нормального распределения
Оглавление
Предисловие редактора перевода ..................................................
Предисловие к третьему английскому изданию .....................................................,.
5
7
Глава 1. Введение ...........................................................................................................
1.1. Типичные задачи анализа данных .......................................................... .
1.2. О структуре этой к н и г и ...................................................................................
1.3. О компьютерных программах ....... .............................................................
9
9
10
13
Глава 2. Вероятность ................................................................................................. . .
2.1. Эксперименты, события, выборочное пространство ...................................
2.2. Понятие вероятности.........................................................................................
2.3. Условная вероятность. Формула полной вероятности. Независимость со
бытий ........................
. .............. ................................................................
2.4. Примеры ............
2.4.1. Вероятность выпадения п очков при бросании двух игральных
костей ..............................................................................
2.4.2, Лотерея 6 из 49 ....................................................................................
2.5. Задачи ............
2.5.1. Вычисление вероятности при помощи рассуждений от противно
го .....................
2.5.2. Вероятность пересекающихсясобытий ............................................
2.5.3. Зависимые и независимые события ................................................
2.5.4. Дополнительное (противоположное) событие ................... ...........
2.5.5. Вероятности выбора из наборов большого и малого объема __
2.6. Указания и решения ................................... .................................................
15
15
16
Глава 3. Случайные величины. Распределения..........................................................
3.1. Случайные величины .................................................
3.2. Распределения одномерной случайной величины ....................................
3.3. Функции одномерной случайной величины, математическое ожидание,
дисперсия, м ом енты ...........................................................................................
3.4. Функция распределения и плотность распределения вероятностей для
двух случайных величин. Условная вероятность ........................................
3.5. Математическое ожидание,дисперсия, ковариация икорреляция ............
3.6. Многомерные случайные величины. Векторная иматричная запись ...
3.7. Замена переменных ...........................................................................
3.8. Линейные и ортогональные преобразования переменных. Формула пре
образования ковариационных матриц и дисперсий ...................................
3.9. Задачи .............................................
3.9.1. Среднее, дисперсия и асимметрия для дискретного распределе
ния ...........................................................................................................
3.9.2. Среднее, мода, медиана и дисперсия для непрерывного распре
деления ..................................................................................................
3.9.3. Преобразование одномерной случайной величины ..............
3.9.4. Преобразование многих переменных .....
3.9.5. Формула преобразования ковариационных матриц и дисперсий
24
24
24
18
20
20
20
21
21
21
22
22
22
22
26
33
35
39
41
44
48
48
49
49
50
50
Оглавление
677
3.9.6. Ковариация и корреляция ................................................................
3.10. Указания и решения ............................ .................. .........................................
50
51
Глава 4. Моделирование случайных чисел на компьютере. Метод Монте-Карло .
4.1. Случайные числа ...........................................................................
4.2. Представление чисел на компью тере.............................................................
4.3. Линейные конгруэнтные датчики ..................................................................
4.4. Мультипликативные линейные конгруэнтные датчики ............................
4.5. Качество мультипликативного линейного конгруэнтного датчика
(МЛКД). Спектральный кри тери й .................................................................
4.6. Реализация и совместимость мультипликативного линейного конгруэнт
ного датчика .........
4.7. Объединение нескольких мультипликативных линейных конгруэнтных
датчиков ...............................................................................................................
4.8. Программа моделирования равномерно распределенных случайных чи
сел .........................................................................................................................
4.9. Моделирование случайных чисел, имеющих произвольное распределение
4.9.1. Моделирование методом обращения функции распределения ..
4.9.2. Моделирование случайных величин при помощи метода просеи
вания фон Неймана ...........................................................................
4.10. Моделирование нормально распределенных случайных чисел ................
4.11. Моделирование случайных чисел, имеющих многомерное нормальное
распределение........................
4.12. Метод интегрирования Монте-Карло ........................
4.13. Метод моделирования Монте-Карло ......................................................
4.14. Примеры программ ...........................................................................................
4.14.1. Головная программа E1RN для демонстрации работы подпро
грамм RNMLCG, RNECUY и RNSTNR..........................................................
4.14.2. Головная программа E2RN для демонстрации работы подпрограм
мы RNLINE ...............................................................................................
4.14.3. Головная программа E3RN для демонстрации работы подпрограм
мы RNRADI ...............................................................................................
4.14.4. Головная программа E4RN для моделирования молекулярно
го движения в газе ...............................................................................
4.14.5. Головная программа E5RN для демонстрации работы подпро
грамм RNMNPR и RNMNGN ........................................................................
4.15. Задачи по программированию ........................................................................
4.15.1. Программа для моделирования случайных чисел, имеющих рас
пределение Брайта—Вигнера ...........................................................
4.15.2. Программа для моделирования случайных чисел, имеющих тре
угольное распределение ......................................................................
4.15.3. Программа для моделирования результатов измерений с ошиб
ками разной величины ........................................................................
4.15.4. Программа для моделирования молекулярного движения .........
55
55
56
58
59
Глава 5. Некоторые важные распределения...............................................................
5.1. Биномиальное и полиномиальное распределения ......................................
5.2. Частота. Закон больших чисел ........................................................................
5.3. Гипергеометрическое распределение .............................................................
5.4. Распределение Пуассона ..................................................................................
5.5. Характеристическая функция распределения.............................................
5.6. Стандартное нормальное распределение ......................................................
5.7. Общее нормальное (гауссовское) распределение ........................................
5.8. Количественные характеристики нормального распределения ................
92
92
95
96
100
103
106
107
109
60
64
67
69
71
71
75
78
80
82
83
86
86
86
86
87
88
88
88
88
90
91
678
Оглавление
5.9. Центральная предельная теорема ................................................................ 111
5.10. Многомерное нормальное распределение .................................................... 115
5.11. Свертка распределений .................................................................................... 120
5.11.1. Интегралы типа свертки .................................................................... 120
5.11.2. Свертка с нормальным распределением ........................................ 123
5.12. Примеры программ ........................................................................................... 126
5.12.1. Головная программа E1DS для моделирования эмпирической ча
стоты и демонстрации статистических колебаний........................ 126
5.12.2. Головная программа E2DS для моделирования эксперимента Ре
зерфорда и Гейгера ............
126
5.12.3. Головная программа E3DS для моделирования доски Гальтона . 127
5.13. Задачи .................................................................................................................. 128
5.13.1. Биномиальное распределение ........................................................... 128
5.13.2. Распределение Пуассона .......
129
5.13.3. Нормальное распределение ..........
129
5.13.4. Многомерное нормальное распределение ...................................... 129
5.13.5. Свертка .................................................................................................. 130
5.14. Задачи по программированию ........................
130
5.14.1. Свертка равномерных распределений ............................................. 130
5.14.2. Свертка равномерного и нормального распределений ................ 130
5.15. Указания и решения ......................................................................................... 132
Глава 6. Выборки.............................................................................................................
6.1. Случайные выборки. Распределениевыборки. Оценки .............................
6.2. Выборки из непрерывных совокупностей. Выборочные среднее и диспе
рсия .......................................................................................................................
6.3. Графическое представление выборок. Гистограммы и диаграммы рассе
яния .................................................................
6.4. Выборки из составных совокупностей...........................................................
6.5. Выбор без возвращения из конечных дискретных совокупностей. Сред
неквадратическое отклонение. Степени свободы ........................................
6.6. Выборки из гауссовского распределения. Хи-квадрат распределение ...
6.7. Величина хи-квадрат и эмпирическая дисперсия .......................................
6.8. Выбор путем прореживания. Выборки малого объема ..............................
6.9. Выборки малого объема с шумом ..................................................................
6.10. Об оценивании отношения вероятностей редких собы тий.........................
6.11. Об отношении вероятностей редких событий в присутствии шума .......
6.12. Примеры программ ...........................................................................................
6.12.1. Головная программа E1SM для демонстрации работы подпрограм
мы SMMNVR ...............................................................................................
6.12.2. Головная программа E2SM для демонстрации работы подпро
грамм SMHSIN, SMHSFL и SMHSGR..........................................................
6.12.3. Головная программа E3SM для демонстрации работы подпрограм
мы SMSDGR ...............................................................................................
6.12.4. Головная программа E4SM для демонстрации работы подпрограм
мы SMERSS .......................................................................
6.12.5. Головная программа E5SM для демонстрации работы подпрограм
мы SMERQS ...............................................................................................
6.12.6. Головная программа E6SM для моделирования экспериментов
с малым числом событий и ш ум ом ..................................................
6.12.7. Головная программа E7SM для моделирования экспериментов
с малым количеством сигнальных событий и с сопутствующими
событиями .............................................................................................
135
135
137
142
153
156
159
164
165
171
175
176
181
181
181
181
182
183
183
183
Оглавление 679
6.13. Задачи ..................................................................................................................
6.13.1. Эффективность оценок ......................................................................
6.13.2. Выборочное среднее и выборочная дисперсия ..............................
6.13.3. Выборки из составных совокупностей ............................................
6.13.4. Хи-квадрат распределение .................................................................
6.13.5. Гистограмма .........................................................................................
6.14. Указания и решения
..................................................................................
184
184
184
185
185
185
186
Глава 7. Метод максимального правдоподобия ..........................................................
7.1. Отношение правдоподобий.Функция правдоподобия .................................
7.2. Метод максимальногоправдоподобия ...............................
7.3. Информационное неравенство. Оценки с минимальной дисперсией. До
статочные опенки ...............................................................................................
7.4. Асимптотические свойства функции правдоподобия и оценок максималь
ного правдоподобия ...........................................................................................
7.5. Совместное оценивание нескольких параметров. Доверительные интер
валы ...................................
7.6. Примеры программ ...........................................................................................
7.6.1. Программа E1ML для вычисления среднего времени жизни и не
симметричных ошибок для биномиальной модели числа радио
активных распадов..... ........................................................................
7 6 2. Программа E2ML для вычисления оценок максимального правдо
подобия для параметров двумерного нормального распределения
при помощи смоделированной выборки ..........................................
7.7. Задачи на программирование .........................................................................
7.7.1. Распределение времени распада, определенное по выборке мало
го объема, элементы которой —наблюдаемые количества радио
активных распадов .............................................................................
7.7.2. Распределение выборочного коэффициента корреляции ............
7.8. Задачи ......................................................
7.8.1. Оценки максимального правдоподобия ..........................................
7.8.2. Информационное количество Фишера ............................................
7.8.3. Дисперсия опенки .....................
7.9. Указания и решения .........................................................................................
189
189
190
Глава 8. Проверка статистических гипотез .................................................................
8.1. Введение ...............................................................................................................
8.2. F -критерий для проверки равенства дисперсий..........................................
8.3. Критерий Стьюдента. Сравнение средних ...................................................
8.4. Принципы общей теории проверки гипотез ........................
8.5. Лемма Неймана—Пирсона и ее применение .................................................
’ 8.6. Критерий отношения правдоподобий ...........................................................
8.7. Критерий согласия хи-квадрат .....................................................................
8.7.1. Критерий хи-квадрат с максимальным числом степеней свободы
8.7.2 Критерий хи-квадрат с пониженным числом степеней свободы .
8.7.3. Критерий хи-квадрат и эмпирическая плотность распределения
8.8. Таблицы сопряженности признаков ...............................................................
8.9. Критерий для таблицы сопряженности 2 x 2 .............................................
8.10. Примеры программ ...........................................................................................
8.Т0.1. Головная программа E1TEST для моделирования выборок и про
верки равенства их дисперсий при помощи Т^-критерия ............
8.10.2. Головная программа E2TEST для моделирования выборок и про
верки гипотезы о равенстве их средних некоторому заданно
му значению при помощи критерия Стьюдента ............................
213
213
214
218
222
227
230
234
234
235
236
239
240
240
193
199
203
207
207
208
208
208
209
209
209
210
210
210
240
241
680
Оглавление
8.10.3. Головная программа E3TEST для моделирования выборок и вычи
сления статистики критерия хи-квадрат для проверки гипотезы
о том, что выборка взята из нормального распределения с из
вестными параметрами .............................................................. .
8.11. Задачи ................................................. ....................... ......... ............................
8.11.1. F -критерий .................................................................. ......................
8.11.2. Критерий Стьюдента .............. .................................................. .
8.11.3 Критерий хи-квадрат для дисперсии ............................................
8.11.4. Критерий согласия хи-квадрат ..................... .................................
8.11.5 Таблица сопряженности признаков ................................ ......... .
8.12. Указания и решения ............................ ............................................................
Глава 9. Метод наименьших квадратов .................................................. ..................
9.1. Прямые измерения с одинаковой или с различной точностью ................
9.2. Косвенные измерения. Линейный случай ..................... ........................... .
9.3. Подбор прямой .............................................. ......... .........................................
9.4. Программы для аппроксимации неизвестных величин линейными функ
циями — ............................................ .................. ................ .........................
9.4.1. Аппроксимация полиномами ............ .................. ...........................
9.4.2. Аппроксимация произвольной линейной функцией ......................
9.5. Косвенные измерения. Нелинейный случай ................................................
9.6. Программы для аппроксимации нелинейными функциями .....................
9.6.1. Итерация с уменьшением длины шага ...........................................
9.6.2. Итерационный процесс Маркардта .............................................. .
9.7. Свойства оценок, полученных методом наименьших квадратов. Крите
рий хи-квадрат ................................................................... ....... .................. ..
9.8. Доверительные области и несимметричные ошибки в нелинейном случае
9.9. Измерения с ограничениями .................................................... ................ . . .
9.9.1. Метод факторов .............. ....................................... ................. .
9.9.2. Метод множителей Лагранжа .................. ............................
9.10. Обобщенная формулировка метода наименьших квадратов ...................
9.11. Программа для метода наименьших квадратов в обобщенной формули
ровке ..... ............................................................................ ................ ....... ...
9.12. Использование программы для метода наименьших квадратов в обоб
щенной формулировке при измерениях с ограничениями ............ .
9.13. Доверительная область и несимметричные ошибки в общем случае . . . .
9.14. Примеры программ ................... ................................................................ .
9.14.1. Головная программа E1LSQ для демонстрации работы подпро
граммы LSQP0L .....................................................................................
9.14.2. Головная программа E2LSQ для демонстрации работы подпро
граммы LSQLIN ............................................. ............................ .........
9.14.3. Головная программа E3LSQ для демонстрации работы подпро
граммы LSQN0N ................... ......... .......................................................
9.14.4. Головная программа E4LSQ для демонстрации работы подпро
граммы LSQMAR ....................................... .............................. .............
9.14.5. Головная программа E5LSQ для демонстрации работы подпро
граммы LSQASN ...................................................................................
9.14.6. Головная программа E6LSQ для демонстрации работы подпро
граммы LSQC0N ..... .................................... ................................. .
9.14.7. Головная программа E7LSQ для демонстрации работы подпро
граммы LSQGEN ................................... .................. ..............................
9.14.8. Головная программа E8LSQ для демонстрации работы подпро
грамм LSQASG и LSQC0G .......................................... ......... ..................
241
243
243
243
243
243
244
244
247
247
252
256
259
260
264
266
267
269
278
284
288
296
297
299
303
306
312
314
319
319
321
321
322
322
323
323
324
Оглавление 681
9.15. Задачи по программированию .......................................................................
9.15.1. Аппроксимация полиномом первого порядка данных, соответ
ствующих полиному второго порядка .............................................
9.15.2. Аппроксимация степенной функцией (линейный случай) ..........
9.15.3. Аппроксимация степенной функцией (нелинейный случай) .......
9.15.4. Аппроксимация распределением Брайта—Вигнера результа
тов измерений при наличии ошибок ............ ..................................
9.15.5. Несимметричные ошибки и доверительная область при аппрок
симации распределением Брайта—Вигнера ...................................
9.15.6. Аппроксимация гистограммы распределением Брайта—Вигнера
9.15.7. Аппроксимация окружностью результатов измерений координат
точек при наличии ошибок как по оси абсцисс, так и по оси ор
динат .............................................................
324
324
326
326
328
328
329
330
Глава 10. Минимизация функций .......................................... ..................................
10.1. Обзор методов минимизации. Точность полученных оценок ...................
10.2. Парабола, проходящая через три т о ч к и ........................................................
10.3. Функция п переменных, заданная на прямой в n-мерномпространстве
10.4. Интервальное приближение к точке минимума ..........................................
10.5. Поиск минимума методом золотого сечения ..............
10.6. Минимизация методом квадратичной интерполяции.................................
10.7. Минимизация по выбранному направлению в п-мерном пространстве ..
10.8. Симплекс-метод минимизации в n-мерном пространстве
......................
10.9. Минимизация по направлениям координатных осей ......... ................... *.
10.10. Сопряженные направления ...............
10.11. Минимизация по заданным направлениям ..................................
10.12. Минимизация методом наискорейшего спуска ..........................
10.13. Минимизация по направлениям сопряженных градиентов .......................
10.14. Минимизация посредством квадратичной ф о р м ы ......................................
10.15. Минимизация методом Маркардта ...................
10.16. О выборе метода минимизации .............................
10.17. Анализ ош ибок....................................................................................................
10.18. Примеры ...................................
10.19. Примеры программ ................................................................
10.19.1. Головная программа E1MIN для демонстрации работы подпро
грамм MINSIM, MINPOW, MINCJG, MINQDR и MINMAR .. .........................
10.19.2. Головная программа E2MIN для оценки параметров распределе
ния по выборке и демонстрации работы подпрограммы MINC0V .
10.19.3. Головная программа E3MIN для демонстрации работы подпро
грамм MINASY и MINCNT ................................................ ......................
10.19.4. Головная программа E4MIN для оценки параметров распреде
ления на основании гистограммы, построенной по выборке,
и для демонстрации работы подпрограмм MINGLP и MINGSQ .......
10.20. Задачи по программированию ........................................................................
10.20.1. Минимизация методом Монте-Карло для нахождения хорошего
начального приближения ............................
10.20.2. Оценка параметров распределения Брайта—Вигнера на основа
нии выборки ............................ ..................................... .....................
10.20.3. Оценка параметров распределения Брайта—Вигнера на основа
нии гистограммы, построенной по выборке ...................................
10.20.4. Оценка параметров суммы двух распределений Брайта—Вигнера
на основании гистограммы, построенной по выборке .................
332
332
338
340
342
345
349
353
355
362
362
364
367
369
372
375
379
381
388
395
Глава 11. Дисперсионный анализ .................................................................................
401
395
397
397
398
398
398
399
399
399
682
Оглавление
IL L Однофакторный дисперсионный анализ .......................... ......... ................
11.2. Двухфакторный дисперсионный анализ .................................................... .
11.3. Примеры программ .................................................................................... .
11.3.1. Головная программа E1AV для демонстрации работы подпро
грамм AVTBLE и AV0UTP ...................................................... ................
11.3.2. Головная программа E2AV для моделирования данных и выпол
нения дисперсионного анализа .........................................................
11.4. Задачи по программированию ........................... ....................................... .
11.4.1. Двухфакторный дисперсионный анализ для классификации с пе
ресекающимися факторами ............................ .................................
11.4.2. Двухфакторный дисперсионный анализ с группируемой класси
фикацией ...............................................................................................
401
406
416
Глава 12. Линейная и полиномиальная регрессия ................... .................................
12.L Ортогональные многочлены .............. ..........................................................
12.2. Кривая регрессии. Доверительный интервал .......... .................................
12.3. Регрессия при неизвестных значениях ошибок измерений .....................
12.4. Примеры программ ...............
12.4.1. Головная программа E1REG для демонстрации работы подпро
граммы REGP0L ......................................................................................
12.4.2. Головная программа E2REG для осуществления графического вы
вода самих данных, а также всех построенных полиномов для по
линомиальной регрессии ....................................................................
12.4.3. Головная программа E3REG для демонстрации работы подпро
граммы REGC0N и вывода на экран построенного полинома и до
верительных границ для него ......
12.4.4. Головная программа E4REG для моделирования данных с ошиб
ками измерений и построения по ним полиномиальной регрессии
12.5. Задачи по программированию .................... ■.................................................
12.5.1. Моделирование данных и вывод на экран уравнения регрессии
для полиномов различных порядков ........................
12.5.2. Моделирование данных и вывод на экран кривой полиномиаль
ной регрессии и доверительныхграниц ...........................................
420
420
427
427
431
Глава 13. Анализ временных рядов ............................................................................
13.1. Временные ряды. Тренд ..............................................................
13.2. Скользящее среднее ...........................................................................................
13.3. Краевые эффекты .............................................................................................
13.4. Доверительные интервалы ............................
13.5. Программа анализа временных рядов.Примеры ........................................
13.6. Примеры программ ........
13.6.1. Головная программа Е1ТТМ для демонстрации работы подпро
граммы TIMSER ............................
13.6.2. Головная программа E2TIM для осуществления анализа времен
ных рядов и вывода на экран полученных результатов ..............
13.7. Задачи по программированию ..........................
13.7.1. Экстраполяция в процессе анализа временных рядов .................
13.7.2. Точки разрыва временных рядов ...................................................
435
435
436
439
440
442
446
416
417
418
418
419
431
431
431
432
433
433
434
446
446
447
447
447
Приложение А. Матричное исчисление ...................................................................... 449
А.1. Определения. Простейшие операции над матрицами ............................... 450
А.2. Векторное пространство, подпространство, ранг м атр и ц ы ....................... 452
А.З. Программы для выполнения простейших операций над матрицами и век
торами ........................................................................
456
Оглавление
А.4. Ортогональные преобразования.....................................................................
А.4.1. Преобразование Гивенса ....................................................................
А.4.2. Преобразование Хаусхолдера ....................................... ..................
А.4.3. Перемена знака ..........
А.4.4, Преобразование перестановки ...........................................................
А.5. Определители ..........
А.6. Матричные уравнения. Метод наименьших квад ратов............................
А.7. Обратная матрица ............................................................................................
А.8. Метод исключения Г аусса................
А.9. LR-разложенне ...................................................
А. 10. Разложение Холецкого ......................................................
А. 11. Псевдообратная м атр и ц а.................................................................................
А. 12. Собственные значения и собственные век то р ы ..........................................
А. 13. Сингулярное разложение ...............................................................................
А. 14. Анализ сингулярных значений .......................................................................
А. 15. Алгоритм построения сингулярного разложения .................
А. 15.1. Суть м ето д а...................................
А. 15.2. Приведение матрицы к двухдиагональному виду ........................
А. 15.3. Приведение матрицы к диагональному в и д у .................................
А. 15.4. Сортировка сингулярных значений (упорядочение и перестанов
ка) ...............................................
А. 15.5. Анализ сингулярных значени й ................... .....................................
А.16. Метод взвешенных наименьших квадратов ................................................
А. 17. Метод наименьших квадратов с изменением масштаба ...........................
А. 18. Модификация Маркардта метода наименьших квадратов .......................
А. 19. Метод наименьших квадратов с ограничениями ........................................
А.20. Примеры программ для выполнения простейших операций ...................
А.20.1. Головная программа Е1МТХ для выполнения простейших опера
ций матричной и векторной алгебры и демонстрации работы под
программ MTXTRA, MTXWRT, MTXADD, MTXSUB, MTXMLT, МТХМВТ, МТХМАТ,
MTXUNT. MTXZER, MTXMSC, MTXTRP, MTXCPV, MTXADV, MTXSBV, MTXD0T,
MTXMSV, MTXZRV ...................................................................... ...............
А. 20.2. Головная программа Е2МТХ для выполнения операций над подма
трицами и подвекторами и демонстрации работы подпрограмм
MTXGSM, MTXPSM, MTXGCL, MTXPCL, MTXGRW, MTXPRW, MTXGSV, MTXPSV .
А.21. Примеры программ на ортогональные преобразования .......................... .
А.21.1. Головная программа ЕЗМТХ для осуществления преобразования
Гивенса с помощью подпрограмм MTXGVD, MTXGVT и MTXGVA .......
А.21.2. Головная программа Е4МТХ для осуществления преобразования
Хаусхолдера с помощью подпрограмм MTXHSD и MTXHST ..............
А.22. Примеры программ для решения матричных уравнений ........................
А.22.1. Головная программа Е5МТХ для решения матричных уравнений
методом Гаусса с помощью подпрограммы MTXEQU .......................
А.22.2. Головная программа Е6МТХ для построения разложения Холец
кого и обращения матрицы с его помощью, а также для демон
страции работы подпрограмм MTXCHL, MTXCHI и МТХСНМ ..............
А. 22.3. Головная программа Е7МТХ для построения сингулярного разло
жения с помощью подпрограммы MTXSVD ......................................
А.22.4. Головная программа Е8МТХ для решения матричных уравнений
девяти различных типов методом сингулярного разложения с по
мощью подпрограммы MTXDEC...........................................................
А.22.5. Головная программа Е9КТХ для демонстрации работы подпро
граммы MTXKAR ..................................................................................
683
466
467
470
474
474
475
477
481
482
487
489
494
495
498
500
504
504
507
511
519
521
522
523
524
528
532
533
533
534
534
534
535
535
535
535
536
537
684
Оглавление
А.22.6. Головная программа Е10МТХ для нахождения решения задачи с
ограничениями методом наименьших квадратов с помощью про
граммы MTXLSC ...................................................................................... 537
Приложение В. Комбинаторика....................................................................................
539
Приложение С. Формулы и программы для различных статистических функций
С.1. Биномиальное распределение .........................................................................
С.2. Гипергеометрическое распределение .............................................................
С.З. Распределение Пуассона ..................................................................................
С.4. Нормальное распределение .............................................................................
С.5. Хи-квадрат распределение ...............................................................................
С.6. F -распределение ................................................................................................
С.7. ^-распределение ..................................................................................................
С.8. Примеры программ ...........................................................................................
С.8.1. Головная программа E1SD для демонстрации работы подпро
грамм SDBINM, SCBINM, SDHYPG, SCHYPG, SDPOIS, SCPOIS, SQP0IS ..
С.8.2. Головная программа E2SD для демонстрации работы подпро
грамм SDSTNR, SCSTNR, SQSTNR, SDNORM, SCNORM, SQNORM, SDCHI2,
SCCHI2, SQCHI2, SDFTST, SCFTST, SQFTST, SCSTUD, SDSTUD, SQSTUD .
C.9. Задачи по программированию ........................................................................
C.9.1. Графическое представление различных статистических функций
для дискретных случайных величин ...............................................
C. 9.2. Графическое представление различных статистических функций
для непрерывных случайных величин ............................................
541
541
542
544
546
550
552
554
557
557
557
557
557
558
Приложение D. Гамма-функция и функции, связанные с ней. Методы и програм
мы для вычисления значений этих функций ............................................................. 559
D. I. Гамма-функция Эйлера ................................................................................. 559
D.2. Факториал и биномиальные коэффициенты ............................................... 563
D 3. Бета-функция ...................................................................................................... 564
D.4. Вычисление значения непрерывной дроби ................................................... 565
D.5. Неполная гамма-функция ................................................................................ 566
D.6. Неполная бета-функция .................................................................................... 569
D.7. Примеры программ ........................................................................................... 571
D. 7.I. Головная программа E1GAM для демонстрации работы подпро
грамм GGAMMA и GLNGAM ........................................................................ 571
D.7.2. Головная программа E2GAM для демонстрации работы подпро
граммы GBINC0 ...................................................................................... 572
D.7.3. Головная программа E3GAM для демонстрации работы подпро
грамм GBETAF, GINCGM и GINCBT.......................................................... 572
D. 8. Задачи по программированию ..................................................................... 572
D.8.I. Графическое представление функций Г(х) и 1/Г(х) .................. 572
D.8.2. Графическое представление бета-функции, неполной гаммафункции и неполной бета-функции ................................................. 572
Приложение Е. Служебные программы (утилиты) ...................................................
E. 1. Численное дифференцирование ...................................................................
E. 2. Нахождение нулей функций численными методами ..............................
573
573
580
Приложение F. Пакет графических программ GRPACK.............................................
F. I. Вводные замечания ........................................................................................
F.2. Управляющие програм м ы .................................................................................
F.3. Системы координат и преобразования ..........................................................
F.3.I. Системы координат .............................................................................
583
583
584
584
584
Оглавление 685
F.3.2. Линейные преобразования. Графическое окно —Окно просмотра
F.4. Программы преобразования координат ............................................... , .......
Преобразование СС —►WC .............................................................................
Преобразование W C —+DC ...................................................... .....................
F.5. Программы построения графиков ..................................................................
F.6. Графические служебные программы ..................................... .....................
F.7. Текст на графиках ............................................... ............................................
F.8. Программы для построения некоторых конкретных графиков ..............
F. 9. Графические рабочие станции .....................................................................
F.9.I. Типы рабочих станций. Файл инициализации. Индекс цвета . . .
F.9.2. Экран компьютера или графическое окно ....................................
F.9.3. Файлы для автономной печати на принтере или графопострои
теле .................................................................................................. ...
F.9.4. Определение номеров рабочих станций ..........................................
F. 9.5. Файл ошибок. Работа с файлами .................................................
F.10. Примеры программ ...........................................................................................
F.10.1. Головная программа E1GE для демонстрации работы подпро
грамм GENBWS, GE0PEN, GECLSE, GE0PWS, GECLWS, GEWNCC, GEVWWC,
GEWNWC, GESTFE, GEFEAM, GEBOUN, GESTCL, GEPLIN, GEBEPL, GESCLX,
GESCLY, GETXTC, GETXTF ........................................................................
F. 10.2. Головная программа E2GE для демонстрации работы подпрограм
мы GEMAEK .....................
F.10.3. Головная программа E3GE для демонстрации работы подпрограм
мы GEDATP ..............................................................................................
F.10.4. Головная программа E4GE для демонстрации работы подпрограм
мы GEPLCT ........................
F.10.5. Головная программа E5GE для демонстрации работы подпро
грамм GESCDF и GECCES ........................................................................
F. 10.6. Головная программа E6GE для демонстрации работы подпрограм
мы GRHSCV............................................................... . .............................
F.10.7. Головная программа E7GE для демонстрации работы подпрограм
мы GRDTCV .................................
F. 10.8. Головная программа E8GE для демонстрации работы подпрограм
мы GRDTMC ..........
585
587
587
588
589
594
597
600
602
602
603
Приложение G. Установка программного обеспечения и технические указания ..
G. l. CD-ROM ...........................................................................................................
G.2. Различные компиляторы и операционные системы ...................................
G.3. Использование программ на языке С ...........................................................
G.4. Программирование в среде WINDOWS 95/ WINDOWS NT . .................
G. 4.I. Вводные замечания ......................................................
G.4.2. Головная программа ...........................................................................
G.4.3. Прикладная программа ......................................................................
G.5. Установка программ .........................................................................................
G.6. Структура директории в операционных системах DOS иWINDOWS . .
G.6.I. Поддиректория \DATAN\DATSEC ..........................................................
G.6.2. Поддиректория \DATAN\EXASEC ............
G.6.3. Поддиректория \DATAN\S0LSEC .........................................................
G.6.4. Поддиректория \DATAN\DLIB. Библиотека анализа данных .......
G.6.5. Поддиректория \DATAN\GLIB. Графическая библиотека ..............
G.7. Структура директории в среде Linux ...........................................................
G.7.I. Директория /u s r/lo c a l/d a ta n .........................................................
G.7.2. Библиотеки ............................
612
612
613
615
616
616
617
618
619
620
620
620
620
620
620
621
621
621
605
605
606
606
606
607
607
607
608
609
609
611
686
Оглавление
G.7.3. Файлы программных оболочек .........................................................
G 8. Изменение программ в библиотеке анализа данных .................................
G.9. Компилирование, трансляция и выполнение программ ............................
G.10. Ограничения на размеры массивов для некоторых программ ................
622
622
622
622
Приложение Н. Основные формулы ............................
Вероятность .........................................................................................................
Одномерная случайная величина ...............
Многомерные случайные величины ...............................................................
Преобразование и замена переменных ..........................................................
Формула преобразования ковариационных матриц и дисперсий ............
Закон больших чисел ........................................................................................
Центральная предельная теорема ..................................................................
Свертка распределений ..............................................................
Выборки ...............................................................................................................
Метод максимального правдоподобия ........................
Проверка гипотез ...............................................................................................
Критерий согласия хи-квадрат с максимальным числом степеней свобо
ды . . . . ..............
Критерий согласия хи-квадрат для проверки гипотезы о типе распреде
ления ......................................
Метод наименьших квадратов ........................................................................
Дисперсионный а н а л и з........................................
Полиномиальная регрессия .............................................................................
Анализ временных рядов .................................................................................
625
625
625
626
627
628
628
629
630
630
630
632
Приложение I. Статистические таблицы ....................................................................
639
Список литературы .................................................
Список литературы для дополнительного чтения ........................................
Теория вероятностей ................................................................................
Математическая статистика.............................................................................
Численные методы. Программы для работы над матрицами .................
Основные формулы. Статистические таблицы .................................
Список дополнительной литературы .............................................................
651
652
652
652
653
653
654
Список примеров ............................................................................................
655
Список программ .....................................
658
Указатель компьютерных программ..........................................
666
Предметный указатель....................................................................................................
668
Наиболее часто используемые символы и обозначения ............................................
675
633
633
634
635
636
637
Учебное издание
Зигмунд Брандт
Анализ данных. Статистические и вычислительные
методы для научных работников и инженеров
Зав. редакцией академик В. И. Арнольд
Зам. зав. редакцией А. С. Попов
Ведущий редактор М. С. Стригунова
Художник В. П. Григорьев
Технический редактор О. Г. Лапко
Корректор Е. Н. Клитина
Оригинал-макет подготовлен В. Н. Цлаф
в пакете ЕТ^Х 2е с использованием
кириллических шрифтов семейства LH
Общероссийский классификатор продукции ОК-005-93, том 2;
953 005 — литература учебная
Санитарно-эпидемиологическое заключение
№ 77.99.02.953.Д.008286.12.02 от 09.12.2002 г.
Лицензия ЛР № 010174 от 20.05.97 г.
Подписано к печати с готовых диапозитивов 29.07.2002 г.
Формат 70 х 100V 16. Гарнитура Computer Modern.
Печать офсетная. Объем 21,5бум. л. Уел. печ. л. 55,9.
Уч.-изд. л. 47,77. Изд. № 1/9802.
Тираж 5 000 экз. (1-ый завод 3 000 экз.) Заказ
121.
Издательство «Мир»
Министерства РФ по делам печати,
телерадиовещания и средств массовых коммуникаций
107996, ГСП-6, Москва, 1-й Рижский пер., 2.
ООО «Издательство АСТ»
667000, Республика Тыва, г. Кызыл, ул. Кочетова, д. 28
Наши электронные адреса:
w w w . a s t .r u
E-mail: astpub@aba.ru
Диапозитивы изготовлены
в издательстве «Мир»
ОАО «Санкт-Петербургская типография № 6».
191144, Санкт-Петербург, ул. Моисеенко, 10.
Телефон отдела маркетинга 271-35-42.