Н.Н. Калиткин - Численные методы (1133437), страница 47
Текст из файла (страница 47)
Построение сопряженного базиса означает ортогонализацию в метрике, порожденной матрицей А. Ранее отмечалось, что в процессе ортогонали.зации теряется точность; при большом числе переменных погрешность настолько возрастает, что процесс приходится повторять. Замечание 2.' Теоретически безразлично, какое из несопряженпых направлений выкинуть из базиса в конце цикла. Обычно выкидывают то направление, при спуске по которому на данном цикле функция изменилась менее всего. Поскольку для произвольной функции понятие сопряженности ввести нельзя, то направление наиболее слабого убывания выкидывают независимо от того, под каким номером оно стоит в базисе.
Любопытно, что это оказывается выгодным даже для квадратичной функции, хотя 2!4 1гл. Ми ПОИСК МИНИМУМА на основании этого критерия иногда можно выкинуть сопряженное направление, оставив несопряженные; зато уменьшается потеря точности при ортогонализации. Замечание Э. Описанный выше цикл метода включает два спуска по сопряженным направлениям и один — по несопряженным. Более выгоден цикл, при котором сразу после нахождения нового сопряженного направления по нему делают спуск из точки т„, приходя в некоторую тачку т;. Тогда спуск из т', в г4 будет спуском в плоскости всех новых сопряженных направлений, т.
е. его можно считать первой группой нового цикла спусков. Поэтому из точки г, сразу можно спускаться по несопряжениым направлениям. При этом новое направление ставят в базис на последнее место и выкидывают то направление, на котором функция слабее всего уменьшилась при спусках от точки г, до точки т4. Наименее выгодным может оказаться и новое направление; тогда следующий цикл спусков будет сделан со старым базисом. Метод сопряженных направлений является, по-видимому, наиболее, эффективным методом спуска. Он неплохо работает и при вырожденном минимуме, и при разрешимых оврагах, и при наличии слабо наклонных участков рельефа — <плато»; и при большом числе переменных — до двух десятков.
6. Случайный поиск. Методы спуска неполноценны на неупорядоченном рельефе. Если локальных экстремумов много, то спуск из одного нулевого приближения может сойтись только к одному из локальных минимумов, не обязательно абсолютному. Тогда для исследования задачи применяют случайный поиск. Предполагают, что интересующий нас минимум (или все минимумы) лежит в некоторой замкнутой области; линейным преобразованием координат помещают ее внутрь единичного и-мерного куба, Выбирают в этом кубе У случайных точек способами, описанными в ~ 4 главы 1Ъ', если о расположении экстремумов зара-' нее ничего не известно, то наилучшие результаты дают ЛП; последовательности точек. Даже при миллионе пробных точек вероятность того, что хотя бы одна точка попадет в небольшую окрестность локального минимума, ничтожно мала. В самом деле, пусть диаметр котловины около минимума составляет 10О.' от пределов изменения каждой координаты.
Тогда объем этой котловины составляет 0,1" часть объема и-мерного куба. Уже при и ~ б ни одна точка в котловину не попадет. Поэтому берут небольшое число точек л1 — (5 — 20) п и каждую точку рассматривают как нулевое приближение. Из каждой точки совершают спуск, быстро попадая в ближайший овраг или котловину; когда шаги спуска сильно укорачиваются, его прекращают, не добиваясь высокой точности. Этого уже достаточно, 215 МИНИМУМ В ОГРАНИЧБННОИ ОБЛАСТИ $ 31 чтобы судить о величине функции в ближайшем локальном минимуме с удовлетворительной точностью.
Сравнивая (визуально или при помощи программы) окончательные значения функции на всех спусках между собой, можно изучить расположение локальных минимумов функции и сопоставить их величины. После этого можно отобрать нужные по смыслу задачи минимумы и провести в них дополнительные спуски для получения координат точек минимума с высокой точностью. Обычно в прикладных задачах нужно в первую очередь добиться того, чтобы исследуемая функция приняла минимальное или почти минимальное значение.
Но вблизи минимума значение функции слабо зависит от изменения координат. Зачем 1тогда нужно находить координаты точки миниыума с высокой точностью? Оказывается, что это имеет не только теоретический, по и практический смысл. Пусть, например, координаты — это размеры деталей механической конструкции, а минимизируемая функция есть мера качества конструкции. Если мы нашли минимум точно, то мы находимся в самом центре котловины около минимума. Б этом случае вариации координат влияют на функцию слабее, чем в точках, расположенвых ближе к краям котловины. А безопасные вариации координат имеют в данном примере смысл допусков на точность обработки деталей.
Значит, при аккуратном вычислении координат минимума мы можем разрешить ббльшие допуски, т. е. удешевить обработку деталей. Метод случайного поиска зачастую позволяет найти все локальные минимумы функции от 1Π— 20 переменных со сложным рельефом. Он полезен и при исследовании функции с единственным минимумом; вэтом случае можно обойтись заметно меньшим числом случайных точек. Недостаток метода в том, что надо заранее задать область, в которой выбираются случайные точки. Если мы зададим слишком широкую область, то ее труднее детально исследовать, а если выберем слишком узкую область, то многие локальные минимумы могут оказаться вне ее.
Правда, положение несколько облегчается тем, что при спусках траектории могут выйти за пределы заданной области и сойтись к лежащим вне этой области минимумам. $ 3. Минимум в ограниченной области 1. Формулировка задачи. Пусть в ~-Мерном векторном пространстве задана скалярная функция Ф (х). Расслютрим задачу на минимум с дополнительнымн условиями двух типов: Ф (х) = ппп, ср; (х) =О, 1 =--(==-т, фу(х)=-0, 1 =1 — Р. (38) Условия типа равенств выделяют в пространстве некоторую (л — т)- мерную поверхность; поэтому должно выполняться неравенство т ( и. Условия типа неравенств выделяют и-мерную область, ограниченную гиперповерхностями ф (х) = 0; число таких условий 216 1гл.
Уп ПОИСК МИНИМУМЛ может быть произвольным. Следовательно, задача (38) есть поиск минимума функции и переменных в (и — т)-мерной области 6. Функция может достигать минимального значения как внутри области, так и на ее границе. Зта задача и особенно последний случай трудны для расчета. Вид дополнительных условий в любой реальной задаче не слишком прост, так что явно ввести в области 6 собственную (и — т)-мерную систему координат практически никогда не удается. Значит, при численном расчете мы вынуждены вести спуск не на (и — т)-мерной поверхности, а во всем л-мерном пространстве. Тогда даже если нулевое приближение лежит в области 6, естественная траектория спуска сразу выходит из этой области; особенно сложно «заставить» траекторию идти вдоль границы области.
В математических задачах экономики поиск минимума при дополнительных условиях называют (в зависимости от типа функций) линейным, нелинейным и т. д. программированием. 2. Метод штрафных функций. Рассмотрим задачу на абсолютный минимум во всем и-мерном пространстве для такой вспомогательной функции: Р (х) = — Ф (х) + ! '" Р !- ~$~ и ! ! + ~ !! ! ! ! ! — !! и ! !!) - ь, „ ~ о.
!зв! !=- ! !.—..1 Прибавляемые к Ф(х) члены взяты таким образом, что они обращаются в нуль, если дополнительные условия в (38) выполнены. Если же условия нарушены, то эти члены положительны, т. е. они увеличивают Е(х), причем тем больше, чем сильнее нарушены дополнительные условия. Это своеобразный штраф за нарушение условий. Если коэффициент штрафа р достаточно велик, то за границами области 6 функция Е (х) быстро возрастает. Значит, минимум Е(х) расположен или внутри области 6, или снаружи вблизи' ее границы. Если он лежит в области 6, то он совпадает с минимумом Ф(х), ибо там дополнительные члены в условии (39) обращаются в нуль. Если же минимум Е(х) лежит снаружи, то минимум х исходной функции лежит на границе; при разумных предположениях о свойствах функций Ф(х), !р; (х) и !р (х) доказано, что его отличие от минимума х„вспомогательной функции не превышает )х — х„)» ""', (40) где величина константы зависит от конкретных свойств функций (38).
Поэтому если взять последовательность р, со и найти для нее минимумы х!, вспомогательной функции Е(х; р„), то х,- х. 2!7 МИНИМУМ В ОГРАНИЧЕННОИ ОБЛАСТИ Т, (х) — = ~ с!х! = пип, (41а) х!~0, 1~л(п, (416) (4! в) У', адх! =- Ь;, «=! 1~1(т, Х~ а,!х«(ЬИ т~)' М. «=- ! (41г) Каждое из условий типа неравенств (41б) или (4!г) определяет полупростраиство, ограниченное гиперплоскостью; все эти условия вместе определяют выпуклый и-мерный многогранник (, являющийся пересечением соответствующих полупространств.