/
Текст
А. А. ПЕРВОЗВАНСКИИ
ПОИСК
ИЗДАТЕЛЬСТВО «НАУКА»
ГЛАВНАЯ РЕДАКЦИЯ
ФИЗИКО-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫ
МОСКВА 1970
6Ф0.1
П26
УДК 62-50
Поиск, Первозванский А А.,
Главная редакция физико-математиче-
физико-математической литературы изд-ва «Наука», М.,
1970, 264 стр.
Книга посвящена проб„г'е\е поиска опти-
оптимальных решении. После формализации
этой проблемы как задачи нахождения эк-
экстремума целевой функции основное внима-
внимание уделяется описанию вычислительных
процедур поиска (градиентных, релаксаци-
релаксационных, случайных и 1 д.). Описываются
способы преодоления трудностей, связанных
с наличием ошибок, ограничении, ыного-
экстремальности и «овражного» характера
функции цели.
Излагаются основные идеи поиска на
конечном множестве вариантов.
Несмотря на учебную направленность,
книга написана легким и живым языком.
Чтение ее не требует специальных математи-
математических знаний. Она рассчитана на широкие
слои читателей, интересующихся проблема-
проблемами кибернетики.
Илл. 116. Библ. 22 назв.
8-3-14
112-70
Памяти
Александра Ароновича
ФЕЛЬДБАУМА
ОТ АВТОРА Научно-популярные книги
бывают разных видов. Первые
представляют собой расширен-
расширенное издание журнального раз-
раздела «Знаете ли вы?!». Одна
гора фактов громоздится на дру-
другую, а связь их сводится к срав-
сравнениям типа: «Л больше В
в миллион раз, а В больше С
еще в миллион, и если А погру-
погрузить в вагоны поштучно, то
поезд протянется до звезды Про-
ксима...» и т. п. К счастью, по-
подобного рода литература начи-
начинает вызывать массовую анти-
антипатию и постепенно сходит со
сцены. В последнее время мод-
модными стали книги другого рода.
В них наука является канвой
и поводом для общих рассуж-
рассуждений, литературно-историче-
литературно-исторических эссе и интуитивных пост-
построений. Их пишут настоящие
ученые, обнаружившие в себе
литературные таланты, или на-
настоящие литераторы, осознав-
осознавшие очарование науки и ее
творцов. Хорошие книги этого
жанра доставляют истинное удо-
удовольствие. Их чтение столь же
приятно, как беседа с остроум-
остроумным и начитанным человеком,
всегда имеющим в запасе инте-
интересное изречение или любопыт-
любопытный анекдот. Правда, поневоле
сталкиваясь с необходимостью
коснуться в своем рассказе собст-
собственно науки во всей ее спокой-
спокойной и суховатой наготе, авторы
таких книг испытывают некоторое смущение: а стоит ли
утомлять внимание читателя деталями и тонкостями, не от-
отнести ли их в приложение, которое все равно читать не будут,
или просто изъять. Каждый из авторов находит свой путь
преодоления противоречия, но одно справедливо: останутся
детали в основном тексте или не останутся, они проник-
проникнут в сознание читателя главным образом как досадное
недоразумение. Ведь философские обобщения авторов столь
богаты и многообещающи, последний из рассказанных анек-
анекдотов столь остроумен, что просто некогда останавливаться
на разборе какой-нибудь теоремы или чертежа, надо скорей
читать дальше — ведь впереди еще столько занимательного.
Возможно, есть и особо настырные читатели, которые за-
задерживаются на упомянутых «деталях», но мне их искренне
жалко — ведь они лишаются львиной доли удовольствия
от таких занимательных книг.
Теперь самое время признаться, что книга, которую вы
сейчас раскрыли, хотя и называется популярной, но от-
отнюдь не является столь же остроумной и занимательной.
Это всего-навсего учебник, учебник по достаточно сложной
дисциплине — теории поиска наилучших, оптимальных
решений, теории выбора из многих возможных действий
такого, которое принесет наибольшую пользу. Если вы
хоть немного знакомы с тем конгломератом наук, который
условно называется кибернетикой, то, наверно, знаете, что
проблема оптимальности — одна из важнейших в науке
вообще, а в кибернетике — в особенности. Если же вы
совсем ничего об этом не знаете, но по природе любопытны
(это, как будет ясно из дальнейшего, основное условие для
знакомства с книгой), то загляните в § 1, который, собст-
собственно говоря, и представляет собой введение.
Дальше мне хочется сказать несколько слов читателям,
для которых тема поиска окажется интересной. Эта книга —
по своим целям учебник, поскольку автору хотелось не
только и не столько возбудить в читателе интерес к науч-
научным проблемам, но и дать ему возможность вкусить от пло-
плодов науки, обучив некоторым основным методам и приемам.
Она учебник и по своему построению, так как ведет от
простого к сложному, постепенно раскрывая новые уровни
понимания существа дела *). Вместе с тем это, конечно, и не
*).В книге можно выделить две части: первая (§§ 1 —11) содержит
основной материал, вторая (§§ 12—15) — вспомогательный, несколько
более сложный для усвоения.
настоящий «серьезный» учебник, поскольку предназначен
он для возможно более широкого круга читателей с разным
исходным уровнем знаний, например, начиная с уровня
9-го класса школы. Поставленная же цель — не просто
продемонстрировать «сияющие вершины» современной нау-
науки, а помочь читателю подобраться к ним по крутым логи-
логическим тропинкам,— вынуждает снабжать основное изло-
изложение подпорками в виде беглого и несколько поверхност-
поверхностного описания еще неизвестных школьнику разделов
науки, главным образом математики. Автор, однако, пред-
предполагает, что не только и не столько школьники будут чи-
читателями этой книги. Многие специалисты с высшим образо-
образованием получили его в то время, когда математика плохо
преподавалась и еще хуже воспринималась, ибо казалась
бесполезной для практика-инженера и тем более для биолога
или экономиста. Появление вычислительных машин произ-
произвело революцию во взглядах на практическую полезность
математики. Многие бывшие скептики отчетливо осознали
возможность математического моделирования реальных яв-
явлений, но не в состоянии затратить труд на освоение этих
возможностей по толстым учебникам, авторы которых,
как правило, мало заботятся о доступности материала для
читателей .с «дефектами» в теоретической подготовке. Зна-
Знакомство с этой книгой, конечно, не может полностью заме-
заменить систематического изучения затронутых в ней вопросов,
но все-таки она должна сыграть роль и первой освоенной
территории, и плацдарма для дальнейших завоеваний.
Именно последнее обстоятельство стимулировало усилия
построить книгу не как рецептурный справочник, с гото=
выми для употребления, но неизвестно откуда взявшимися
результатами, а как логичную конструкцию, вскрывающую
«идейную кухню» создания новых научных концепций и,
главное, их внутреннюю простоту. Можно надеяться, что
в силу этого просмотреть книгу будет небезынтересно даже
специалистам, непосредственно занимающимся теорией по-
поиска и ее приложениями.
Автор признателен редактору книги Л. А. Чульскому,
сумевшему превратить «доводку» рукописи в приятный и
творческий процесс.
Улучшению книги в значительной мере способствовали
советы, полученные от проф. И. Б. Челпанова и других
товарищей автора по Ленинградскому политехническому
институту. Весьма полезной была и обстоятельная критика
рукописи проф. А. Я. Лернером, которая была учтена при
подготовке ее окончательного варианта. Большую помощь
в проведении расчетов и подготовке графического материала
оказал М. Б. Улицкий. Всем им автор выражает искреннюю
благодарность.
Книга была задумана и писалась, когда крупнейший
советский специалист по теории и приложениям оптималь-
оптимального поиска Александр Аронович Фельдбаум уже был тя-
тяжело болен, и автору не удалось воспользоваться его со-
советами. Вместе с тем именно знакомство с работами
А. А. Фельдбаума, а позднее — с ним лично, побудило
в свое время автора, в числе многих других молодых иссле-
исследователей, заинтересоваться проблемами поиска. Посвящая
книгу его светлой памяти, автор лишь в малой степени
отдает дань тому глубокому уважению, которым пользо-
пользовался среди нас этот замечательный человек и ученый.
§1
ИНТУИЦИЯ
И ЛОГИНА
(Основная схема
поиска)
Все то, чего коснется
человек,
приобретает нечто человечье.
С. Маршак
Поиск — одно из наиболее
характерных явлений в челове-
человеческой деятельности. Мы при-
привыкли к таким глубоко различ-
различным по смыслу словосочетаниям,
как «поиск полезных ископае-
ископаемых», «поиск неисправностей»,
«поиск места в жизни», «поиск
наилучшей конструкции», и при
этом не считаем странным при-
присутствие во всех них одного
и того же слова. Конечно, ин-
интуитивно ясны те общие черты,
которые позволяют объединить
в нашем сознании разнородные
житейские, научные и техни-
технические ситуации в понятии
«поиск». Однако стоит подверг-
подвергнуть их логическому анализу
и четко выделить главное.
Прежде всего, ясно, что во
всех упомянутых ситуациях
что-то или кто-то разыскивается.
Следовательно, поиск предпола-
предполагает наличие цели. Наименова-
Наименование какой-либо цели и является
определяющим дополнением
к слову «поиск» в приведенных
выше примерах.
Далее, необходимо заметить,
что мы не говорим о поиске,
если поставленная цель дости-
достижима сразу. Поиск предпола-
предполагает движение к цели, является
процессом, разворачивающимся
во времени, представляет со-
собой последовательность дейст-
действий.
Более того, движение к цели
не является поиском, если к ней
ведет один, заранее известный
путь. Наличие множества воз-
возможных путей, необходимость
выбора среди них — существенная черта любого процесса
поиска.
Наконец, всякий разумный поиск осуществляется в со-
соответствии с некоторым планом, представляющим собой
правило выбора последовательных действий, алгоритм
поиска. Именно способ построения этого правила является
душой поиска, отражает принципиальную сущность про-
процесса, какие бы конкретные цели он ни преследовал —
поимку преступника или определение наилучшего режима
работы машины.
Поэтому основное содержание книги посвящено опи-
описанию различных алгоритмов поиска в том обобщенном
представлении, которое позволяет дать язык математики
и кибернетики.
Но прежде чем пускать в ход это мощное оружие, по-
попытаемся проследить чисто логически некоторые общепонят-
общепонятные и вместе с тем существенные идеи организации поиска.
Очевидно, что с каждым выбранным вариантом действий
связан определенный результат, исход этого действия.
В ряде случаев этот результат несет в себе только эле-
элементарную информацию: цель достигнута или не достиг-
достигнута. Если она достигнута, то, естественно, и искать дальше
нечего — процесс заканчивается. Если же нет, то на первый
взгляд само произведенное действие было бесполезным.
Однако в действительности это не так: ведь результатом
было то, что один из вариантов оказался опробованным
и забракованным, а следовательно, количество оставшихся
вариантов уменьшилось, и задача дальнейшего поиска об-
облегчилась.
Приведем один важный технический пример, где в ос-
основе лежит использование именно такой простейшей ин-
информации.
Цифровые вычислительные машины (ЦВМ) — крупней-
крупнейшее достижение современной техники, «чудо XX века».
Они состоят из тысяч различных деталей — сопротивлений,
емкостей, полупроводниковых элементов, соединенных
в сложнейшие схемы. Обилие деталей и сложность их связей
между собой — основная причина того, что эти машины
по праву называют «умными», но, с другой стороны, это
и основная причина неприятностей, испытываемых инже-
инженерами, работающими на ЦВМ. Ведь выход из строя хотя бы
одной из деталей может привести к тому, что «умная» ма-
машина начнет выдавать совершенно нелепые результаты.
8
Поиск неисправности, причины «сбоя» вычислений — пе-
печальная необходимость. Как выделить из множества блеков
и деталей машины виновника неприятности? В ход пускается
тест-программа: машину заставляют решать задачу, пра-
правильный ответ на которую известен, и притом известно,
какие блоки машины принимают непосредственное участие
в решении задачи. Если тест-программа прошла благопо-
благополучно, то, конечно, неисправность не обнаружена, но зато
проверено сразу много блоков, и их можно снять с подозре-
подозрения, занявшись проверкой других. Напротив, если ответ
оказался неверным, то неисправность где-то в затронутой
группе блоков. Тогда можно пустить новый тест, захваты-
захватывающий лишь часть подозрительных, и еще больше умень-
уменьшить число возможных мест возникновения неисправности.
Повторение этих действий, если они, конечно, разумно ор-
организованы, неизбежно приводит к успеху.
Приведенный пример очень характерен, однако, как
правило, исследование отдельного варианта приносит более
богатую информацию, позволяет не только уменьшить мно-
множество возможностей, но и указать, в каком направлении
вести поиск дальше, какой вариант опробовать следующим.
Поиск при этом часто напоминает детскую игру «горячо-
холодно» — чем ближе цель, тем «горячее», чем дальше
мы уходим от цели, тем «холоднее». И роль «подсказчика»
выполняет сам результат выбранного варианта действия.
Простейший пример: если в результате небольшого увели-
увеличения подачи окислителя к. п. д. двигателя стал немного
выше, значит, «горячее», значит можно еще немного увели-
увеличить подачу, и, возможно, станет еще «горячее», а может
быть, измерительные приборы покажут, что к. п. д. сни-
снизился. Значит, мы в процессе поиска «проскочили» тот
вариант подачи, при котором осуществлялась работа
с наибольшим к. п. д., и целесообразно вернуться немножко
назад.
Здесь мы сталкиваемся с важнейшей особенностью боль-
большинства осуществляемых в технике (да и не только в тех-
технике) процессов поиска. Эти процессы обычно основываются
на принципе: «близкие действия приводят к близкому эф-
эффекту». Если мы вместо одного варианта действий примем
другой, немного от него отличающийся, то окажемся либо
немного ближе к цели, либо немного дальше от нее. Пред-
Предположим, что мы оказались ближе к цели. Тогда сравнение
между двумя ранее рассматривавшимися вариантами, т. е.
выяснение того, в чем же, в каких особенностях, они раз-
различались между собой, позволяет выяснить тенденцию, на-
направление движения к цели. Можно подозревать, что при-
принятие варианта, еще больше отличающегося от первона-
первоначального в тех же особенностях, приведет нас еще ближе
к цели.
Таким образом, выяснение исхода, соответствующего
выбранному варианту или нескольким вариантам, помогает
решить, какой же новый вариант можно опробовать для
того, чтобы оказаться ближе к цели.
Результат опробования заранее не известен. Его при-
приходится выяснять либо путем вычислений, если задача
сформулирована в математическом виде, либо путем поста-
постановки опыта, эксперимента и последующих наблюдений
и измерений. Помните, как глупому мышонку подыскивали
наилучшую няню: «Лучше, мама, не пищи, ты мне няньку
поищи! Побежала мышка-мать, стала утку в няньки
звать»...
Итак, утка — первый вариант. Проводится его опробо-
опробование — первый эксперимент. Но результат неудовлетво-
неудовлетворительный: «Нет, твой голос нехорош — слишком громко
ты поешь!» Вариант два — жаба, но: «Очень скучно ты
поешь!», и т. д.
Налицо типичная схема процесса поиска: вариант, экс-
эксперимент, отбор по результату. Правда, у мышонка не было
четкого критерия отбора и плана действий. Поиск, как
хорошо известно, окончился для него самым печальным об-
образом. Такое же отсутствие четкости, несмотря на попытки
вырваться из дебрей интуиции, к сожалению, характерно
для всего рассказанного выше. Говорились слова «эффект»,
«близость к цели», «близость вариантов», а что это такое —
точно не определялось. Печальная судьба стихийного интуи-
циониста-мышонка еще раз призывает нас к точности и чет-
четкости понятий. Итак...
§2
И ЧЕМУ МЫ
СТРЕМИМСЯ?
{Понятие
о функции цели)
Зло и добро застигают
врасплох,
Тем, кто предскажет их
наперед,
Не верит никто.
Гёте, «Фауст»
Вопрос, поставленный в за-
заголовке, носит настолько глубо-
глубокомысленно расплывчатый ха-
характер, что, казалось бы, и ответ
на него должен быть сугубо
расплывчатый.
Однако стоит сузить смысл
этого вопроса: не будем искать
ответ на то, каковы возможные
цели человека или человечества,
а лишь опишем ту единственно
возможную (по нашему мнению)
форму, в которой может быть
выражена любая цель, если она,
конечно, ясно понята (по поводу
неясности вновь см. выше рас-
рассказ о глупом мышонке).
Итак, позвольте высказать
основную гипотезу, цель вся-
всякого поиска состоит в том, чтобы
найти что-нибудь лучшее, пе-
перейти из одного состояния в дру-
другое, которое лучше, предпочти-
предпочтительнее для субъекта, осущест-
осуществляющего поиск.
Но любой поиск предполагает
наличие множества вариантов,
путей, состояний. Принятая
аксиома утверждает, что, опро-
опробовав какие-либо два варианта,
можно, хотя и субъективно, оце-
оценить, какой из них дает лучший
результат, или по крайней мере
сказать, что оба эти варианта
равноценны.
Таким образом, мы предпо-
предполагаем, что во множестве вари-
вариантов имеется определенный
внутренний порядок — одни из
них лучше, другие хуже, хотя
этот порядок заранее (до прове-
проведения соответствующих экспери-
экспериментов, сводящихся к опробо-
ванию вариантов) не известен. Напомним, что если бы
таковой порядок был известен, то отпала бы необходимость
в поиске: можно было бы сразу выбрать наилучший ва-
вариант.
Итак, мы выработали довольно содержательную на пер-
первый взгляд концепцию: цель поиска, т. е. то, к чему мы
стремимся, заключается в отборе лучшего из многих срав-
сравнимых по результатам вариантов. Однако «что такое хо-
хорошо и что такое плохо?» На этот вопрос решительно отве-
отвечаем: лучше то, что больше. «Но почему?» — скажет возму-
возмущенный читатель.— «Разве больше войн, болезней, стра-
страданий — это лучше?!» Не надо обвинять нас в милитаризме
и антигуманизме. Мы согласны, пусть лучше то, что меньше.
Но в ответ — еще большее возмущение: «Разве меньше
пищи, одежды и т. п. (согласно известному списку земных
радостей) — это лучшее?!» Автору при этом приходится
последовать великому примеру Ходжи Насреддина: «И вы
правы, и вы тоже правы». Иногда лучше — это больше,
иногда лучше — это меньше, но в каждом конкретном про-
процессе поиска можно договориться, что лучше — меньше
или больше. Самое главное, что мы договорились о необхо-
необходимости сопоставления результата каждого варианта с оп-
определенным числом. Сравнив два числа, мы сможем теперь
сказать, какой из двух вариантов лучше. Правила отбора
вариантов теперь могут быть выражены строго математи-
математически. Пусть, например, мы договорились, что лучше — это
больше. Тогда, проверив вариант 1 и получив результат,
выражаемый числом а, а затем проверив вариант 2 и полу-
получив число Ь, мы можем сказать: если а>Ь, то вариант 1 луч-
лучше, если а < Ь, то вариант 1 хуже, если а — Ь, то оба вариан-
варианта равноценны.
Это уже серьезный результат. Его главная сила заклю-
заключается в том, что открывается возможность поручить дело
отбора вариантов вычислительным машинам, которые, ко-
конечно, не знают, что лучше, что хуже, но прекрасно (и зна-
значительно быстрее человека) умеют отвечать на вопрос:
что больше, что меньше. При громадном количестве вариан-
вариантов, возникающих в реальных процессах поиска, это имеет
немаловажное значение, в чем читатель еще сможет неодно-
неоднократно удостовериться.
С другой стороны, полученный результат меняет и сам
характер изложения: с этого критического момента мы
сможем перейти с зыбкой почвы философско-этических рас-
12
суждений на строгие рельсы математических методов. На-
Напомним, прежде всего, одно из основных математических
понятий — понятие функции. Пусть имеется произвольное
множество (набор) элементов и пусть с каждым элементом
связано определенное число. Тогда мы говорим, что на
множестве определена функция, а само множество называем
ее областью определения. Таким образом, сопоставив каж-
каждому из возможных вариантов, среди которых осуществляет-
осуществляется выбор лучшего, определенное число, мы тем самым задали
на множестве вариантов некоторую функцию, обычно назы-
называемую функцией цели. Область определения функции цели
часто называют областью поиска. Приступая к поиску, мы
обычно не знаем явного вида функции цели, но можем опре-
определить отдельные ее значения, осуществив проверку из-
избранного варианта. В процессе поиска мы обычно стремимся
к нахождению наилучшего варианта, т. е. варианта, кото-
которому соответствует наибольшее (пли наименьшее) значение
функции цели, хотя зачастую и удовлетворяемся такими
вариантами, которые являются просто более хорошими,
чем исходный. Все же, в любом случае, «заветной» целью
является получение наилучшего, оптимального варианта.
Поэтому задачи поиска часто называют задачами оптими-
оптимизации. В математике наибольшее значение функции именуют
максимумом, а наименьшее — минимумом, а и то, и другое
вместе — общим словом «экстремум». Отсюда иное название
задач поиска — экстремальные задачи — и наименования
многих ученых трактатов «О методах поиска экстремума»,
«О новых методах поиска экстремума», «О новейших ме-
методах» и т. п.
Итак, мы навели математический порядок в результатах
испытания различных вариантов. Но что же делать с самими
вариантами, как навести порядок в этом множестве возмож-
возможностей?
Общий рецепт здесь тот же: каждому варианту надо поста-
поставить в соответствие определенное число, или несколько чи-
чисел *). Простейший пример. Если растеряха обладает не-
некоторой методичностью, то при поиске затерянного в столе
конверта он начинает перебирать ящики стола по очереди,
например, сначала нижний в левой тумбочке, потом второй
снизу и т. д. Тем самым он упорядочивает множество
*) Иногда приходится сопоставлять даже функцию, но такими за-
задачами — задачами поиска в функциональном пространстве — мы за-
заниматься не будем по причине их сложности.
13
вариантов. Естественно было бы сопоставить левому нижнему
ящику число 1, следующему — число 2 и т. д. и изобразить
множество вариантов-ящиков в виде точек на числовой
оси (рис. 2.1).
Пусть искомый конверт лежит в 4-м ящике (чего расте-
растеряха, естественно, заранее не знает). Сопоставим каждому
варианту-ящику определенное число. Поскольку все ва-
варианты, кроме варианта 4, равноправны (конверта в них
0 12 3
Рис. 2.1.
нет), то и соответствующие им числа должны быть одина-
одинаковы. Пусть, например, все они равны единице (величина
здесь безразлична). Но варианту 4 надо сопоставить дру-
другое число. Пусть «лучшее есть большее», т. е. растеряха
ищет максимум. Тогда с вариантом 4 можно связать, на-
например, число 2. Вид функции цели оказывается таким,
как это показано на рис. 2.2. Ее максимум соответствует
варианту 4.
Функция цели в нашем примере задана только в конеч-
конечном числе точек (поскольку столов с бесконечным числом
ящиков, к счастью, не бывает!), такое задание часто назы-
называют дискретным.
Само построение функции является довольно искусствен-
искусственным и произвольным, хотя подобный произвол в математи-
математической формулировке задач поиска весьма употребителен.
Возможно, более понятным будет другой пример, где функ-
функция цели возникает значительно естественней. Вы крутите
ручку настройки приемника в поисках интересной станции,
наткнулись на такую станцию, но звук еле слышен, хотя
усилитель громкости на пределе. Тогда приходится ак-
14
куратно подстраиваться: повернешь немножко влево —
звук сильнее, еще немножко — еще сильнее, но хочется
лучшего, и крутишь еще влево и, увы, звук становится
более слабым. Возвращаешься назад, нащупывая самое
"Г—f
l I
I I
--? f
3 4
Рис. 2.2.
лучшее положение ручки, которому отвечает самое громкое
звучание. Это — типичный процесс поиска. Множество
вариантов — это множество положений (углов ер) ручки
настройки, оно естественно упорядочено — от крайнего
правого положения срп, где станция стала чуть слышной,
до крайнего левого <рл, где звук вновь ослаб до предела.
Функция цели — это зависи-
зависимость громкости А от угла ср.
Примерный вид этой функции
цели показан на рис. 2.3.
Понимание того, что такое
функция цели, в этом примере
существенно проще, однако
сам поиск максимума сложнее.
Сложность заключается в том,
что число вариантов здесь
бессчетно: любое положение
ручки настройки в пределах
между крайними углами срп и (рл может быть подозреваемо
на экстремум, а пересчитать все эти положения, или, что
то же самое, все точки на отрезке от <р„ до орл (рис. 2.3),
невозможно. Поэтому простой перебор, соответствующий
последовательному просмотру вариантов-ящиков в пред-
предшествующем примере, здесь также невозможен. Для точ-
точного определения экстремума приходится использовать
иные приемы, один из которых мы интуитивно реализуем,
вращая ручку настройки. Вместе с тем два описанных при-
15
Рис. 2.3.
мера роднит то, что множество возможных вариантов в обеих
задачах может быть изображено в виде множества точек
на прямой. Такие задачи являются в определенном смысле
простейшими и носят название одномерных (прямая — это
одномерное пространство, плоскость — двумерное, объем-
объемные фигуры — части трехмерного пространства и т. д.).
Но на практике чаще всего встречаются задачи более
сложной природы. В качестве вполне серьезного примера
рассмотрим задачу об оптимизации производства синтети-
синтетического каучука, сложного полимера, из простейших угле-
углеводородов — мономеров (дивинила и стирола), осуществляе-
осуществляемого в полимеризационных батареях *). Прохождение хи-
химических реакций в батареях зависит от многих факторов:
от скорости подачи основного исходного сырья и его про-
процентного содержания, от подачи дополнительных химикатов
Рис. 2.4.
(окислителей, восстановителей и т. п., общим числом более
десятка), от температуры процесса и от скорости перемеши-
перемешивания. Эффективность процесса обычно определяется сте-
степенью конверсии, т. е. процентом молекул мономеров, обра-
образовавших молекулы полимера. Целью поиска оптимального
режима является получение максимальной степени конвер-
конверсии путем подбора соответствующего сочетания факторов,
от которых зависит ход реакции.
Предположим, что факторов, которыми мы можем рас-
распоряжаться, всего два, например, температура и скорость
перемешивания, а остальные заранее заданы. Тогда каждый
возможный режим будет задаваться двумя числами t и v
(значениями температуры и скорости), что геометрически
мова.
16
*) Автор познакомился с этой задачей по работе Н. И. Гераси-
можно изображать точкой на плоскости с координатами t, v
(рис. 2.4), а все множество возможных режимов — область
поиска — заштрихованным прямоугольником, ограничен-
ограниченным прямыми, соответствующими предельным значениям
температуры (tn и ta) и скорости перемешивания @ и ик),
допустимым по условиям технологии. Поиск наилучшего
режима сводится к выбору такой точки из этого прямоуголь-
прямоугольника, т. е. такого сочетания t и v, для которого степень
конверсии окажется наибольшей.
Подобная задача поиска по двум параметрам называется
двумерной. Если бы имелась возможность выбора и других
факторов, влияющих на ход процесса, например процент-
процентного состава исходной смеси, то задача поиска преврати-
превратилась бы в трехмерную, четырехмерную и т. д.
Следуя традициям наших первобытных предков, будем
именовать все, что больше единицы, словом «много» и назы-
называть все задачи, кроме одномерной, «многомерными».
Как же распутаться во всем этом бессчетном множестве
вариантов, как построить разумную систему поиска? Пере-
Перебрать их все, как уже говорилось, невозможно. Придется
подумать о других способах, но об этом — в следующих
параграфах. А сейчас подведем некоторые итоги.
Мы договорились, что задачам поиска можно придать
строгую математическую форму, сопоставив каждому воз-
возможному варианту одно число или набор из многих чисел
(два числа — температура и скорость — в предшествующем
примере) и указав, что результат опробования каждого
варианта (результат эксперимента) также можно задать
некоторым, заранее (до эксперимента) не известным числом.
Мы узнали, что такое задание есть задание функции цели
на области поиска и что после его осуществления задачу
поиска можно рассматривать как задачу отыскания экст-
экстремума функции цели.
В заключение следует ответить на «проклятый» вопрос,
который неизбежно должен возникнуть у вдумчивого
и ехидного читателя: «А всегда ли можно придать такую
числовую форму реальным задачам поиска? Ведь чувства
не опишешь числом!» На него стоит прямо ответить: «К со-
сожалению, или к счастью, не всегда!» Во многих случаях
мы оказываемся в положении младенца, который в расте-
растерянности смотрит на дядю, спрашивающего: «Кого ты
больше любишь, папу или маму?» Нет, ни младенец, ни мы,
вполне взрослые люди, не сможем ответить на подобные
17
элементарные вопросы, не можем произвести сравнение,
упорядочивание и поиск самого любимого существа, самой
любимой песни, книги, оторваться от которой труднее,
чем от любой другой, наилучшего места прогулок и т. д.
Чувства действительно не формализуемы, да и кому
нужна формализованная любовь? Можно построить схему
поиска оптимального «друга жизни», но чувства здесь будут
явно ни при чем.
Однако, помимо этой заповедно-поэтической сферы на-
нашей жизни, в ней есть миллион проблем поиска, которые
могут быть четко формализованы и отнюдь не потеряюг
при этом своей прелести.
§ 3
ЛОВИСЬ РЫБНА,
БОЛЬШАЯ
И МАЛЕНЬНАЯ
(Поиск путем
перебора на сетке)
Опыт — вот основа познания.
Алкман (VI! в. до н. э.)
Столкновение с задачами, где
множество вариантов оказы-
оказывается бессчетным, заставило
нас отказаться от мысли, что
прямой перебор всесилен. Надо
придумать новые пути. Их под-
подсказывает нам уже знакомый
принцип: близкие действия при-
приводят к близкому эффекту (см.
§ 1). Теперь, взяв на вооружение
математический подход, мы мо-
можем изложить этот принцип
более строго: близким точкам
в области поиска соответствуют
близкие значения функции цели.
Читатель, знакомый с матема-
математикой, заметит, что этот прин-
принцип есть не что иное, как утверж-
утверждение о непрерывности функции
цели. Конечно, не всякая функ-
функция непрерывна, но, как пра-
правило, функции цели, естествен-
естественным образом возникающие в ре-
реальных задачах поиска, носят
именно такой характер.
Более того, обычно эти функ-
функции ведут себя гладко и плавно,
не делая резких изломов и не
допуская быстрых колебаний.
Счовом, ведут себя как вполне
благовоспитанная девица с за-
заученными манерами, а не как
мальчишка-сорванец, с которым
никогда нельзя быть уверенным,
что оч не выкинет чего-нибудь
этакого после минуты прилич-
приличного поведения.
Конечно, функции-сорванцы
также нередко появляются в за-
задачах и не меньше портят кровь
исследователям, чем их прото-
прототипы мальчишки — своим ма-
мамам. Но об этом — потом. Пока
19
же мы будем интересоваться благовоспитанными, гладкими
функциями.
Рассмотрим сначала задачу одномерного поиска. На
рис. 3.1 изображен вид функции цели. Ее максимум fm
достигается для варианта, соответствующего числу хт,
Цх)
¦Хц
Рис. 3.1.
а область поиска простирается от хн до хв. Если бы эта
картинка была перед нашими глазами, когда мы начинаем
поиск, то и сам поиск был бы не нужен. На самом деле мы,
как правило, имеем возможность только измерять отдельные
№
1
1
1
XT
/
/
/
/1
' \
1
1
1
1
1
1
1
}
1
1
1 I
1 1
1 1
-r
1
1
1
1
j
1
1
1
1
1
1
1
1
¦ о
-
'u
1 [
л\
1 1
1
J U 1 v<
Рис. 3.2.
значения функции, ставя эксперименты по проверке раз-
различных вариантов.
Будем систематичными и разработаем план экспери-
экспериментов заранее. Разобьем весь отрезок от хн до хв на
несколько, например 10, равных частей (рис. 3.2). Точки
{) ш {В) К
разбиения обозначим х
{1);
хш;
(р )
х{В). Кроме того,
20
положим х@)=хн; х{Щ—хв*). Эти точки называют узлами
сетки, а расстояние между ними — шагом сетки (шаг сетки
в нашем примере, очевидно, равен А = ¦¦ "Т^*" )¦ Предпо-
Предположим, что нами измерены значения функции для вариантов,
соответствующих узлам сетки. Соединим точки на рисунке,
соответствующие различным значениям функции, отрез-
отрезками прямых. Это построение обычно называют линейной
интерполяцией. Результат является новой функцией /л (х),
график которой представляет собой ломаную линию. Зна-
Значения функции /л (х) в точках сетки совпадают со значениями
функции f(x), максимум которой мы разыскиваем. Однако
в промежуточных точках эти две функции между собой,
наверное, различаются. Мы говорим «наверное», поскольку
поведение самой функции f(x) нам в действительности не
известно. Но тут-то и надо вспомнить о том, что она является
гладкой.
А в силу гладкости значения в промежуточных точках,
между точками, в которых произведено измерение, не может
резко меняться. Значит, отличия от наиболее плавного из-
изменения, изменения по прямой, наверно, малы и ими можно
пренебречь, а следовательно, разыскание максимума функ-
функции f(x) можно заменить разысканием максимума функции
/л(%), а это уже существенно проще. Сразу видно, что функ-
функция /л(х) достигает наибольшего значения в той точке на
отрезке, где значение на сетке является наибольшим. Тем
самым мы свели задачу поиска на бесконечном числе ва-
вариантов к задаче поиска, хотя и, строго говоря, приближен-
приближенного решения, но па конечном числе вариантов, равном
числу точек на сетке. Выбрав из этих вариантов наилучший,
т. е. соответствующий наибольшему из измеренных значе-
значений, мы и получим приближенный ответ на первоначальный
вопрос, какой из бесконечного множества исходных вариан-
вариантов является наилучшим. Для нашего примера (рис. 3.2)
это будет вариант, соответствующий числу х{В).
Заметим теперь, что формально для такого упрощения
не было необходимости строить функцию fn (x), прибли-
приближенно похожую на не полностью известную функцию f(x).
Она понадобилась нам только для пояснения сути дела.
Это пояснение можно было бы провести и с помощью других
*) Цифры в скобках наверху —это не степени, а номера точек,
пометки, индексы. Такие же обозначения будут использоваться
и далее.
21
функций, близких к f{x) и совпадающих с ней в точках
сетки. Простейший пример показан на рис. 3.3. Исходная
функция заменяется здесь кусочно-постоянной /„ (х). Зна-
Значения новой интерполирующей функции остаются неизмен-
неизменными при сдвиге от узла не более чем на полшага влево или
Тт
Рис. 3.3.
вправо. В предположении гладкости можно утверждать,
что максимум и этой функции мало отличается от макси-
максимума исходной, а максимум интерполирующей функции,
очевидно, совпадает с наибольшим из значений на сетке
f(xb). Результат тот же, что и при линейной интерполяции,
f(x)\
f(x)\
¦X
X®
Рис. 3.4.
-X
6)
однако есть маленькое, но существенное различие. Макси-
Максимум fn (x) достигается не в одной точке. В пределах посто-
постоянства от д;
.E>_A
до
+ -?r функция fn (х) неизменна,
следовательно, любые значения х, любые варианты, лежа-
лежащие в этих пределах, равнозначны и любой из них можно
считать приближенно оптимальным. Пожалуй, такой вывод
22
можно считать более честным, чем вывод об оптимальности
одного-единственного варианта, поскольку естественное
представление о гладкости, которым мы пользовались, явно
не исключает любого из показанных на рис. 3 4 видов пове-
поведения между узлами сетки.
Подведем итоги рассмотрения одномерного случая. Нами
выяснено, что учет гладкости функции позволяет заменить
эту функцию близкой, интерполировав ее по конечному
числу значений в узлах сетки, а уж для интерполирующей
функции нахождение оптимального варианта, или по край-
крайней мере маленького интервала, в пределах которого он
находится, является сравнительно несложным делом: оно
сводится к сравнению значений в узлах и отбору наиболь-
наибольшего из них.
Но ведь также можно поступить и в гораздо более тя-
тяжелых, многомерных задачах, в задачах поиска экстремума
функций многих переменных.
В двумерном случае, как мы уже договорились, множест-
множеству вариантов соответствует множество точек на координат-
координатной плоскости, где по оси абсцисс откладываются значения
одной из изменяющихся переменных, а по оси ординат —
другой. Обозначим эти переменные хх и х>. В описанной
выше задаче о выборе наилучшего технологического режима
х, имела смысл скорости перемешивания и, а хг — темпера-
температуры t. В этой задаче переменные t и v могли изменяться
только в ограниченных пределах, в заштрихованной на
рис. 2.4 области. Такая ситуация является обычной, и мы
будем считать, что и в любой задаче двумерного поиска изме-
изменение переменных хх и хг возможно только в пределах не-
некоторой ограниченной области, показанной на рис. 3.5.
Переменная хх изменяется в пределах от х1н до х1в, а хг—
от х1н до х,п. Разобьем отрезок от х1я до хХп на т, равных
частей, а отрезок от х„„ до х1в на тг равных частей (на
рис. 3.5 mt—12, тг—9). Через точки разбиения первого
01 резка проведем прямые, параллельные оси ординат, а че-
через точки второго — прямые, параллельные оси абсцисс.
Прямые из первого и второго семейств пересекутся, образо-
образовав сетку. Не правда ли, название «сетка» в двумерном
случае очень естественно, равно как и название «узел сетки»
для точек пересечения прямых?
Построенная сетка имеет шаг
Л — *1» Х1н
LA, ' '
1
23
по координате ху и шаг
Д
по координате х2; общее число узлов на сетке (в пределах
области возможного изменения на рис. 3.5) несколько боль-
больше, чем произведение mim2 (для прямоугольной области
оно точно равно (т!+1)(т2+1)).
Рис. 3.5.
Все наши действия по построению сетки были до сих
пор формальными и могли проводиться на бумаге. Перейдем
теперь к делу; измерим значения функции при значениях
переменных, равных значениям координат в узлах сетки.
Построим теперь мысленно интерполирующую функцию
f,, (Xi, Xz), значения которой в узлах сетки совпадают с из-
измеренными значениями f(x,, x.z) и остаются равными им
при отходе of узла не более чем на полшага в любую сто-
сторону. Поскольку поведение функции f(xb хг) хотя и не-
неизвестно, но благовоспитанно, интерполирующая функция
должна быть близка к ней во всех точках возможной об-
области изменения, а следовательно, и максимум f(xu x2)
близок к максимуму fn{xu x2). Последний же, очевидно,
24
может быть определен путем прямого отбора из всех изме-
измеренных значений наибольшего.
Рассуждения в двумерном случае, как видите, ничем
не отличаются от рассуждений в одномерном. Точно так же
мы можем рассуждать и в трехмерном и вообще в любом
многомерном случае. Хотя представить себе зрительно
сетку в четырехмерном случае невозможно, способ построе-
построения координат узлов по-прежнему ясен: диапазон возмож-
возможного изменения переменной х, разбиваем на тх частей, пере-
переменной x-z— на т2 частей и т. д., а затем, измеряя значение
функции при всех возможных сочетаниях значений каждой
из переменных, соответствующих точкам разбиения, отби-
отбираем наибольшее.
Для любителей формул это можно записать в следующем виде:
определяем наибольшее из значений функции
f{xu хъ . . ., хп)
при всех сочетаниях следующих значений координат:
где
Все это очень просто, но... достаточно утомительно.
Ведь число измерений и сравнений в четырехмерном случае
приблизительно равно произведению m,m2m3m4. Если от-
отрезки возможного изменения по каждой из переменных
разбиты на равное число т частей, то общее число узлов
в л-мерном случае равно т". Между тем число п переменных
(размерность задачи) может быть существенно больше ста
(в том, что такие задачи встречаются и довольно часто, по
крайней мере чаще, чем этого хотелось бы, читатель сможет
убедиться дальше). А если п=100 и по каждой переменной
диапазон разбит всего на два участка, то число узлов равно
З100 или приблизительно 1048, что, как любят писать в на-
научно-популярных книжках, есть 1 с 48 нулями — число,
вызывающее даже не уважение, а просто панику.
Представьте себе, что наша функция не измеряется,
а просто подсчитывается. Пусть ее подсчет сводится к ста
элементарным операциям. Общее число элементарных опе-
операций, которое могут произвести все вычислительные ма-
машины мира в секунду, не больше 109. Значит, все машины
25
48
могут сосчитать в секунду не более 107 значений функции,
а за год приблизительно 3-Ю14. Таким образом, для 10
вычислений потребуется более 103J лет. Очевидно, что днев-
дневное светило, дающее человечеству жизнь, успеет погаснуть,
прежде чем мы получим решение задачи! Но, может быгь,
это лишь «временные трудности», следствие несовершенства
вычислительной техники? Однако нетрудно убедиться в об-
обратном. Осуществление операции в принципе требует осу-
осуществления какого-нибудь физического явления. Самые
короткие из известных физических явлений, ядерные реак-
реакции при «сильных взаимодействиях», занимают приблизи-
приблизительно 10~23 сек. Типичным же для механики микромира,
квантовой механики масштабом длины является так называе-
называемая комптоповская длина, равная 3,9- 10~11сл*, а масштабом
времени 10~21 сек, т. е. время, необходимое для пробе-
гания комптоновской длины лучом света. Пусть явления
квантового масштаба поставлены на службу вычислитель-
вычислительной технике. Тогда быстродействие машины смогло бы
достигнуть l0i1—102' операций в секунду, или Ю28—1030
в год. Но... реализация 106" операций и при этом останется
столь же безнадежным делом.
«Ну что ж,— скажет после этого замученный десятками
нулей читатель,— говорите о безнадежно сложных задачах
и естественно приходите к безнадежным результатам».
Однако, дорогой читатель, задача поиска максимума
функции, зависящей от сотни или даже тысячи переменных,
не является безнадежной. Во многих случаях она может
быть решена и успешно решается на практике даже с по-
помощью современных «тихоходных» машин.
Но чтобы такое оказалось возможным, функция должна
обладать еще более благородным поведением, чем предпо-
предполагалось или, точнее, использовалось нами ранее.
К изучению таких функций и использованию их свойств
мы перейдем в следующем параграфе, а пока попытаемся
еще раз осмыслить уже освоенное.
Формально схема поиска сводилась к следующему: за-
заранее планировался набор возможных вариантов (узлов
сетки), результаты реализации которых (значения функции
в узлах) измерялись. Из этих значений отбиралось наиболь-
наибольшее (при поиске максимума) или наименьшее (при поиске
минимума). Именно это наибольшее (или наименьшее)
значение принималось за искомый максимум (или минимум)
функции. В качестве приближенно оптимальных рассмат-
26
V
к \
ривались все варианты,
координаты которых от-
отличались от координат
узла, где было обнару-
обнаружено оптимальное зна-
значение не более чем на
полшага сетки.
Идейным основанием
такой схемы являлось
предположение о том,
что при достаточно ма-
малом шаге сетки гладкая
функция не может суще-
существенно отклоняться от
интерполирующей функ-
функции, совпадающей с ис-
истинной в узлах.
Какой шаг считать
«малым» — зависит от степени гладкости, а точнее, от ве-
величины наибольшего возможного изменения функции между
узлами. Если это наибольшее изменение заранее не из-
известно, то его практически можно оценить по изменяемости
значений на сетке. Поскольку координаты узлов сетки
были выбраны без всякой связи со свойствами функции,
то можно предположить, что разность между значениями
в узлах и промежуточными значениями не- превосходит
по величине наибольшей из разностей между значениями
на соседних узлах сетки, что и даст нам значение погреш-
погрешности в определении экстремума. Конечно, эту погрешность
можно определить лишь после производства измерений на
уже заданной сетке.
Что же делать, если эта погрешность окажется слишком
большой? Остается, естественно, только уплотнить сетку,
производя большее число измерений *).
Таким образом, мы можем оценить эффективность выбора
сетки, степень «малости» шага только после осуществления
измерений на этой сетке и обработки результатов, т. е.,
как говорят, после изучения самой функции.
Идея гладкости, непрерывности функции натолкнула нас на мысль
о самой возможности замены рассмотрения бесчиспенного множества
*) Понятно, что практически это целесообразно делать лишь в той
области изменения параметров, где велика изменяемость.
27
вариантов конечным, но ей явно не хватало определенности для полу-
получения знания о том, какое же число вариантов является достаточным
для оценки оптимума с требуемой точностью.
Весьма широкий класс функций удовлетворяет известному в матема-
математике условию Липшица: для любых точек х{1) и ж12' существует такая по-
постоянная величина L, что
| f (*«>) _
Тогда разность межлу значениями функции в любой промежуточной
точке и значениями в узлах не превосходит Lit, т. е. постоянная Лип-
Липшица L есть именно та численная мера гладкости, знание которой доста-
достаточно для выбора величины шага при заданной погрешности. Приведен-
Приведенный выше практический прием оценки погрешности, но существу, сво-
сводится к оцевке константы Липшица на основе измерений в точках реали-
реализованной сетки.
БЛИЖНИЙ БОЙ
(Локальный поиск
на сетке)
Крохотная травка, шаги твои
мелки, но ты завладеваешь
землей под стопами своими.
Р. Тагор, «Залетные птицы»
Панически огромные числа,
к которым мы пришли, планируя
поиск на заранее заданной сетке,
заставляют задуматься над дру-
другими идеями, заставляют искать
другой способ планирования
экспериментов по проверке ва-
вариантов на наибольшую эффек-
эффективность. Но придумать сложно:
ведь мы ничего не знаем заранее
о поведении функции (кроме ее
относительной гладкости). Лю-
Любой вариант, любая точка из
допустимой области может быть
одинаково подозреваема в том,
чтобы быть оптимумом. Какой
план может быть в этом случае
разумнее, чем равномерная рас-
расстановка разведочных точек —
узлов сетки? Действительно, ни-
никакого лучшего заранее при-
придуманного плана не построишь.
Значит, выхода нет; значит, при-
придется смириться с тем, что чело-
человечеству не дождаться решения
столь любопытных задач об оп-
оптимуме функции от всего-навсего
ста переменных?
К счастью, выход есть, и от-
ответ столь же парадоксален,
сколь и поучителен: надо от-
отказаться от заранее намеченного
плана действий. Заранее наме-
намеченный план, жесткая программа
расстановки разведочных точек
должна быть заменена гибким
планом, в котором выбор каж-
каждого нового проверяемого ва-
варианта зависит от результата,
полученного при опробовании
предшествующих. Приступим
к реализации этой новой идеи
с осторожностью, сохранив
29
первоначально некоторые черты старого принципа — пере-
перебора значений на заранее заданной сетке.
Рассмотрим двумерную задачу, в которой множество
вариантов изображается множеством точек на прямоуголь-
прямоугольнике (рис. 4.1). На прямоугольнике наметим сетку с 35 уз-
узлами. Применим сначала метод прямого перебора. Для этого
нам придется провести измерения во всех точках сетки,
последовательно сравнивая измеренные значения и выбирая
' V т f т
1
1 I
I
1
1
j
5
4 \
3
2
1
О
4 5
Рис. 4.1.
¦Л,
из них минимальное (для разнообразия предположим, что
оптимальным является вариант, дающий наименьшее зна-
значение). Порядок, последовательность выбираемых для из-
измерений вариантов, безразличен, но какой-нибудь порядок
надо принять, иначе можно и пропустить какую-нибудь
точку. Чаще всего применяют два способа: строчную раз-
развертку (рис. 4.2) и спиральную развертку (рис. 4.3). Слово
«развертка» применяется потому, что последовательность
перебираемых вариантов как бы разворачивается в одно-
одномерную (во времени) цепочку, а слова «строчная» и «спи-
«спиральная» соответствуют виду пути, который мы проделы-
проделываем на плоскосги, переходя от одного варианта к другому
(на рисунках варианты занумерованы по порядку осущест-
осуществления измерений).
Итак, действуя в определенном (заранее!) порядке, мы
обошли все точки сетки, провели измерения (их результаты
30
показаны на рис. 4.4 в кружках) и установили, что минимум
находится в точке с координатами х,-=5, х3—4 (или, точ-
точнее, в ее окрестности). Для этого, повторяю, пришлось
5
4
3
2
it
15
28
29
1
2
13
16
27
30
3
12
/7 *
26 "*
4
18
25
32
5
10
19
24
33
6
9
20
23
34
7
t
8
r
22
35
5
Рис. 4.2.
35
~*
--33-
Q7
04 r>
Zt (
20'
19
18
1
7
22
7 e
t '
6
i
6
23
8
1
4
15
I
I
24
9
3 2
r
3
14
i
25
10
i
1
'11
12
3
26
27
28
29
30
12 3 4 5 6 7
Рис. 4.З.
провести 35 измерений. Теперь забудем, что мы прошли этот
тяжелый путь, и попытаемся осуществить поиск по-дру-
по-другому, руководствуясь новой идеей: «выбор следующего ва-
варианта должен зависеть от исхода проверки предыдущих».
31
У начального варианта нет предыдущего, поэтому можно
начать с любого, произвольно выбранного среди возможных
5
х
г\
5
4
3
2
© © © 00
© @ © @
03 QD
@ @ © © © © @
© © @ © © © QJ)
I 1 (
2 3 4 5 6 7
Рис. 4.4.
— о
- о
- о
- о
о
О
о
о
1
0
о
Q
о
о
1
о
©//
о
о
©12
4
1
7«
W
@3
о
,
о
@8
1
(
"г
if
@5
о
о
©г
О
12 3 4 5 6 7
Рис. 4.5.
(возможными будем пока считать только варианты, соот-
соответствующие намеченным ранее узлам на все той же сетке).
Пусть этот первый попавшийся узел есть точка с коорди-
координатами х1=6, х2=2. Дадим этой точке номер / (рис. 4.5).
32
Первое (по времени!) измерение дает значение функции
(результат, конечно, тот же, что и при старой схеме изме-
измерений).
Может быть, мы натолкнулись случайно на самый луч-
лучший вариант р наименьшим значением функции? Если это
так, то он, будучи лучшим из всех, наверняка лучше своих
соседей на сетке. Проверим это: двигаясь на один шаг
вправо и влево, вверх и вниз, произведем еще четыре изме-
измерения и сравним результаты *). Оказывается, что варианты
3 и 4 лучше исходного и подозрение на оптимальность ва-
варианта 1 было напрасным. Лучший из известных нам те-
теперь— вариант 4— дал значение /D)=15. Может быть,
он лучший из всех? Снова сверимся с его соседями: сдвиг
вправо — влево, вверх-вниз потребует трех новых изме-
измерений. Результаты вновь говорят: и вариант 4 заведомо
не лучший, ибо в точке 7 значение функции меньше: /G)—12.
Снова подозрение, уже на вариант 7, снова опрос соседей,
из коих только два новых, неопрошенных. На одного из
них, за номером 10, вновь падает подозрение: /A0)=7. Оп-
Опрашиваем соседей, и новенькие 11 и 12 в один голос заяв-
заявляют: «Нет, мы не лучше десятого!» Итак, вариант 10 со зна-
значением /A0)-~ 7 признан наилучшим всеми своими сосе-
соседями. (Если бы шел опрос соседей по квартире, то мы вряд ли
когда-нибудь добились такого единодушия, но ведь матема-
математика тем и сильна — а может быть, слаба?,—• что заме-
заменяет все эмоции в оценке «лучшести» простым языком чи-
чисел.) Мы, осуществившие раньше тяжелую работу по про-
проверке всех 35 вариантов, знаем, что в данном случае «глас
соседей — глас божий»; вариант 10 с координатами E; 4)
действительно лучше всех. Его поиск потребовал всего
12 измерений, причем «подозрительных на оптимальность»
было по пути (показанном на рис. 4.5 стрелками) всего
четыре. Но, может быть, это просто случайное совпадение,
результат удачного выбора исходной точки? Нет, не так
просто. Читатель может проверить, что даже для наиболее
неудачного начального варианта — точки с координатами
B; 1) — общее число измерений равно 21, т. е. существенно
меньше общего числа узлов сетки.
*) Если подозреваемый узел лежит на границе, то опрашиваются
только «соседи» внутри допустимой области.
33
Итак, мы нашли способ избавиться от необходимости
полного перебора, и этот способ очень прост: поиск начи-
начинается с произвольно выбранного узла, производятся изме-
измерения в ближайших узлах, из них выбирается тот, который
дает лучший результат, оцениваются результаты в ближай-
ближайших узлах к выбранному и т. д. Процедуры однообразно
(циклически) повторяются вплоть до того момента, когда
найдется вариант лучший, чем все ближайшие к нему.
Этот вариант и оказывается оптимальным. Процедуры та-
такого рода (а они очень разнообразны, в чем мы скоро убе-
убедимся) называются итерационными процедурами локаль-
локального поиска. «Итерация» означает повторение, а слово «ло-
«локальный» равносильно русскому слову «местный» (ведь мы
производим сравнения только среди соседей!).
Достоинства этой схемы скажутся еще сильнее, если мы
уменьшим шаг сетки. Из рис. 4.6 ясно, что при уменьшении
to
9
8
7
6
S
3
г
1
/ 2 3 4 5 6 7 8 9 10 11 12 13 Я
Рис. 4.G.
шага сетки вдвое (по каждой координате) общее число
узлов выросло почти в четыре раза: 13x9=117, а число
измерений, потребовавшееся для обнаружения оптимума,
увеличилось меньше чем вдвое. (На рис. 4.6 показаны резуль-
результаты измерений непосредственно в тех точках, где их приш-
пришлось по пути к оптимуму произвести. Их общее число равно
20.) Еще в большей степени сказывается выигрыш от пере-
перехода к итеративной схеме поиска для задач большей раз-
размерности. Жаль, что нам не удается увидеть это наглядно
34
на картинке, но причина успеха должна быть ясна: ведь
осуществляя итеративный поиск, мы движемся вдоль не-
некоторых кривых, называемых траекториями поиска (именно
они и показаны на рис. 4.5 стрелками).
Если эти траектории не очень извилисты, то число точек
на них не слишком превышает числа точек на одномерных
сетках, на которые разбиты диапазоны изменения каждой
из координат. Эти числа были обозначены в § 3 через
mi+1, m2+l так что длина траектории поиска может
быть оценена числами шагов (точек измерения)
— в одномерном случае,
— в двумерном,
— в трехмерном и т. д.
Если все они равны, то число точек на траектории в п-мер-
ном случае можно оценить величиной пт (во всех рассмот-
рассмотренных нами примерах траектории были существенно ко-
короче). Заметим, что при движении нам приходится опраши-
опрашивать еще и соседей — ближайшие узлы к узлам, лежащим
на траектории. Таких соседей у каждой точки в одномерном
случае — 2, в двумерном — 4=2x2, в трехмерном — 6=
=2x3, в п-мерном — 2п. (Из этих чисел следовало бы еще
вычесть двух соседей, которые сами лежат на траектории,
но при большом п числа 2п и 2п—2 мало отличаются друг
от друга.) Оказывается, что общее число измерений, необ-
необходимых для реализации итеративного поиска, можно оце-
оценить числом 2п2т. Подсчитаем, что же получается в страш-
страшном случае ста переменных (л=100) с сеткой т=10. Наша
оценка (очень грубая!) дает всего 2-10- вариантов, а это
не идет ни в какое сравнение с чудовищным числом со ста
нулями, определяющим общее количество вариантов, ко-
которое пришлось бы обследовать при полном переборе!
Итак, можно гордиться: мы добились решающего успеха,
быстро сможем расправиться с самыми страшными задачами,
поднести их в дар человечеству и даже подождать, скромно
отойдя в сторонку, пока оно, растроганное и благодарное,
не увенчает нас лаврами победителей. Но... надо срочно
уберечь себя от зазнайства и подумать, какой ценой достался
успех и какова истинная цена этого успеха.
В действительности этот успех оценивается тем, что мы
предали простое и благородное представление о непрерыв-
непрерывности функции, на котором зиждется простой перебор на
сетке, и заменили его на страшно узкое предположение
35
о том, что всякий вариант, лучший соседних с ним, является
лучшим среди всех других. Иначе говоря, мы заменили
задачу поиска глобального (всеобщего) экстремума куда
более простой задачей поиска локального (местного) экст-
экстремума. Решения этих задач совпадают только в двух
случаях: если функция такова, что во всей возможной
области изменения переменных она имеет единственный ло-
локальный экстремум, или же случайно окажется, что тот
локальный экстремум, на который мы наткнулись, и есть
глобальный (иногда называемый длинным латинским сло-
словом экстремум экстреморум, что равноценно титулу «ве-
«величайший из великих»).
Таковы понесенные жертвы: мы грубо осквернили неза-
незапятнанный алтарь всеобщности. Но... как не стоило слиш-
слишком возносить себя, так не стоит и слишком очернять:
ведь если бы мы остались верны чистой идее непрерывности,
то просто не знали бы, как и подступиться к задачам боль-
большой размерности. Пожертвовав же ею, получили шанс
добыть титул если не «величайшего из великих», то хотя бы
просто «великого». Кроме того, есть множество функций,
для которых заранее известно, что они имеют единственный
локальный экстремум.
Заметим, прежде всего, что если функция действительно
является гладкой, т. е. изменяется не только мало, но
и медленно, плавно, то, убывая вблизи локального макси-
максимума, она не должна менять свое поведение и при некотором
удалении от него, т. е. если область поиска содержит внутри
себя локальный экстремум и ее протяженность не слишком
велика *), то этот экстремум почти наверняка единственный.
Таким образом, переходя к итеративным процедурам ло-
локального поиска от полного перебора на сетке, мы можем
оправдывать свое поведение той же ссылкой на гипотезу
о гладкости функции, правда, понимая под этим нечто су-
существенно более ограниченное. Чтобы окончательно убе-
убедиться в ограниченности новой гипотезы, посмотрим на
рис. 4.7, где изображена вполне гладкая функция одной
переменной. Будем искать ее минимум в допустимой об-
области, ограниченной числами 2 и 10. Наметим сетку с ша-
шагом А = 1 и начнем осуществлять процедуру локального
поиска. Нетрудно убедиться, что, с какого бы узла сетки
*) Понятие «не слишком велика» не слишком определенно, но это
же касается и понятия «гладкости» или «благовоспитанности».
36
мы ни начали поиск, он закончится в узле х—5, /=2,1.
Эту же точку мы, конечно, получим и прямым перебором.
Локальный минимум функции является здесь и глобальным.
Но попытаемся теперь искать вариант, отвечающий не
наименьшему, а наибольшему значению функции. Начнем,
например, с точки х=Ь. Значение в ней /^=2,2. Проверяем
соседей: при х^=3 находим /=2,4, при х=Ъ находим /-=2,1.
Значит, подозрение переходит на точку х=3. Повторение
2 3 4 5 6 7- 8 9 10 11 12
Рис. 4.7.
процедуры приводит нас в точку х=2, где /=3. Дальше
двигаться некуда, ибо у этой точки в допустимой области
только один сосед (х=3), и в нем значение функции меньше.
Таким образом, при х=2 найден максимум. Но мы-то,
видящие «свыше» весь ход изменения функции, понимаем,
что он не является глобальным, что глобальный максимум
равен 5 и отвечает варианту х= 10.
Итак, локальный поиск даже для такой благопристойной
функции может не привести к полному успеху.
Некоторым утешением служит то, что ежели бы началь-
начальная точка была взята где-нибудь правее х=А, то мы бы
пришли к правильному значению. Еще хуже дело в дву-
двумерном случае: для функции, представленной на рис. 4.4
своими значениями на сетке, локальный минимум, как мы
убедились, единственный, но локальных максимумов целых
37
три, и в зависимости от того, какой вариант мы примем
в качестве начального, локальный поиск может привести
нас к любому из них.
Итак, мы окончательно убедились в том, что итератив-
итеративные процедуры локального поиска ограничены по своим
возможностям, но продолжаем настаивать, что все же это —
великое изобретение. Никто не упрекнет нас за это в не-
нескромности, так как хорошо известно, что среди действи-
действительных изобретателей локальных процедур — такие вели-
величайшие ученые, как Ньютон и Гаусс, бывшие не только мате-
математиками, но и естествоиспытателями, прекрасно понимав-
понимавшими всю важность решения оптимальных задач для практи-
практики. Правда, мы познакомились лишь с самой примитивной
из известных итеративных процедур. Возможно, и Ньютон
и Гаусс решительно отказались бы от того, чтобы описанная
схема «проверки соседей» связывалась с их именами, но
все же и в этой схеме проявились некоторые особенности
более изящных и эффективных процедур поиска, к описа-
описанию которых мы и перейдем далее.
§ 5
МЫСЛЬ И ДЕЙСТВИЕ
(Пропорциональный
поиск)
о стебельку, — сказал
1ИКИЙ БЭКОН, — АЛЫ
1равленье ветра узнаем».
Байрон, «Дон-Жуан»
Всякое новшество возникает
в результате бунта против сло-
сложившихся традиций, однако из
всякого только что родившегося
нового всегда выпирает старое.
Вот и в только что описанной
нами итерационной процедуре
столь же явственно проявляются
черты метода перебора по узлам
сетки, как в форме первых авто-
автомобилей — черты их прароди-
прародительницы — кареты. В самом
деле, если мы не собираемся
перебирать все варианты на сет-
сетке, заранее планировать,. всю
последовательность эксперимен-
экспериментов, и ограничились только по-
поиском локального экстремума,
зачем же нам сохранять саму
сетку? Отречемся же от нее,
сохранив из уже известной ите-
итерационной процедуры только но-
новое — идею выбора следующего
варианта на основе сравнения
предшествующего с его сосе-
соседями и дополнив ее еще одним
новым элементом — понятием
предвидения, прогноза пове-
поведения функции. Поговорим о нем
подробнее, ограничиваясь пока
рассмотрением только простей-
простейших, одномерных задач.
Пусть необходимо разыскать
максимум функции f(x), причем
вид ее нам не известен, и мы
располагаем единственной воз-
возможностью — измерять или вы-
вычислять значения функции в от-
отдельных точках. А раз так,
выберем произвольную точку
х{0) и найдем f(x°). По одному
измерению ни о чем нельзя су-
судить, нельзя сказать, хорош или
39
тш>х первоначальный выбор. Для этого надо сделать по
крайней мере еще одно измерение и прозвести сравнение
результатов. Для сравнения возьмем какую-нибудь близ-
близкую точ-ку с координатой х(в)+Л, где А — малая положи-
положительная величина.
Возможны три варианта:
а) f(xw+\)>f(xw) — при возрастании аргумента на А
выросло и значение функции;
б) f(xl0)+A)<f(xl0)) — при возрастании аргумента зна-
значение функции уменьшилось;
в) f(x@)+A)=/:(x@)) — значение функции осталось не-
измеиным.
Оставим пока в стороне последний вариант. Ясно, что
при произвольном выборе начальной точки точное равенст-
равенство — почти невероятный случай.
Рис. 5.1.
Из результатов же типа (а) или (б) можно сразу сделать
важные выводы. Так как функция является гладкой и ме-
меняется плавно, то отмеченные при малом сдвиге А тенденции
роста или убывания, наверное, сохранятся и при большем
удалении от исходной точки.
Для простоты предположим, что поведение функции
можно хорошо аппроксимировать прямой, проведенной
через две измеренные точки (рис. 5.1, а, б). Если такая ги-
гипотеза принята, то ясен и дальнейший план действий.
В случае (а) надо сделать -шаг вправо, в сторону роста ар-
аргумента, а в случае (б) — влево, в сторону его убывания,
f&+4-
а затем, следуя основному принципу итерационных про-
процессов, повторить ту же процедуру в новой точке. Важно
лишь разобраться, какой величины делать этот шаг. Сразу
ясно, что если принять его равным А, то мы снова придем
к уже изученной простейшей процедуре: хоть сетка заранее
и не строится, но точ-
точки измерения автомати-
автоматически будут идти через
А, так что построение
произойдет само собой.
Поэтому выдвинем /уу
еще одно разумное пред-
предположение. Наклон пря-
прямой, проведенной через
две близкие точки на
графике функции, опре-
определяет крутизну склона
вблизи этих точек (рис.
5.2). Чем круче этот склон, чем быстрее растет (или убы-
убывает) функция, тем, по-видимому, больше шансов на то,
что рост (или убывание), хотя, возможно, и с другой ско-
скоростью, будет сохраняться и дальше. Следовательно, вели-
величину шага разумно увеличивать с ростом крутизны склона.
Будем оценивать крутизну функции вблизи точек х и *+А
тангенсом угла г|з наклона аппроксимирующей прямой, т. е.
величиной
f{x+&)-f(x)
д
отношением изменения функции к вызвавшему его измене-
изменению аргумента. Так как эта величина различна для раз-
различных х и А, то будем обозначать ее S(x, А). В зависимости
от того, какая из уже перечисленных ситуаций возникла
в конкретных точках х и х+А, она, естественно, может быть
положительной, отрицательной или равной нулю.
Итак, мы договорились, что будем соразмерять вели-"
чину шага с величиной S, вычисленной по результатам
измерений крутизны. Более того, примем эту величину
пропорциональной крутизне. Тогда итеративная схема по-
поиска максимума полностью определится формулами:
$(Х , 1\)— .
где t— номер итерации (*=0, 1, 2, . . .), а 9 — постоянный
положительный коэффициент пропорциональности. Дейст-
Действительно, из исходной точки х@) мы, в силу этой формулы,
й й A
перейдем к новой хA), сделав шаг
x(i>_x(O> = 0S(x(O\ А).
Если5(х@\ Д)>0, т. е. /(х@)+Л)>/(х@)), то шаг, как и тре-
требовалось, будет сделан в сторону возрастания аргумента.
При S(xi0), A)<0 шаг будет сделан в противоположную
сторону. При этом в обоих случаях его величина окажется
пропорциональной величине крутизны. В точке хш все
повторится: вновь будет оценена крутизна
что позволит найти величину и направление нового шага,
и т. д.
Вся процедура естественно распадается на части, от-
отдельные итерации. В ходе каждой из них сначала произ-
производится изучение поведения функции по двум близким точ-
точкам, затем используется предположение о том, что это
поведение будет сохраняться и в отдалении от изученных
точек, и, наконец, производится действие — оптимальной
величины шаг в новую точку.
Итак, описанная схема воплощает в себе единство опыта,
размышления и действия. Важно, что действие в ней, в от-
отличие от простейшей схемы, не сковано узкими рамками
непосредственного опыта: выбор величины шага может быть
осуществлен в определенной мере независимо, путем зада-
задания различных значений коэффициента пропорциональ-
пропорциональности 0. Этот коэффициент как бы символизирует степень
доверия к выдвинутым гипотезам и вместе с тем степень
нетерпеливости ищущего. Большие 0, очевидно, соответст-
соответствуют большему доверию и меньшей терпеливости.
Но какова разумная степень доверия, как распорядиться
предоставленной свободой выбора шага? Для ответа на этот
вопрос потребуется тщательное изучение новой схемы по-
поиска, обычно называемой «пропорциональной схемой».
Однако прежде всего надо ответить на еще более простой
вопрос: хотя при построении схемы мы и исходили из ра-
разумных предположений, не может ли она привести нас
не к желанному (пусть хотя бы и локальному!) максимуму,
а к какой-нибудь ничем не примечательной точке?
42
Обратимся вновь к основной формуле. Ясно, что если
крутизна вблизи точки x{U не равна нулю, то схема авто-
автоматически потребует ухода из этой точки. Но если вдруг
на каком-нибудь шаге с номером t=l окажется, что
S{xU), A)—0, то формула даст ответ:
иначе говоря, дальше идти не нужно. Значит, точка воз-
возможной остановки схемы удовлетворяет условию
или, что то же самое,
Итак, процесс поиска автоматически остановится, как
только значение функции в очередной точке окажется рав-
равным значению в чуть сдвину-
сдвинутой, т. е. как только возникнет
тот самый вариант (в), кото-
который мы в начале параграфа а\
не стали рассматривать. Тогда
это было разумно: ведь речь
шла о начальной, исходной
точке, где такая ситуация
почти невероятна. Но теперь
мы убедились, что итератив-
итеративная схема сама обладает свой- g)
ством не успокаиваться, пока
не доберется именно до этой
ситуации. Придется в ней под-
подробнее разобраться, посмот-
рев, как может вести себя »\
функция f(x) вблизи точек '
х«> и х«>+Л.
Прежде всего, памятуя о
гладкости, ограничимся толь-
только тремя возможными вариан-
вариантами (рис. 5.3, а, б, в). В случае
(а) во всех точках между xil) и х«Ч-Д значение функции
больше, чем в этих точках. Среди этих точек есть наилуч-
наилучшая хтах. Поскольку Д мало, то и /(хтах) мало отличается
от найденного в процессе поиска f (x">), так что цель — оп-
определение локально наилучшего значения — можно счи-
считать достигнутой, как только найдено xil). Но ведь, на пер-
Рис. 5.3.
43
вый взгляд, возможен и случай (б), и это было бы катастро-
катастрофой, ибо такая остановка приводит нас в окрестность
не максимума, который мы искали, а минимума. К счастью,
ее легко избежать. Стоит только немного сдвинуться от
точки х{1) влево или вправо (рис. 5.4) и повторить измерения,
л'Ы
Рис. 5.4.
как итеративная процедура начнет автоматически уводить
от опасного места. Действительно, сдвинемся чуть вправо,
тогда измеренная крутизна окажется положительной и но-
новая точка, найденная по формуле поиска, окажется еще
правее. Если же сдвинемся влево, то крутизна окажется
отрицательной и формула потребует производить новое
измерение еще левее, т. е. в точке с меньшей координатой.
Ясно теперь, что хотя остановка в положении, показанном
на рис. 5.3, б возможна, но это положение неустойчиво по
отношению к любым малым изменениям, и ее, следова-
следовательно, легко избежать, осуществив контрольные измере-
измерения в чуть сдвинутых (по отношению к xU) и x(Z)+A) точках.
Наконец, возможен и случай, изображенный на
рис. 5.3, в, где остановка произошла и не из-за того, что
мы попали в искомую окрестность максимума, и не из-за
того, что случайно забрались в окрестность минимума.
Здесь точки х{1) и х(/)+А оказались просто на строго гори-
горизонтальной прямой.
Этот случай математически действительно криминаль-
криминальный, и нежелательная остановка здесь неизбежна.
Таким образом, поиск экстремума с помощью метода,
основанного на вычислении крутизны, может не привести
к цели, если функция имеет участки строгого постоянства *).
*) Тем же недостатком обладает, конечно, и метод поиска путем
опроса соседей на сетке, описанной ранее.
44
Однако стоит отметить, что в природе, в отличие от идеаль-
идеальных-математических построений, ничего строго постоян-
постоянного не бывает. Для функций цели, возникающих естествен-
естественным путем, возможны случаи, показанные на рис. 5.5.
Здесь остановка произошла в окрестности и локального
максимума, и локального минимума. И тот, и другой —
лишь маленькие детали на фоне основного склона (ведь
в пределах А большие изменения невозможны), но, увы,
наш метод — локальный и потому не застрахован от тяго-
тяготения к таким мелким бугоркам на склоне. Пожалуй, и не-
неудачу с горизонтальной площадкой стоит рассматривать
как некий предельный вариант неудач с бугорками и счи-
считать неизбежной карой за
локальный подход. Л /
Надо отметить и другое, уже по-
полезное обстоятельство: хотя метод
¦со
Рис. 5.5.
и локальный, но на слишком мелких бугорках — локальных экстрему-
экстремумах, остановка происходить не будет. В этом нетрудно убедиться,
глядя на рис. 5.6. Склон изборожден многочисленными буграми и ям-
ямками, однако они настолько малы, что функция не отличается от прямой
с крутизной S больше чем на величину р, причем p<SA/2. Ясно, что кру-
крутизна, вычисленная по значениям самой функции, в любых точках х
и х-\-к будет иметь тот же знак, что и крутизна S на «неизрытом» склоне.
Делая пробы только на расстоянии Д, мы как бы не замечаем мелких
бугорков на склоне и смело шагаем в правильном направлении, хотя
темп этого движения может оказаться и меньшим, и большим, чем темп,
диктуемый средней крутизной S. Если Д взять побольше, то и большей
высоты бугры буду1 проскакиваться, но при большом Д и точность опре-
определения экстремума окажется ниже. Так что в заботе о преодолении мел-
мелких бугров нельзя забывать и о том, что искомый максимум максимо-
руМ — тоже лишь один из бугров, один из локальных экстремумов.
Впрочем, серьезный разговор о проблеме борьбы с «мелочностью» ло-
локальных методов стоит отложить до § 11.
45
f(x+A)
¦СС
Итак, анализ всех возможных вариантов остановки,
«успокоения» процесса поиска убедил нас в том, что-если
уж эта остановка произойдет, то где-то между точками х{1)
и xlt)-\-\ обязательно окажется искомый локальный мак-
максимум. Значит, величина
А, так же как и в сеточ-
сеточной схеме, определяет
возможную окончатель-
окончательную точность поиска.
Однако напомним, что
темп поиска здесь зави-
зависит не от А, а от выбора
коэффициента 0.
Теперь самое время
начать обещанный ана-
анализ того, как же разум-
разумно выбирать этот пара-
параметр.
Рассмотрим (рис. 5.7)
наряду с графиком функ-
функции f(x) график /(х+А),
получающийся из f(x)
смещением на А влево.
Легко представить вид
зависимости крутизны 5
от х, отличающейся от
Рис. 5.7. разности этих графиков
лишь масштабом. Точка
обращения в нуль S (х, А) и есть точка хA) возможной ос-
остановки процесса поиска максимума (она немного смещена
относительно истинного максимума).
Слева от точки х{1) крутизна положительна, а справа —
отрицательна.
Обратимся теперь к основной формуле
А).
Ее действие легко можно описать геометрически. Построим
графики двух функций
у(х) = х и y(x) = x-\-QS(x, А).
График у(х) — это просто биссектриса прямого угла, а гра-
график ф(дг) отходит от нее тем больше, чем больше выбра-
выбрано 0 и чем больше крутизна самой крутизны S(x, A).
46
(На рис. 5.8, а, б, в показано расположение этих графи-
графиков при 0=0,1; 0,5; 3 и S{x, А), рассчитанной по функции
цели, представленной на рис. 5.7.)
Графики у(х) и ф(х) пересекаются в одной точке, там,
где у(х) — у(х), т. е. при S(x, A)=0, а это и есть точка воз-
возможной остановки хи >.
Перейдем теперь к процессу поиска.
Основная формула может быть записана в виде
Зададим исходное значение xw и найдем ф[х10)). На гра-
графике это — точка Ло, но ее ордината должна быть равна
х{1\ так что, проведя горизонтальную прямую из точки Ло
до ее пересечения с биссектрисой и вертикальную от пере-
пересечения до кривой ф(х), придем к точке Л^ Ее ордината
равна ф[хш], т. е. хB). Итак, про-
процесс поиска изображается ломаной
линией, вписывающейся между гра-
графиками ф(х) и у (х). Ясно, что са-
сама точка ха) может быть достиг-
достигнута лишь за бесконечное число
шагов, но выход на достаточно ма-
малое, практически неразличимое
расстояние, конечно, требует лишь
ограниченных усилий.
Перейдем к рассмотрению рис.
5,8 б. Здесь 6 взято побольше и
кривая ф (х) располагается слева
от xW) выше уровня хи), а справа
от х(П—ниже. Процесс поиска вновь
изображается ломаной линией, но она уже имеет вид не
лесенки, плавно подымающейся до точки остановки, а спи-
спирали-паутинки, завивающейся вокруг этой точки. Точки
промежуточных остановок на каждом шаге располагаются
поочередно то справа, то слева от нее. Тем не менее про-
процесс приближения к максимуму идет даже немного быстрее,
хотя и здесь точка х<1) оказывается лишь пределом устрем-
устремлений, недостижимым точно за конечное число шагов.
Впрочем, как уже говорилось, в этом нет большой беды.
Действительно плохо обстоит дело только со случаем
0=3 (рис. 5,8,в). Здесь кривая ф(х) развернулась уже на-
настолько, что зашла за прямую 00, проходящую перпенди-
перпендикулярно биссектрисе (т. е. под углом —45°, а следовательно,
с крутизной, равной —1). Но раз так, то ломаная, изобра-
изображающая процесс последовательных приближений, приоб-
приобретает вид раскручивающейся спирали.
Все эти геометрические построения позволяют сформу-
сформулировать важный вывод. Если график функции <р(х) в не-
некоторой окрестности точки х{1)г лежит в секторе между бис-
биссектрисой и перпендикуляром к ней00 (рис. 5.9), то процесс
поиска позволяет неограниченно приблизиться к этой точке.
Если же график ф(х) целиком лежит вне указанного сектора,
то процесс последовательных приближений уводит от нее*).
*) Более глубокое, хотя и доступное для хорошо знающих мате-
математику школьников, изложение вопроса о сходимости метода последо-
последовательных приближений можно найти в лекции Н. Я Виленкина [б].
(Номер в квадратных скобках здесь и далее означает номер по списку
литературы, приведенному в конце книги.)
х<1> а
Рис. 5.9.
-*¦ х
х
Рис. 5.10.
Кстати, теперь легко находит объяснение и тот факт,
что нет реальной опасности оказаться в результате процесса
поиска максимума в окрестности минимума (ситуация, по-
показанная на рис. 5.3, б).
Вблизи минимума кривая S(x, А) также проходит через
нуль (рис. 5.10), но крутизна отрицательна слева и поло-
положительна справа, так что (р(х) даже при малых 0 окажется
ниже у(х) слева от точки пересечения и выше — справа,
и. процесс поиска обязательно уводит от нее. Опасно лишь
выбрать в качестве исходного приближения именно точку
пересечения, но при произвольном выборе это практически
невероятно.
Стоит теперь разобраться в том, как пойдет процесс
поиска, если функция цели имеет несколько ярко выражен-
выраженных локальных максимумов и минимумов. На рис. 5.11
а)
Рис. 5.11.
изображен график такой функции и график изменения ее
крутизны, а на рис. 5.12 соответствующая функция ср(х)
и у(х)=х. Область поиска ограничена абсциссами хн и хв.
Вся картина оказывается совершенно прозрачной. Каждый
из трех локальных максимумов имеет свою зону притяже-
притяжения. Если начальное приближение взято где-нибудь в об-
области /, то итеративный процесс приводит к точке, близкой
к первому максимуму, точнее, к точке, где в первый раз
обращается в нуль крутизна. (Эго уточнение существенно,
ибо оно вновь напоминает о возможности проскакивания
малых бугорков, вблизи которых S(x, Л) через нуль не про-
50
ходит.) Если исходное приближение взято в зоне //, то
процесс приводит ко второму локальному максимуму.
То же и в зоне ///, но здесь локальный максимум лежит
не вблизи точки с равной нулю крутизной, а на границе
допустимой области. Процесс поиска останавливается
просто потому, что следующая точка, которую стоило бы
I
"Хд
¦X
Рис. 5.12.
испытать на оптимальность, согласно основной схеме,
оказывается вне достижимости *).
Границами, разделяющими зоны притяжения, оказы-
оказываются точки минимума, а точнее — точки, где крутизна,
обращаясь в нуль, оказывается отрицательной слева и поло-
положительной справа.
Конечно, рис. 5.12 изображает ситуацию, когда .коэф-
.коэффициент пропорциональности 0 выбран достаточно хорошо.
Если же взять 0 очень большим, то ситуация может изме-
измениться. На рис. 5.13 показано, что в зоне // поиск приводит
не к точке максимума, а к циклическим колебаниям вокруг
этой точки на большом расстоянии от нее.
Приведенные картинки очень наглядны и хорошо объяс-
объясняют весь процесс поиска. Однако они не дают возмож-
возможности доказать, почему схема пропорционального поиска
1) Особенности процессов поиска вблизи границ будут подробнее
описаны в § 9.
51
эффективнее, чем простейшая итерация с постоянным ша-
шагом А. Прежде всего заметим, что при простой итерации
расстояние от исходной точки до экстремума убывает по
-*-х
Рис. 5.13.
>r (¦ — — i 1~
s
Рис. 5.14.
*-/}
арифметической прогрессии, т. е. за п шагов убывает
на яА.
В то же время оказывается, что при пропорциональном
поиске это расстояние убывает быстрее, чем по геометри-
геометрической прогрессии, при каждом шаге умножаясь на неко-
некоторый коэффициент, меньший фиксированного ц.
52
Если этот коэффициент существенно меньше единицы,
то с ростом п уменьшение расстояния идет очень быстро.
На рис. 5.14 показано изменение расстояния до экстремума
при использовании обеих схем по мере увеличения числа
итераций (q-~0,5). Сплошная линия на этом рисунке соот-
соответствует итерации с шагом А, а пунктирная — пропорцио-
пропорциональному поиску. Ясно, что чем больше начальное расстоя-
расстояние до экстремума по сравнению с А и чем больше q
отличается от единицы, тем сильнее сказываются преимуще-
преимущества пропорционального поиска. Ведь это — преимуще-
преимущества роста сложных процентов по сравнению с простыми!
Остается доказать, что пропорциональный поиск действительно
подчиняется законам геометрической прогрессии, а если это так, то вы-
выяснить, отчего зависит показатель q.
Вновь запишем основную формулу
л;<*+1» = л;(" + е5(л;('), Д)=<р (*<*>)•
В точке остановки х{1) всегда выполняется условие
Вычитая эти два равенства, .получим
*"+1>—*1/> = <р (*«>)—Ф (х<г>).
Мы уже знаем, что процесс будет сходиться, если функция <р(х) не
О
¦*-<2?
выходит из секторов, образованных двумя прямыми, наклоненными
под 45° и —45°. Попытаемся зажать ее в более узкие секторы, образо-
образованные прямыми, идущими под углами ijj и — яр (рис. 5.15). Если это
53
удастся, то для любого x{t) окажется верной формула
[<р(*ч>)-ф (*">)! .
Теперь мы видим, что
| xtf+i)__xa) | = | ф (*«>) —гр (*«>) | < tg i|) | *<'>—
Обозначим расстояние до экстремума, а точнее, до остановки я1", на
итерации с номером г, через е'*>. Тогда *>('>= |x<<>— x("|, а следовательно,
Отсюда мы сразу убеждаемся, что убывание расстояния идет не мед-
медленнее, чем по геометрической прогрессии с показателем q, равным tg -ф.
Чем уже сектор, в который удается зажать функцию ф(х), тем мень-
меньше ty, а следовательно, быстрее убывание.
Рис. 5.16.
В окрестности максимума график крутизны S(x, Д) зачастую близок
к прямой с крутизной, равной — L (рис. 5. 16). Поэтому функция ф(л;)
ведет себя так, что
Ф (*)— ф (х*г>) = х—х«>—QL (х—х^),
откуда следует
1ф(*)-ф(*">Н = |1 ql
\х—х^\
т. е. в окрестности максимума убывание расстояния до экстремума идет
со скоростью не меньшей, чем убывание по геометрической прогрессии
с показателем |1— 6L|.
Итак, роль коэффициента В оказывается полностью вы-
выясненной. Для успеха поиска необходимо соразмерять его
величину с наклоном кривой крутизны вблизи экстремаль-
экстремальной точки. Чем больше этот наклон, т. е. крутизна крутиз-
крутизны, тем меньше надо брать значение В, и наоборот.
А нельзя ли в таком случае отказаться от того, чтобы
заранее выбирать 6 постоянным для всех шагов, не стоит
ли его изменять, координируя с изменением крутизны кру-
крутизны?
Эта полезная идея не нова, она лежит в основе метода
поиска, предложенного еще великим Ньютоном.
54
Выберем 0 обратно пропорциональным крутизне кру-
крутизны, т. е. величине
f(x+A)-f(x)
1 =
Точнее, будем строить последовательные приближения
по схеме
приЧШ
а>о.
ш (*">, Д) '
Знак минус в последнем равенстве появляется из-за того,
что вблизи максимума крутизна имеет отрицательный нак-
наклон, т. е. &><0, а нам надо обеспечить положительность 0.
Величина же а может быть взята просто равной единице,
как рекомендовалось самим Ньютоном, или меньшим еди-
единицы, если стремиться к большей осторожности. Правда,
для вычисления величины w(x, А) потребуется уже не одно,
а два измерения вблизи каждой точки, но, увы, никакие
усовершенствования в поиске обычно не даются даром.
Зато посмотрите на рис. 5.17: поиск по схеме Ньютона
приводит к максимуму практически за 1 шаг, и это вполне
55
понятно. Ведь точка хA) находится теперь по правилу
(принято а=1):
•S(*l0>, A),
1
откуда следует, что
S(x«>, А) т
S(x'°>, A)— 5(^01 + А, А)
Значит прямоугольные треугольники 0Л5 и ОЛ^ по-
подобны, а следовательно, точка хA> должна лежать на пере-
пересечении прямой с наклоном, равным крутизне крутизны
w (хт, А) и оси абсцисс. Но так как наклон S(x, А) от хш
до максимума почти постоянен, то кривая и прямая почти
не расходятся, что и обеспечивает успех, предсказанный,
кстати, и общими формулами для оценки темпа сходимости.
Конечно, такое бывает не всегда. На рис. 5.18 видно, что
Рис. 5.18.
если наклон S(x, А) изменяется сильно, то схема Ньютона
при а=1 уводит далеко за желанную точку. Поэтому-то
при расчетах предпочитают обычно вводить коэффициент
осторожности а<1, например а=1/2. Впрочем, идея вве-
ввести изменяемый от шага к шагу коэффициент пропорцио-
пропорциональности 8 может быть реализована и проще, чем в схеме
Ньютона, где приходится вводить и дополнительные изме-
измерения, и дополнительные вычисления.
Действительно, можно начать с произвольной доста-
достаточно большой величины 0(о>. Если результат удачен, т. е.
шаг приводит в точку х{1), где функция цели возрастает,
то значение коэффициента сохраняется и на следующем
шаге. Если же при этом нас постигнет неудача, то берется
еш=а0(о> с а<1. Уменьшая а каждый раз при неудаче, мы
застраховываемся от 'проявлений излишнего «темпера-
«темперамента».
Зачастую полезно сочетать обе идеи: в исходной точке
пойти на дополнительные затраты и сосчитать w(xm, Л),
•оценив тем самым разумное значение 0(о), а в дальнейшем
руководствоваться упрощенной процедурой.
Пожалуй, пора и остановиться: о локальных процеду-
процедурах поиска максимума сказано достаточно много. Но по-
почему рассказывалось только о поиске максимума? А если
лучшее есть меньшее?
Ответить на этот вопрос совсем нетрудно: во всех пред-
предшествующих формулах стоит только заменить 0 на —0,
и они превратятся в формулы, описывающие поиск мини-
минимума *).
Итак, можно было бы завершить этот параграф, но
автор чувствует теперь на себе укоризненный взор обра-
образованного (хотя бы преодолевшего первый курс института)
читателя. Как же, рас-
рассказывая о поиске экст-
экстремума, ничего не ска-
сказать о таком понятии,
как производная?!
Для еще не очень об-
образованных читателей
сразу скажем, что это та-
такое. Производной функ-
функции f(x) в точке х назы-
называется предел, к которо-
которому стремится крутизна
S(x, А), если величина Рис. 5.19.
Л стремится к нулю.
Посмотрим на рис. 5.19. Измерим функцию в точке х**'
и в точке xmjrA»,, тогда крутизна определится наклоном
прямой ОМО. Возьмем теперь Ai<A0 и снова оценим кру-
крутизну. Она определится уже наклоном ОМи По мере умень-
уменьшения сдвига от хт прямые, наклон которых определяет
крутизну, поворачиваются, стремясь занять предельное
положение, касательное к графику функции в точ.ке О,
т. е. при x—xw). Тангенс угла наклона касательной и опре-
О
*) Можно поступить еще проще. Вместо поиска минимума функции
f(x) следует искать максимум се зеркального отражения относительно
оси абсцисс, т. е. функции — f(x).
57
деляет значение производной в этой точке. Это, так сказать,
истинная, местная крутизна в точке хш, в то время как
раньше мы имели дело лишь с оценками крутизны, ее сред-
средними значениями вблизи этой точки, значения которых
зависели от выбора шага Д.
Производную обычно обозначают -J- или f'(x). Ее зна-
значения, вообще говоря, различны в разных точках х, и если
хотят подчеркнуть, что речь идет об определенной точке,
скажем, х=х{0\ то пишут либо (-J-) , либо /' (хт).
Сразу ясно, что если бы мы умели находить производ-
производную, то все формулы поиска легко можно было бы исполь-
использовать, заменив оценки крутизны S(x, А) на истинную кру-
крутизну, т. е. производную f'{x).
Такая возможность имеется отнюдь не всегда. Если
задача поиска такова, что значения функции цели можно
только измерять в различных точках, то ничего, кроме
оценок крутизны, не придумаешь. Ведь стремить Д к нулю
можно лишь математически, а при измерениях всегда при-
приходится брать хоть малое, но конечное, отличное от нуля
значение Д. Однако, как уже говорилось, есть много проб-
проблем поиска экстремума функции, которая задана формулой,
аналитической зависимостью. Ну, а раз есть формула,
задающая значение функции цели при любых Д, то, на-
наверное, можно с ее помощью найти и формулу для произ-
производной. И это действительно так.
Не пытаясь входить во все тонкости процесса вывода
формул для производных, называемого дифференцирова-
дифференцированием, познакомимся лишь с простейшей задачей дифферен-
дифференцирования многочленов (полиномов) п-й степени, т. е.
функций, заданных в виде
где а0, аи ..., ап — постоянные величины.
Прежде всего, покажем, что при любом целом k справед-
справедливо равенство
1+..., k=l, 2, ... ,
где все невыписанные слагаемые, если и присутствуют, то
содержат А в степени выше первой (т. е. А2, Д3, ...).
Для доказательства можно воспользоваться методом
математической индукции. Пусть формула справедлива
58
для некоторого k—n. Тогда
причем все невыписанные слагаемые вновь содержат А
в степени выше первой. Значит,
т. е. если формула верна для k=n, то верна и для k=n-\-\.
Но при k=\ она очевидна, следовательно, верна и для лю-
любого к.
Теперь можно составить выражение и для крутизны
функции f(x)—xk:
S(x, A) = -L
где остальные слагаемые пропорциональны степеням А, а
следовательно, при А, стремящемся к нулю, также будут
стремиться к нулю. Отметим, что эта формула остается
справедливой и если А будет отрицательной величиной.
Таким образом, если
f(x)=xk, то f'(x)=fex*.
Без труда можно убедиться, что если функцию умножить
на постоянное число, то и ее крутизна умножится на ту же
постоянную. Но то же верно и для производной как предела
крутизны. Следовательно, если
f(x) = akx\ то f'{x) = kakxk-\
Так же очевидно, что производная от суммы функций равна
сумме производных от каждого из слагаемых. Следова-
Следовательно, если
/(x) = anx" + an_1x«-1-f- ... +а0,
то
В частности, производная от постоянной равна нулю,
а производная от линейной функции f(x)=a,iX+a0 равна аи
т. е. постоянна.
И это естественно, потому что график линейной функ-
функции представляет собой прямую с постоянным наклоном
(рис. 5.20).
59
Формулы для производных других функций также могут
быть найдены с помощью теории пределов. Впрочем, их
можно найти в любом справочнике.
Поговорим теперь подробнее о той роли, которую играют
производные в проблеме поиска экстремума.
Рис. 5.20.
Напомним сначала, что из самого определения крутизны
следует
Вместе с тем по смыслу самого понятия производной как
предельного значения крутизны ясно и то, что
где невыписанные слагаемые стремятся к нулю, когда А
стремится к нулю. Значит,
Для многочленов это соотношение справедливо и при
А<0. То же имеет место и для любых гладких (без изломов)
функций.
Можно доказать важное утверждение: если в точке
х—х{0\ не лежащей на границе области поиска, достигается
локальный экстремум (максимум или минимум) функции
f(x), то производная в этой точке f'(x{0)) равна нулю.
Действительно, если в x—xw) располагается, например, максимум,
то для любой точки с координатой х@)+Д, каким бы Д ни было, должно
выполняться условие
Но справедлива формула
/ (х<°> + Д) = / (*'»<) + Д/'
где иевыписанные слагаемые становятся с уменьшением Д пренебрежи-
пренебрежимо малыми по сравнению с оставленными.
60
Значит, если *<0)—координата максимума, то
или
А/' (х@>) < 0.
Однако напомним, что величина Д, будучи малой, может принимать лю-
любой знак (соседняя точка может располагаться и слева, и справа от х{0>).
Предположим, что /'(jc@>) положительна. Тогда записанное условие на-
нарушится при положительных Д. Если же предположить, что f'{xwy
отрицательна, тогда нарушение произойдет при отрицательных Д (сле-
(слева от л:10'). Таким образом, остается единственная возможность /'(*@))=0,
что и доказывает основное утверждение.
Производная определяет наклон касательной. Следова-
Следовательно, это утверждение сводится к геометрически нагляд-
наглядному факту (рис. 5.21): касательная в точке максимума
ffx)k
Рис. 5.21.
должна быть горизонтальна. То же самое справедливо
и для точки минимума, не лежащей на границе области
поиска.
Если же локальный экстремум лежит на границе, то его
значение можно сравнивать только со значениями для сосе-
соседей, лежащих с одной стороны (например, для экстремума
на левой границе области определения функции — с сосе-
соседями справа). Поэтому рассуждения, полностью аналогич-
аналогичные уже использованным, приводят к утверждениям сле-
следующего типа: если в точке х10), лежащей на верхней гра-
границе, достигается максимум, то f (%@))^0. Впрочем, и это
утверждение и другие, касающиеся граничных точек, аб-
абсолютно ясны геометрически (см. рис. 5.21).
61
Вернемся вновь к изучению процедуры локального
поиска, использующей знание производной в каждой
точке:
где ставится плюс, если ведется поиск максимума, и минус,
если разыскивается минимум. В обоих случаях процесс
может остановиться, либо наткнувшись на границы, либо
в такой точке хт, где
Поэтому все такие точки называются стационарными, что
овначает точки установления, покоя, постоянства. Но ведь
мы уже установили, что в максимуме или минимуме, не ле-
лежащем на границе, условие равенства нулю производной
обязательно должно выполняться. Значит, все максимумы
и минимумы — стационарные точки.
Обратное, к сожалению, несправедливо: не всякая ста-
стационарная точка есть максимум или минимум. Существуют
fk\
хп
Рис. 5.22.
¦+-Х
еще и стационарные точки, называемые точками перегиба.
Посмотрите на рис. 5.22. Слева от точки хп производная
положительна, при приближении к ней она убывает, как
будто желая перейти через нуль и стать отрицательной
(и тогда возник бы минимум), но, добравшись до нуля, не
решается перейти через него и вновь становится положи-
62
тельной. Ясно, что точка перегиба — это некоторый вы-
вырожденный, особый случай, и на него не стоит обращать
много внимания. Значит, мы можем утверждать, что поис-
поисковая схема, основанная на использовании производных,
стремится остановиться именно в локальных экстремумах,
а не в их окрестностях, что и обосновывает ее полезность *).
Действие схемы, конечно, так же зависит от выбора
параметра 9, как и при использовании не производной,
а крутизны вблизи каждой точки. Повторять все уже ска-
сказанное об этом не стоит. Но стоит обратить внимание на
одну небезынтересную идею: а есть ли вообще необходимость
в построении самой схемы поиска, если мы располагаем
формулой для производной?
Ведь достаточно решить уравнение
/'(*) = О,
и его корни дадут координаты всех возможных стационар-
стационарных точек и, следовательно, всех возможных локальных
экстремумов. Поскольку их, как правило, конечное и не-
небольшое число, то легко можно вычислить значения функ-
функции во всех них. Сравнив же между собой эти значения,
мы легко достигаем конечной цели: наибольшее из них даст
максимум максиморум, а наименьшее — минимум мини-
морум. Неправда ли, эта идея до крайности заманчива,
и именно с ней был хорошо знаком по учебникам для пер-
первого курса тот самый образованный читатель, который так
настаивал на полезности изучения производных.
Увы, сама идея действительно прекрасна, но... очень
редко может быть полностью осуществлена практически.
Ведь она основывалась на гипотезе, что мы можем найти
все корни уравнения /'(х)=0, а эта гипотеза, к сожалению,
является слишком смелой. Из школьных учебников чита-
читатель, конечно, почерпнул умение решать алгебраические
уравнения 1-й и 2-й степени. Наверное, известно и о су-
существовании страшных формул для решения уравнений
3-й и 4-й степени. Но известно и то, что даже для алгебраи-
алгебраических уравнений более высоких степеней явных формул
*) Будучи чувствительной к любому локальному экстремуму,
схема с использованием истинней крутизны, естественно, теряет и спо-
способность обходить мелкие бугры и ямки на склоне. Отметим, однако,
благоприятное обстоятельство: поиск максимума не может остановиться
в минимуме или точке перегиба, оба таких варианта остановки неустой-
неустойчивы по отношению к малым смещениям.
63
для вычисления корней, вообще говоря, написать нельзя.
Тем более это справедливо для таких экзотических (но
вполне реально возникающих в задачах поиска) уравне-
уравнений, как, например,
соьх — х-2х = 0.
Конечно, отсюда не следует, что в этих случаях вообще
нет никакой возможности найти корни. Но их приходится
именно искать, применяя различные методы последо-
последовательных приближений.
Стоит остановиться на одном из методов, пожалуй,
самом простом. Пусть требуется найти корни уравнения
где g(x) — производная функция, значения которой в лю-
любой точке могут быть измерены или вычислены.
Это уравнение можно записать и так:
= 0, где
или
Такое уравнение, конечно, эквивалентно исходному (мы
просто прибавили нуль к левой части), но для наших целей
новая запись удобнее. Используем идею простой итера-
итерации *): примем за начальное приближение какое-нибудь
значение x—xw и, подставив его в правую часть уравнения,
найдем
Если эта величина равна х{0\ значит все в порядке: х=х{9)
удовлетворяет уравнению. А если нет? Тогда примем ее
за следующее приближение, положив
и вновь проверим, не удовлетворится ли уравнение при
х=х{1).
Продолжая эту итеративную процедуру, мы каждый раз
действуем по правилу: если очередное приближение равно
*) Читатель, знакомый с элементарными сведениями из автоматики,
увидит, что идея простой итерации есть идея управления с обратной
связью по о ш и б к е g(*(!)) с коэффициентом усиления в.
64
ха\ то следующее вычисляется по формуле
Если окажется на какой-нибудь итерации t=l, что х"+1)=
—х{1), то, естественно, процесс остановится — значение
корня найдено. Роль величины Э ясна: чем меньше 9, тем
меньшими шагами, осторожнее ведется поиск. Очевидно,
что шаг зависит и от значения функции в точке, из которой
он делается; и это разумно: чем больше отклонение от нуля,
тем грубее ошибка, тем быстрее стоит уйти из точки, где
она совершена.
Но на процедуру простой итерации можно посмотреть
и с других позиций. Если g(x) представляет собой производ-
производную другой функции f(x), т. е. g(x)~ f'(x), то формула про-
простой итерации может быть записана так:
А ведь это есть уже знакомая формула пропорционального
метода поиска экстремума функции!
Итак, мы установили, что метод простой итерации при
поиске корня уравнения
/'<*) = О
равносилен пропорциональному методу поиска экстремума
функции f(x). Известен и другой метод поиска корня, когда
на каждом шаге t вычисляется значение производной от
функции g(x), т. е. g'(x(i)), и используется не постоянный
коэффициент пропорциональности 8, а величина
9«>=— - J
Но ведь если g(x) сама представляет собой производную
(истинную крутизну) некоторой функции f(x), то g'(x) есть
производная от этой производной, или крутизна крутизны.
Значит, этот метод совпадает с уже известным методом Нью-
Ньютона, если, конечно, в его формуле заменить w(x, А) (кру-
(крутизну крутизны) на производную от производной, которую
называют второй производной и обозначают -~ , или
/" (х), т. е. считать, что
65
Вместе с тем надо честно признаться, что сам этот метод
был предложен Ньютоном именно для поиска корней и лишь
затем перепесен на задачи поиска экстремума.
Итак, мы пришли к выводу, что если корни уравнения
явно найти не удается (а это обычная ситуация), то при-
приходится применять процедуры поиска корней, которые, по
существу, совпадают с уже известными локальными про-
процедурами поиска оптимума *). Впрочем, это только еще
раз подтверждает силу и разумность этих процедур, так
что пора предоставить им более широкое поле деятельности.
*) Поиск корней при этом также, конечно, носит локальный харак-
характер и в зависимости от выбранного начального значения приводит к
тому или другому корню. Нахождение же всех корней — столь же тя-
тяжелая задача, как нахождение всех локальных экстремумов.
§ 6
ПУТИ
В ПРОСТРАНСТВЕ
(Наискорейший спуск)
Их мысли, их далекие
видения
уводя г много дальше их,
чем нас,
и потому их путь гораздо
круче,
чем прочих смертных.
Э. М е ж е л а й т и с. «У па-
памятника гениям»
Итак, у нас появилась новая
идея — идея прогноза, экстра-
экстраполяции изменения функции
на основе результатов ее изу-
изучения в малой окрестности. По-
Попытаемся применить этот прием
для решения «темных», много-
многомерных задач.
Поскольку «два» — это уже
«много», то мы и ограничимся
Рис. 6.1.
только двумерным случаем, где
все достаточно наглядно: об-
область поиска — часть плоскости
и без труда рисуется на бумаге,
а функцию цели всегда можно
представить себе в виде холма
(если ищется максимум) или
впадины (если речь идет о ми-
минимуме) (рис. 6.1).
67
Заметим, правда, что хотя объемный рисунок и нагля-
нагляден, но для нас будет удобнее пользоваться плоским, при-
применяя хорошо знакомое по географическим картам изобра-
изображение высот с помощью горизонталей — линий равного
уровня (рис. 6.2). В разрывах каждой линии проставим
значение функции (высоту!), одинаковое для всех точек,
лежащих на этой линии *). А чтобы все было похоже на кар-
карту, будем считать, что ось а:, направлена с запада на восток,
Рис. 6.2.
а ось х-г, — с юга на север. Теперь пора и в путь: нам не-
необходимо добраться с северо-западного угла котловины
до самого ее дна. Идти в одиночку скучно. Поэтому устроим
спортивные соревнования. В них будут участвовать три
известных мастера: под номером 1 выступает экс-чемпи-
экс-чемпион мира Шагов-Сеткин, под номером 2 — его приятель
Прогнозист-Неспешнев, номер 3 — на груди у чемпиона
последнего года Огляделкина-Прыгунова. Их тактика уже
хорошо известна зрителям, собравшимся у края густо
заросшей высокой травой котловины. Они дружески
приветствуют своих любимцев. Но... в толпе болельщиков
легкое замешательство: на старт выходит еще и четвер-
четвертый, никому не известный спортсмен. Он чем-то неуло-
неуловимо похож на чемпионов поиска, причем на всех сразу,
однако кто же он — неизвестно; его лицо скрывает чер-
черная маска! Зрители заинтригованы, они с нетерпением
*) В сущности, мы уже пользовались изображением с помощью го-
горизонталей, представляя на рис. 4.4. функцию ее значениями на сетке.
68
ждут старта. Вот спортсмены уже выстроились на линии
(она чуть ниже края котловины). К ним подходит судья
и внимательно осматривает снаряжение: у каждого ком-
компас, высотомер и больше ничего. Никаких карт: карта
может быть только у судьи. На ней он будет отмечать путь
всех участников к финишу. Но вот последние приготовле-
приготовления закончены. Внимание! Марш! Спортсмены нырнули
в высокую, выше человеческого роста, траву. Впереди
ничего не видно, зрителям не видны даже сами спортсмены,
но зато четко прорисовываются пути-тропинки, протоп-
протоптанные ими.
Тропинки сначала идут близко друг к другу, потом
расходятся. И вот, наконец, мы видим, что одна из них
сомкнулась с вытоптанным пятачком финиша и из высокой
травы на полянку выбежал спортсмен. Неужели же это он,
новичок в черной маске? Да, он, именно он, ни у кого уже
нет сомнений, и котловина оглашается радостным ревом
толпы, приветствующей нового чемпиона!
А самые знающие болельщики уже бросились к высокому
седому человеку, стоявшему все время далеко в стороне, и
все сразу пытаются пожать ему руку. Наверное, это тренер
Черной маски?! Нам не видно его лица, но вот уже радио
торжественно объявляет: «В соревнованиях на приз газеты
«Поиск» победил молодой спортсмен Черная Маска! Мы
пригласили его к нашему микрофону». После паузы мы
снова слышим: «Поздравляем вас с большим успехом».—¦
«Спасибо»,— отвечает голос...— «Теперь вы можете открыть
свое имя, Черная Маска?» — «Да, меня зовут Наискорей-
Наискорейший спуск».— «Прекрасное имя для спортсмена!» — «Да,
оно нравится и мне! Но ведь дело не в имени: всеми успе-
успехами я обязан своему тренеру». Слушать дальше не стоило:
интервью Черной Маски слишком скучно-традиционно, но
69
фамилия тренера заинтересовала: ведь это — знакомый
моего знакомого, известный математик и старый спортсмен
(сочетание, впрочем, довольно стандартное для современ-
современных математиков).
Так вот, уважаемый читатель, не напроситься ли нам
в гости к столь интересному человеку? Наверное, он не
будет скрывать от нас тактических тайн, которые помогли
победить его юному питомцу?
Итак, мы — в кабинете профессора и, чтобы не занимать
много времени у столь перегруженного наукой и спортом
человека, сразу приступаем к делу.
Мы: Успех вашего молодого воспитанника, по-видимому,
вызван применением какого-нибудь нового тактического
приема?
30 г
20 -
/О -
Ю 20 J0 40 50
70 80 90 /00
Рис. 6.3.
П.: О да! С малой поправкой: этот прием нов для спорта,
но в математике и физике он применяется уже десятки
лет. Я с удовольствием объясню его особенности,
при условии, конечно, что вы знакомы со старыми
приемами.
Мы: Нам хорошо известна тактика экс-чемпиона Шагова-
Сеткина, а вот Прогнозиста-Неспешнева и Оглядел-
кина-Прыгунова мы наблюдали только на одномерной
дистанции.
70
п.
Ну что ж, для начала этого достаточно. Кстати, у меня
сохранилась карта, на которой отмечены этапы рекорд-
рекордной трассы и пути наших конкурентов. Вот она перед
вами (рис. 6.3).
Все спортсмены стартовали из точки ,tio>=5, х|0>=
—65, оценив начальную высоту /10)== 900 м; Шагов-
Сеткин определил высоту в четырех точках, сдвинутых
по направлениям стран света (осям координат) на 5 м,
остальные ограничились двумя измерениями по со-
соседству *). Координаты точек (x^'iA; л#"±Д) я про-
проставил на карте, а потом занес в специальную таблицу.
Она также перед вами:
Xl
5
0
10
5
5
65
65
65
60
70
900
1000
850
840
1000
После измерений все погрузились в расчеты по
оценке расположения следующего варианта, подозре-
подозреваемого на экстремум.
Спортсмен № 1 (Шагов-Сеткин) сразу «заподозрил»
точку E; 60), как лучшую из известных ему, и начал
трудолюбиво просматривать ее окрестности. Вы хорошо
знакомы с его манерой, и я не буду задерживаться на
ее описании. Тем более, что бедняге не повезло. Вы,
конечно, помните, что он пришел последним?
Мы:Да. Поговаривают даже, что после этого сокрушитель-
сокрушительного поражения он вообще решил бросить заниматься
поисковым спортом и переключился на лото.
П.: Его манера несколько устарела, и я боюсь, что во всех
видах спорта, где играет роль прогноз, его успехи будут
не лучше. Но вернемся к нашим спортсменам. Второй,
Прогнозист-Неспешнев, и третий, Огляделкин-Пры-
гунов, действовали в манере, сходной с той, которую
*) Читатель сможет в дальнейшем убедиться, что и для методов по-
поиска, «воплощением» которых являются остальные спортсмены, допол-
дополнительные измерения могут оказаться нелишними.
71
вам довелось видеть в одномерном поиске. Вы ведь
разбираетесь в формулах итерационных процессов?
Мы:(скромно молчим).
П.: Так вот, они применяли ту же формулу, что и в одно-
одномерном случае, но здесь ее приходится использовать
для каждой из координат в отдельности
Xa.=x<o,_ei_[/Wo» + A) *<<»)-/(*<<», 4°')].
х^ = х<°>—e|-[/«>, х<01 + Д)—f(x\°\ 40))]-
Как видите, ход по каждой координате определяет
крутизна, оцененная при «познавательных шагах» но
этой же координате.
Неспешнев (позвольте несколько сократить его
вычурную фамилию), считая 0--0,5, получил
*"> = 5 — М- [850—900] = 10,
х'1' = 65 — -^ [ 1000 — 900] = 55.
Прыгунов же, приняв первоначально привычное 0=5,
быстро оценил, что полученная таким способом точка
окажется вне границ, отведенных для соревнований, и,
слегка смирив темперамент, перешел на 6—3. В ре-
результате у него
х<» = 5-4 [850 — 900] = 35,
4" = 65—4 [Ю00 — 900] = 5.
Вы, конечно, заметили, что, хотя спортсмены № 2 и
№ 3 остановились в разных точках, бежать им к наме-
намеченной цели нужно было по одному и тому же направ-
направлению (рис. 6.3). Ведь направление определяется лишь
отношением приращений по каждой из координат:
в обоих случаях движение шло под одним и тем же
углом ф к направлению оси хх (запад— восток), причем
_ 100
~~— 50 "
По этому же пути отправился и будущий чемпион.
Но, в отличие от конкурентов, он не задавался заранее
«степенью нетерпения» и решил соразмерять нетерпе-
72
ние с обстоятельствами. По пути он смотрел на высо-
высотомер (правда, на это требовалось лишнее время) и
бежал лишь до того момента, когда падение высоты
прекратилось.
Можно рассказать о его действиях по-другому. Он
фактически по пути перепробовал все возможные зна-
значения длины шага, начиная от самого маленького и
постепенно его увеличивая. Таким образом, с одной
стороны, выбирая разумное направление, чемпион
использовал идею прогноза, а двигаясь по выбранному
направлению, просто осуществлял перебор. Движение
остановилось в наиболее выгодной (самой низкой на
выбранном пути) точке.
Ну, а что было дальше? Вы же знаете, что каждый
спортсмен придерживается итеративного принципа,
т. е. после каждой остановки повторяет всю процедуру:
«прощупывает» склон вблизи остановки (у каждого
своей!), находит разумное направление и двигается по
нему, используя свой принцип. Вот и все! Как видите,
достаточно просто!
Мы:Действительно, просто. И действительно, справедливо,
что Наискорейший спуск сочетал в своих действиях и
старое (перебор) и новое (прогноз направления). Но
скажите, всегда ли он побеждает в соревновании с дру-
другими, может быть, менее искусными соперниками?
П.: Пет, конечно. Бывают и неудачи. Многое зависит от
профиля склона. Ведь и Неспешнев и Прыгунов фак-
фактически угадывают и задают раз навсегда темп движе-
движения по направлениям. Может оказаться, что заданный
темп действительно хорошо подходит ко всему профилю
склона. Ну что же, тогда они и побеждают: ведь им же
не требуется тратить время на подбор темпа в процессе
движения. Но, может быть, в этом и смысл дела: не
стоило бы устраивать соревнования, если бы победи-
победитель был известен заранее. А так — спорт есть спорт!
Эта фраза, несомненно, означала завершение беседы, и,
поблагодарив профессора за интервью, превратившееся в
лекцию, мы отправились восвояси. На прощанье профессор
сказал еще несколько слов, которые заставили нас уйти
в глубокой задумчивости. Вот что было сказано: «Я был бы
плохим тренером, если бы открыл все тактические секреты.
У Наискорейшего спуска их еще много: он отнюдь не столь
однообразен, как вам могло показаться. Вместе с тем я был
73
бы плохим профессором, если бы рассказал вам все, не
оставив пищи для размышлений». Нам придется еще вку-
вкусить этой пищи в дальнейшем, по мере повышения наших
знаний (вы помните, что наш уважаемый хозяин был о них
преувеличенно высокого мнения). Но уже сейчас мы можем
кое о чем догадаться.
Правда, ведь идея Наискорейшего спуска состоит в том,
чтобы, «ощупав» окрестность и выбрав разумное направле-
направление, двигаться только по этому направлению. Это ограни-
ограничение превращает задачу многомерного поиска в одномер-
одномерную: ведь остается искать экстремум, двигаясь по прямой!
Ну, а способов одномерного поиска множество: от простого
перебора до самых изощренных, с которыми мы еще позна-
познакомимся. Вот здесь-то и лежит тот тактический резерв, на
который намекал достопочтенный тренер-профессор и ко-
который позволяет его любимцу Наискорейшему спуску
разнообразить свое поведение!
Итак, кажется, все понятно. Но вдумчивый читатель на
страже: «Ведь все время говорится о многомерных задачах,
а фактически рассказано только о двумерных. Мы же, в
конце концов, не первобытные, нас не проведешь!»
Глубокоуважаемый вдумчивый читатель прав и не прав.
Двумерный поиск был выбран только для наглядности
(никто не сможет себе зримо представить гонки в пятимерном
пространстве), однако принцип остается тем же самым, ка-
какова бы ни была размерность. Конечно, без формул тут уж
не обойтись.
Пусть поиск ведется в n-мерном пространстве (п —
какое угодно целое положительное число). Начинаем, как
всегда, с произвольно выбранной точки Ап. Ее положение
в пространстве задается п числами, координатами х{0},
-4°\"->*л0>- Совсем не нужно пытаться представлять их
геометрически. Каждая координата может иметь свой
смысл, например: л^ — это температура нагнетаемого в
печь воздуха, хг — его объемный расход, х3 — его влаж-
влажность и т. д. Так что координаты начальной точки в таком
трехмерном пространстве могут задаваться так:
х<°> = 1000 °; 4°' = Ю м3!мин; х<°> = 40 % .
Обычная геометрия с ее мерами длины здесь ни при чем.
Правда, лучше всего работать с относительными, безраз-
безразмерными величинами. Если нижняя граница температур,
среди которых целесообразно осуществлять поиск, xlH=500°,
74
а верхняя, x1B=1500°, тогда удобно ввести относительную
температуру, определяя ее по формуле
Т7 , xi' *1н
1'— *
*Ui Х1\\
Ясно, что эта относительная температура в любой точке
области поиска может изменяться только в пределах от О
до 1 *). В выбранной нами начальной точке х^0)-=1000°,
а пересчитанное, относительное значение равно
1000°—500° _п с
о — U,о.
1500 D —500'
Также разумно пересчитать и все другие координаты,
используя для пересчета любой координаты с номером i
подобную же формулу:
Тогда все относительные величины смогут меняться только
в пределах от 0 до 1 (вся область поиска сводится к «-мер-
«-мерному кубу с длиной каждого ребра, равной единице).
Дальше мы будем считать, что такое приведение к отно-
относительным величинам было сделано с самого начала, и
черточки над xh обозначающие «относительность», писать
не будем, чтобы не загромождать наши формулы.
Вернемся теперь к задаче поиска, руководствуясь уже
известными «двумерными» идеями. Прежде всего, надо
произвести «прощупывание» окрестности начальной точки.
Сделаем это, просто поочередно увеличивая и уменьшая
каждую координату па некоторую малую величину А,-,
например Л/ =0,01, и измеряя полученный эффект (в нашем
примере им может служить производительность печи,
измеряемая в тоннах за час).
Переходим вновь на абстрактный язык. Итак, «прощу-
«прощупывание» окрестности свелось к измерению значений
*) Читатель, конечно, понимает, что любая температура является
относительной, как бы она ни определялась. Измеряя температуру в
градусах по Цельсию, мы считаем ее в процентах от нижнего диапазона
(точки замерзания воды) до верхнего (точки ее кипения). Но для указа-
указания температуры многих явлений нам приходится «вылезать» из этого
диапазона, рассматривая и отрицательные температуры, и температуры
выше 100° С. Предлагаемая же здесь система просто сводится к тому,
что для каждой задачи используется своя система единиц, своя «темпе-
«температура», меняющаяся только от 0 до 1.
75
функции в соседних точках, что позволяет найти наклон,
крутизну по каждой координате:
' rf|V<"> | Д у@) у<0)\ f I Ym Y<0) Г<°Л1
~Г~ I/ \x\ i anx! . •¦¦ i % —М-Ч , л4 , . . . , Xn j],
' rf fY@) v<0' _|_ Л v'0^ f(y@) v@> v<°>M
-д~ и yxi > -4 +a2' • • ¦ > -rn ; — / \x\_ , x-i , ¦ ¦ ¦ > xn )i>
_J_[f/v«» v@' у<0>_|_Д ~l f(rl0> У(о) V""M
д I/ V4 . л2 , . . . , Л„ -j- L\,;) / ^Xj , Л2 , . . . , Xn )\.
А как только крутизны найдены, можно сдвинуться в новую
точку, сделав «большой» шаг по каждой координате. Раз-
Размер шага и главное его направление определяются вели-
величиной и знаком крутизны, а также коэффициентом пропор-
пропорциональности G, одинаковым для всех координат.
Если этот коэффициент выбран, то координаты новой
точки, нового режима, становятся равными
уA) у<0) I A ' ff /г@) у@) у(С1) I Л \ fCy<0> у<0> у(°'\1
"л
Неправда ли, все формулы совершенно сходны, сколько бы
ни было координат, хоть две, хоть тысяча (именно поэтому
мы и говорим, что два — это уже «много»!).
Однако как же выбирать 0? Здесь уже известны приемы:
либо выбрать заранее, раз и навсегда, для всей итератив-
итеративной процедуры, для любого шага, либо выбирать на каж-
каждом шаге наилучшее значение 0=0">, осуществляя одномер-
одномерный поиск (ведь 0 — просто число, коэффициент), производя
измерения значений функции при увеличении 0 от нуля,
т. е. при движении от исходной точки по выбранному на-
направлению, и выбирая такое 9, которое соответствует
наилучшему из встречающихся на пути значений функции.
В сущности, для этого нет необходимости непосредственно
знать, каково направление, какой путь проходит точка в
n-мерном пространстве при изменении 0. Можно просто
определять по формулам, как изменяется любая координата
при изменении 0 *):
а по значениям координат измерить (или сосчитать) функ-
функцию цели. Тем самым каждому 0 ставится в соответствие
определенное значение функции цели. Таким образом, пока
координаты меняются не произвольно, а строго согласно
написанным формулам, функция цели становится функцией
единственного аргумента G, которая тем самым играет
роль координаты, отсчитывающей движение по выбранному
в результате ощупывания пути!
Именно поэтому задача поиска наилучшего G действи-
действительно является одномерной.
Надеюсь, что любопытный читатель (а на такого, в сущ-
сущности, и рассчитана эта книга!) все-таки заинтересуется,
что это за путь, по которому движется точка в многомерном
пространстве при увеличении 6. Не забираясь в дебри мно-
многомерной геометрии, ответим, что это просто прямая, луч,
исходящий из начальной точки, в чем мы уже могли нагляд-
наглядно убедиться, когда «много» было просто «два». Введем для
повышения уровня образованности еще некоторые мате-
математические понятия. Задавая при прощупывании окрест-
окрестности некоторую конечную величину Д(., мы подсчитывали
лишь среднюю крутизну по каждой координате. Ну, а
если устремить это А,- к нулю, то мы получим крутизну в
направлении каждой координаты непосредственно в исход-
исходной точке. Эту процедуру мы уже производили в одномер-
одномерном случае, называли соответствующую крутизну в точке
производной и обозначали ее —-. В многомерном случае
крутизны в точке по каждой координате называются част-
*) В этих формулах все уже определено результатами прощупыва-
прощупывания, кроме величины 0, которая только и меняется!
77
ными производными и обозначаются ~— , -,— , ..., -J— *).
(Чтобы подчеркнуть, в какой именно точке вычислена произ-
I df \ \ -с ,
водная, пишут, например, -г— . если в формулах для
V "xi /о /
определения изменения координат по мере увеличения О
использовать не средние крутизны, а частные производные,
вычисленные в исходной точке, то мы, конечно, также будем
двигаться по лучу, исходящему из этой точки. Направление
такого луча носит название направления градиента, что,
впрочем, в переводе с ученой латыни имеет приблизительно
тот же смысл, что и русское слово «крутизна». Математики
доказали, что направление градиента есть в некотором
смысле наилучшее направление движения при поиске мак-
максимума**).
Чтобы понять, почему так обстоит дело, вернемся на
время к наглядному двумерному случаю. Изобразим «то-
«топографию» функции цели с помощью лилий уровня (рис. 6.4).
Если взять небольшой участок этого рисунка (отмеченный
пунктиром) и изобразить его в увеличенном масштабе и с
большей густотой линий (рис. 6.5), то мы убедимся, что
линии уровня в его пределах представляют собой слабо
искривленные линии, почти прямые и параллельные. Это,
очевидно, является прямым следствием нашей гипотезы о
гладкости функции. Возьмем какую-нибудь точку, на-
например, на линии с уровнем 5, и проведем окружность с
центром.в этой точке. Ее диаметром будет отрезок линии
уровня. Он делит окружность на две части: на одной из них
(/) все точки лежат выше (не ниже), чем исходная, на другой
(//) — ниже (не выше!). Предположим, что выделенная
*) Согласно определению можно записать формулы
^-=limT [/(*!, ..., Xj-ltX,+A, Х; + 1 Х„) —
ОХ,- д-»од
—/(*,, х2, ..., х,; ...,х„)], i=l,2, ..., п.
Ясно, что частная производная по какой-нибудь координате вычи-
вычисляется также, как и обыкновенная, одномерная, только при вычисле-
вычислениях надо помнить- все остальные координаты оставались неизменными,
и их можно просто рассматривать как постоянные величины.
**) При поиске минимума справедливо противоположное •— надо
двигаться в направлении, обратном градиенту, по антиградиенту, из-
изменяя в формулах знак + на —.
78
точка есть очередная остановка процесса поиска. Тогда,
очевидно, движение по всем направлениям, ведущее из
исходной точки на полуокружность /, приводит к возраста-
возрастанию функции цели, по крайней мере в пределах выделенного
¦ее.
Рис. 6.4.
малого участка. Они, естественно, называются подходящими.
Ясно и то, что среди подходящих направлений есть наиболее
Рис. 6.5.
выгодное, которое при той же длине шага (радиуса окруж-
окружности) приводит к наибольшему возрастанию целевой функ-
функции. Это направление — перпендикулярное линии уровня.
Остается теперь убедиться, что именно оно и есть направ-
направление градиента. Для удобства перейдем к другому чертежу
(рис. 6.6).
79
Дадим в исходной точке О такие приращения коорди-
координатам Х\ и х2, равные А, и А2, чтобы точки А и В с коорди-
координатами (.<>+А„ ,40>) и (х[а\ .r!,0>-f А2) легли на одну и ту
же линию уровня, лежащую выше исходной на а. Крутизна
г@).
Г@)
D
х(о)
Рис. 6.6.
по хх окажется равной а/Аъ а по хг — равной а/А2. Отло-
Отложим теперь по направлениям осей координат отрезки ОС
и OD, пропорциональные найденным крутизнам. Тогда
отрезок ОЕ задаст направление градиента. Его перпенди-
перпендикулярность линии уров-
уровня сразу следует из по-
подобия треугольников
ОАВ и ОСЕ.
Итак, мы доказали
(в пределах доступного
по наглядности двумер-
двумерного случая), что гра-
градиент перпендикулярен
линии уровня и, следо-
—*~л/ вательно, представляет
собой наиболее выгодное
направление, по край-
крайней мере в пределах
точки, где линии уровня остаются
О
Рис. 6.7.
малой окрестности
параллельными.
Конечно, утверждение о наибольшей выгодности направ-
направления градиента при больших шагах неверно (рис. 6.7):
шаг ОБ приводит к лучшей точке, чем шаг ОС той же длины
80
в направлении градиента ОЕ. Но само изучение свойств
функции при малых отклонениях координат, сводившееся
к оценке крутизны по каждому направлению, и не могло
нам дать таких сведений.
Дадим еще одну трактовку градиента: если рассматри-
рассматривать крутизну по каждой координате как силу, стремящуюся
сдвинуть лежащую точку к максимуму, то градиент ока-
окажется равнодействующей всех этих сил, полученной по
классическим правилам геометрического сложения. В этом
нетрудно убедиться, глядя па рис. 6.6, посвященный дву-
двумерной задаче.
Итак, двигаясь из исходной точки в направлении гра-
градиента («и это хорошо!»), мы наткнулись на наибольшее
значение функции, которому соответствовало 0- 0(<", и
остановились для дальнейшего обдумывания в точке с ко-
координатами:
«>=*<<»
\oxn/0
Ну, а дальше? Дальше, как в детской песенке про белого
бычка, повторяется все сначала. Снова надо прощупать
малую окрестность, или как-нибудь иначе оценить или
сосчитать частные производные, найти новое направление и
двигаться по нему вплоть до окончательного успеха.
А когда же определится, что успех достигнут? Естест-
Естественно, это наступит как раз в тот момент, когда на очередной
стоянке оценки производных по всем координатам обра-
обратятся в нуль, т. е. когда невозможно будет выяснить, в ка-
каком направлении двигаться дальше.
Как и в одномерном случае, можно показать, что точка,
в которой все частные производные обращаются в нуль,
является либо локальным максимумом, либо локальным
минимумом, либо изолированной точкой перегиба, либо
лежит на площадке постоянства функции. Не пытаясь
проводить математических доказательств, отметим, что
процедура, построенная так, чтобы вести в минимум, не
может привести в максимум, если, конечно, случайно
точка максимума не оказалась исходной. Напротив, идя в
максимум, в минимум не попадешь. На целой площадке,
где все точки — точки перегиба, остановка возможна, но,
81
как и в одномерном случае, она практически равносильна
опасности застрять в слабо выраженном локальном экстре-
экстремуме. Отличие оценок производных от истинных их зна-
значений, с одной стороны, является неприятностью — точка
обращения в нуль оценок не совпадает с локальным эк-
экстремумом, однако, с другой стороны, использование оце-
оценок может позволить не замечать мелких бугров и ямок,
как это было и в одномерном поиске.
Скептически настроенный читатель вправе, конечно,
спросить, а достижима ли вообще точка остановки? Сомне-
Сомнения, конечно, справедливы, тем более, что никаких стро-
строгих обоснований не приводилось. Однако по аналогии с
одномерным случаем, можно предположить, что
а) если параметр G выбран постоянным, но не слишком
большим, то точки промежуточных остановок будут приб-
приближаться к экстремуму, хотя точный приход в него может
и не осуществиться за конечное число шагов;
б) если G постоянен и велик, то возможно и удаление ог
экстремума или качание на большом расстоянии от него.
Выбор между медлительностью Неспешнева и безрассуд-
безрассудностью Прыгунова достаточно сложен.
Однако наш чемпион, Наискорейший спуск, в принципе
лишен таких недостатков. Ведь из каждой точки движение
происходит только до тех пор, пока функция возрастает,
причем до максимума в этом направлении, так что значение
в следующей точке должно быть лучше предыдущего (про-
(процесс приводит к монотонному возрастанию или убыванию —
при поиске минимума). Правда, и здесь возможны некоторые
неприятности, но о них разговор еще впереди.
Пока же можно констатировать, что разумный метод
борьбы с многомерностью найден. Хотя он, конечно, и
носит локальный характер, но и это уже большое дости-
достижение.
В заключение посчитаем небольшой пример, в котором
функция цели задана нехитрой формулой
/ (xlt х2) = х\ + х\ + 1,2хххг
и разыскивается минимум f (xu %д-
Сначала найдем формулы для частных производных по
каждой координате. Напомним, что частную производную
по х1 можно вычислить как обыкновенную, если при этом
считать хг неизменной, постоянной, величиной. Но тогда
/ (.*ь х2) будет функцией только от хъ и притом хорошо
82
знакомого вида:
где а1=1,2х?, ао—х\ — постоянные величины.
Вспоминая формулу из § 5, получим
?- = 2xl + a1 = 2xi + l,2xt.
Рассуждая точно так же, найдем и формулу для производ-
производной по х2:
"' Оу 1-1 9»-
дх, ~ г ' '1'
что, впрочем, ясно и из симметрии выражения / (хи хг)*).
Собственно, дальше считать почти нечего. Нам известно,
что в минимуме должны выполняться условия
дх^ дх%
Поскольку в данном случае мы располагаем формулами
для этих производных, то можем записать эти условия
в виде системы уравнений:
2*,+ 1,2л;г = 0,
2л:г+1,2л-1 = 0.
Решение находится сразу: хх -0; х2=0. Это и есть координа-
координаты искомого минимума, в котором функция цели обращается
в нуль.
В принципе тому же условию должны удовлетворять и точки мак-
максимума. Но очевидно, что, беря лъ х2 положительными и увеличивая
их, мы сможем сделать f(xlt х„) сколь угодно большой, и по крайней ме-
мере заведомо большей нуля Значит, пулевое значение f не може! быть
максимумом. Можно доказать и то, что Xj~=O, х2=0 — единственный ло-
локальный минимум.
Для того чтобы убедить чшателя, что это доказательство, а следова-
следовательно, и прямой аналитический п>ть не сголь просты, как кажется,
немного изменим функцию цели. Пустг
Почти ничего не изменилось, и буквальное повторение рассуждения
приведет к прежнему результату, что ;очка с координатами xl~=-x2~0
есть точка минимума В действительности же это совершенно неверно:
') Выражение называется симметричным, если при замене аргу-
аргумента Х\ аргументом х2 и наоборот его величина сохраняется; иными
словами, если f(xlt x2)=f(x2, xx).
83
Ведь функцию цели можно преобразовать к виду
Возьмем теперь точку, где хг~—х%—а. В этой точке f(a,—а)=—а2 и,
вначит, меньше нуля при любом аф 0. Следовательно, значение ДО, 0)=0
не является минимальным. Более того, ясно, что минимум функции
цели здесь может достигаться только на границе области поиска. Оши-
Ошибочность же нашего первоначального результата объясняется тем, что
мы не учли возможности появления стационарных точек, не являющихся
ни максимумом, ни минимумом. Более тщательное исследование показы-
показывает, что точка x1=xi=6 в действительности является седловой точ-
точкой — аналогом точки перегиба в двумерных задачах (рис. 6.8).
84
Описанный простой случай, конечно, редкость. Обычно
решение подобной системы уравнений не легче исходной
задачи. Ведь даже в одномерном варианте приходится за-
зачастую прибегать к итеративным процедурам поиска кор-
корней, а в многомерном — это скорее правило, чем исклю-
исключение.
Поэтому будем рассматривать данный пример просто
как тренировочный и попытаемся выяснить, как же с ним
справляется Наискорейший спуск.
Возьмем произвольную исходную точку, например,
х\0)=\, 40)=2> где / (х[°\ 40>)=7,4- Сосчитаем в ней зна-
значения производных *)
¦ТГ ) == 4,4, ( 757
Следующую точку надо искать, двигаясь по направлению
антиградиента, т. е. следя за значениями функции цели,
когда координаты меняются по правилу:
=1_4,49,
=2-5,26,
причем 9 растет, начиная от нуля.
Подставим эти выражения в формулу для f (xlt x2):
/[*i F), х* (9)] = A-4Д GJ+B-5,2 9J +
+ 1,2A-4,48).B-5,2 8) = F0(8).
Ясно, что f {хг, х2) превратилась в функцию от единственной
переменной 9, так как движение происходит по уже выбран-
выбранной прямой. Минимум функции / (xlt x2) по этому направ-
направлению и есть минимум iF0 (9) среди всех положительных 9.
*¦) Если бы мы не умели или не могли непосредственно вычислять
производные, то можно было ограничиться оценкой производных. За-
Зададимся величиной пробного шага Ai=0,1 и сосчитаем /(xiO)+ i^i, -40))=
= / A, 1; 2)= 7,85. Тогда оценка частной производной по*!, т. е. средняя
крутизна по Xi, найдется по формуле
1 г
"¦• ¦"¦ • ¦ и°>\ f (хт х@)I — —— Г7 85 7 41 = 4 5
что мало отличается от истинной крутизны, равной 4,4.
85
После раскрытия скобок и приведения подобных, Fo F)
приобретает знакомый вид полинома 2-й степени *)
FO@) = 82,9, В2—46,46 + 7,4.
Его максимум находится из условия:
F'0{Q) = 2- 82,9 9 — 46,4 = 0,
откуда следует, что 6тах=0,280.
Тем самым определилось наилучшее значение коэффи-
коэффициента 0 на исходном шаге. Полагая 0(О)=0тах=О,28О,
можем теперь найти и координаты следующей точки оста-
остановки:
= *«»_em AL) =l_4,40(O) = —0,230,
= 2-5,20<о> = 0,543.
За один шаг мы резко приблизились к минимуму, уменьшив
значение функции цели в 15 раз, ибо f (л^1', х^1))=0,497.
Второй шаг делается уже из точки х{1}, х121} точно по такой
же схеме. Без особых пояснений приведем результаты
последовательных выкладок:
|П =_ 20,230+1,2-0,543 = — 0,192;
(JL) ^ = 2-0,543 +1,2- 0,230 = 0,808;
Xl (G) = —0,230 + 0,1920; х2(9) = 0,543-0,8080;
Fx @) = ( — 0,230 + 0,192 9J + @,543 — 0,808 0J +
+ 1,2(—0,230+ 0,192 8) х @,543 —0,808 6) =
= 0,502 92 —0,6280 + 0,497;
и — "max — v,U?l ,
х[» = x[l) @1) = — 0,230 + 0,192 —0,627 = —0,110;
42) = 0,038;
f(x[", x{») = 0,0085.
За два шага функция цели уменьшилась в 870 раз, а рас-
расстояние до истинного минимума сократилось почти в 20 раз.
Ограничимся этими двумя итерациями и попытаемся
*) Все вычисления здесь ведутся с точностью до трех знаков.
86
сделать некоторые выводы. Во-первых, в нашем примере
функция цели убывала очень быстро, и притом заметно
быстрее, чем расстояние до экстремума. Автор спешит
заверить читателя, что это — обычное явление при использо-
использовании схем спуска. Во-вторых, наиболее трудным местом
в расчетах 'явилось вычисление шага по выбранному на-
направлению. Это уже не является правилом, а скорее следст-
следствием того, что мы решали двумерную задачу, в которой
вычисление производных — дело несложное. В задаче же
«более многомерной» эти расчеты усложнятся, а выбор 0
по-прежнему останется одномерной проблемой. Впрочем,
здесь все же сказывается «обратная сторона медали»: если
применяется обычный градиентный поиск с постоянным
малым шагом, то необходимость в вычислении 6 отпадает.
Число итераций, возможно, станет большим, но каждая
итерация упростится. Наконец, читатель может сказать,
что и вообще все расчеты для столь простой задачи оказы-
оказываются ужасно сложны. Но опять-таки стоит ответить так:
расчеты хоть и громоздки, но однотипны, носят повторяю-
повторяющийся характер, а потому удобны для вычислительных
машин.
§ 7
ГЕНЕАЛОГИЯ ПОИСКА
[Релаксационные
схемы. Сравнение
методов]
Среди достоинств, которыми
должен обладать научный работ-
работник или изобретатель, немало-
немаловажную роль играет одно: уме-
умение отвечать на критические
замечания. Только наивный
юноша думает, что как только
он изобретет новую машину,
новый прибор или даже новую
теорию, он сразу вкусит' плоды
успеха. Помимо того, что надо
уметь изобретать (об этой не-
необходимости также часто забы-
забывают начинающие изобретатели!),
надо еще научиться отстаивать
право изобретенного на сущест-
существование. Культурный читатель
сразу оживит в своей памяти
книжно-театральную галерею
образов добрых и умных Нова-
Новаторов, борющихся против злых
и глупых Консерваторов во имя
Прогресса и Человеческого До-
Достоинства *)! Но мы говорим
совсем не о том. Всякое изобре-
изобретение должно быть подвергнуто
критической проверке: надо вы-
выяснить, во-первых, работает ли
оно; во-вторых, отличается ли
оно от прежних, известных в
этой области машин, приборов,
Сладостно девы стыдливой
ропганье . ..
Э. Парни
*) Автор вовс'е не собирается от-
отрицать жизненность таких типов. Один
из его бывших начальников признавал-
признавался: «Знаете, как я отличаю действи-
действительно новое от того, что только прит-
притворяется новым? По вполне научной
методе: если оно действительно новое,
прогрессивное, то оно пробьется через
любые преграды. Вот я и зажимаю вся-
всячески все то, что отличается от старо-
старого. Если уж чему-нибудь удалось меня
преодолеть, то совершенно ясно: это
действительно новое, жизненное, а не
какое-нибудь мнимое новаторство».
теорий. И, наконец, если на эти два вопроса получен по-
положительный ответ, остается выяснить самое сложное и
главное: а не хуже ли оно работает, чем то, что уже из-
известно. Еще полдела, если окажется, что ваше изобрете-
изобретение работает быстрее, производительнее старых. Может
ведь оказаться, что оно много сложнее, дороже.*
Как же научиться отстаивать свое изобретение в та-
таких тяжелых условиях? Лучший способ прост: прежде чем
выносить свое драгоценное изобретение на вселенский суд,
надо попытаться самому заранее ответить на все вопросы,
которые могут потом возникнуть у придирчивых крити-
критиков. Лишь немногие изобретатели следуют этому полез-
полезному правилу, но, естественно, от этого его полезность
не уменьшается.
Так вот, вообразим, что именно мы в долгих творческих
муках изобрели метод многомерного поиска, основанный на
движении по градиенту и, в частности, наискорейший
спуск. Будучи разумными изобретателями, попытаемся
подвергнуть его жестокой критике.
Прежде всего, работает ли изобретение? По-видимому, да.
Ведь мы уже привели и общие теоретические соображения
и практически опробовали маленькую (двумерную!) мо-
модель. С этим все в порядке. О втором вопросе, о приоритете,
мы, в силу сдвига исторической перспективы, говорить,
естественно, не будем.
Ну, а по поводу третьего, самого важного, придется
поговорить. Правда, чтобы говорить на эту тему, надо
побольше знать о других методах, а мы познакомились
лишь с очень малым числом. Преимущества перед прямым
перебором *) и движением по заранее заданной сетке ясны.
Но нет ли других конкурентов? Поверьте опыту автора:
есть, и очень опасные. Читатель еще не знаком с ними,
но, обладая живым воображением, несомненно, догадыва-
догадывается об их существовании.
Прежде всего, так ли разумно мы поступаем в градиент-
градиентных схемах, затрачивая столько времени на ощупывание
всей окрестности, на измерение крутизны по каждому на-
направлению?!
Разберемся в этом критически. Для чего нам был необ-
необходим обзор окрестности? Во-первых, для выяснения того,
") Напомним: речь идет только о поиске локального экстремума!
В противном случае говорить о преимуществах над перебором мы не
имеем права.
89
не пришли ли мы уже в локальный экстремум, а во-вторых,
если это не подтвердилось,— для выбора направления,
в котором надо двигаться. Для решения второй задачи мы
оцениваем крутизну склона по всем выбранным направле-
направлениям — координатным осям, а потом движемся по гра-
градиенту (или антиградиенту), выбирая коэффициент пропор-
пропорциональности 0 одинаковым для каждой координаты.
Если бы мы выбрали неодинаковый коэффициент, то и
двигались бы не по градиенту (рис. 7.1), отдавая предпочте-
предпочтение какой-либо одной координате (рис. 7.1 — координате х2).
/радиет
Рис. 7.1.
Но если хорошенько присмотреться, то окажется, что
«одинаковость» коэффициента 6 в градиентной схеме —
дело сугубо условное. Ведь об одинаковых 8 можно гово-
говорить, только если все переменные измеряются в одних и
тех же величинах, например в метрах, как это было на
«соревнованиях», устроенных в предшествующем парагра-
параграфе, или если все переменные измеряются в безразмерных,
относительных величинах, как мы условились делать в этом
параграфе. В противном случае формулы просто не будут
иметь смысла.
Но если использовать относительные величины (а так
всегда приходится делать, если функция цели зависит от
разнородных аргументов!), то направление в реальном
пространстве исходных величин окажется зависящим от
масштаба. Масштаб же, как известно, вещь произвольная,
так что и такое, на первый взгляд, строго математически •
определенное понятие, как градиент, на самом деле оказы-
оказывается произвольным.
90
Поясним все эти рассуждения на простом, двумерном
примере. Пусть вновь оптимизируется работа печи, точнее,
ищется такое сочетание температуры (х,) и объемного рас-
расхода (х2) воздуха, нагнетаемого в печь, которые обеспечи-
обеспечивают наибольшую производительность /. Если хх измеря-
измеряется в градусах по Цельсию, л;2 — в кубометрах в минуту, а
/ — в тоннах за час, то формулы
(a+v _
xv™ =.
смысла не имеют, если 6 — одно и то же в обеих формулах.
Действительно, складывать можно только величины одной
размерности. Сумма двух тонн и 1° С бессмысленна.
А ведь у нас именно так и получится. Напишем вместо
входящих в формулы величин просто их размерности, как
это делается в физике. Получим
Г м* 1 = \jPJ\ g Г т/час 1
[ мин J L мин J ~* [л*3/-"""] '
Здесь 0 пока оставлено без указания размерности, но, чтобы
осмыслить первую формулу, надо принять, что 6 имеет
Г (°СJ-час1
размерность — , и тогда градусы будут склады-
складываться с градусами, как им и положено. Но чтобы вторая
формула имела смысл, надо положить размерность 9 равной
— ^ '. Итак, одна и та же величина должна иметь
[т(минJ]
различные размерности, что нелепо.
С введением безразмерных величин мы, естественно,
избавляемся от этих неприятностей. Напомним, что отно-
относительные величины вводились по правилам
- _ Xj—Х-,„ . - _ ж» — лг»..
но можно использовать и другие правила; например,
или х, =
, или х,
*) Конечно, часы можно перевести в минуты, как н любые однород-
однородные меры, но здесь от этого легче не будет.
91
и т. д. Любое из этих правил приводит к безразмерным ве-
величинам, все они разумны и даже используются на прак-
практике, но все, очевидно, приводят к разным значениям отно-
относительной величины хи если считаются по одной и той же
исходной величине х,. Более того, и в самой первой нашей
формуле все зависит от назначения верхней и нижней гра-
границ, а они в свою очередь практически тоже выбираются
с известным произволом.
Конечно, в осмысливании окончательных результатов
от этого произвола нет никаких бед: поскольку выбрано
какое-то определенное правило пересчета из абсолютных
величин в относительные, то им всегда можно воспользо-
воспользоваться для обратного пересчета.
Формулы для определения направления движения к но-
новой точке из исходной (х[0), хB0)) известны:
Они записаны, как и полагается, в относительных коорди-
координатах. Покажем, что они дадут в двух случаях: (а) когда
все относительные величины получены из абсолютных по
формулам типа
У — У*
У-
У — Уи
и (б) — когда используются формулы типа у = ——— (под
Ув
у в обоих случаях может пониматься любая из рассматри-
рассматриваемых величин хи х2 или /). Подставив эти определения
в формулы градиентной схемы *), получим в случае
Ф) *2Н *2 *2Н . А
-^2В Х2П Х2В Х2Н \ ®Х2 ) О /В / н
ИЛИ
df
/в !п
*) При переходе от относительных значений производных к абсо-
абсолютным и обратно надо вспомнить, что производные определялись через
отношение приращений.
92
? (Д,
Аналогично в случае
б) мв)=
Мы убеждаемся, что в формулах для абсолютных величин
коэффициенты при производных по 1-й и 2-й координатам,
естественно, оказываются разными. Это, как мы уже видели,
необходимо для их разумности. Но сейчас важно другое:
введение относительных величин по определениям (а) и
(б) приводит к разным -направлениям в изменениях абсо-
абсолютных координат. Действительно, тангенс угла наклона
направления движения равен отношению приращений,
т. е. в случае (а) равен
JL
дх2 и
¦, а в случае (б)
равен
. Как бы ни выбирался коэффициент 9,
1L
дх2 у о
мы, исходя из одной и той же точки, двигаясь, казалось бы,
по одному и тому же градиенту, не сможем прийти в одно
и то же место, если ис-
используем (рис. 7.2) раз-
ные масштабы! Итак, не-
непогрешимость градиента,
как и любого абсолют-
абсолютного властителя, постав-
поставлена под сомнение. Дер-
Дергая за тайные ниточки —
масштабные коэффици-
коэффициенты, мы можем заста-
заставить его направление
поворачиваться по на-
нашему произволу. Теперь-
то мы и можем с пол-
полным основанием спро-
спросить: поскольку это направление произвольно, зависит от
таких, не имеющих прямого отношения к задаче, приемов,
как способ выбора относительных величин, то стоит ли
тратить столько усилий на его определение?
Рис. 7.2.
93
Ответить на этот воп-
вопрос безапелляционно: «Нет,
не стоит!» мы все-таки не
можем. Прежде всего, мы
видим, что хотя выбор мас-
масштаба влияет на величину
приращений, но знак при-
приращения остается неизмен-
неизменным и полностью опреде-
определяется знаком соответст-
соответствующей производной. По-
Поэтому «вертеть» градиен-
градиентом, управляя масштабами,
мы можем только в опреде-
определенных пределах: его никак
не удастся повернуть в про-
противоположную сторону.
Более того, все возможные направления помещаются в
пределах прямого угла (на плоском, двумерном рис. 7.2)*
а в общем, n-мерном, случае в пределах одного ортанта.
Так что произвол ограничен.
Но все-таки из самого понимания этого произвола можно
сделать массу полезных выводов.
Прежде всего, поскольку произвол ограничен опреде-
определенностью знаков производных, то можно и при «ощупы-
«ощупывании» окрестности ограничиваться только оценкой знака
крутизны, т. е. не вычислять приращения, а лишь произво-
производить сравнения (больше — меньше). Напомним, что только
это необходимо и для проверки на «экстремальность».
А производить сравнения проще, чем осуществлять вычи-
вычитание и деление, что приходилось делать при оценке
производных.
Отсюда вытекает разумность нового алгоритма и даже
целого семейства итеративных алгоритмов. Их действие
при поиске максимума таково: исходя из произвольной
точки и попав после ^-го «большого» шага в точку с ко-
координатами (х{{\ ха1,..., *</>), производим «ощупывание»,
сравнивая значения в соседних точках, и затем делаем
A «большой» шаг в новую точку с координатами
[i1/+1> в зависимости от результатов срав-
сравнения.
Поскольку по всем координатам делаются однотип-
однотипные операции, попробуем выписать формулу для первой
(+)
(x[t+1>, x[i+1)
94
координаты:
9, если /(x'j'4- Л1; х\
— 0, если/(*['> +Л,,
<f(x['\ х:
О, если f(x[t)JrAx, x(j\
= f(x\'\
(t)
, х«>) <
уФ
Можно и не разбираться в формуле, а просто посмотреть на
картинки, на которых показано, в какую сторону должен
делать шаг величиной Э «ищущий человечек» на рис. 7.3.
Рис. 7.3.
Эта схема называется шаговой, поскольку в ней задание 8
определяет,не коэффициент пропорциональности, а просто
величину «большого» шага. Шаги по разным координатам,
конечно, могут делаться разными и производятся одновре-
одновременно, так что задание величин определяет и выбор направ-
направления (рис. 7.4). Если все величины заданы (одинаковы
для всех шагов), то и метод называется постоянно-шаговым.
Если в него тщательно всмотреться, то он живо напомнит
вам одного старинного знакомого. Ведь если шаг задан,
то каждая координатная ось разобьется на отрезки, равные
шагу, и только на концах этих отрезков мы и сможем побы-
побывать, двигаясь по избранной методе. Если же посмотреть
возможные положения в пространстве или хотя бы на
плоскости, то мы обнаружим старую знакомую — заданную
95
сетку. По узлам этой сетки только и может шагать «ищу-
«ищущий человечек» (рис. 7.5).
Однако, конечно, постоянно-шаговая схема не совпадает
с известной тактикой Сеткина, описанной в § 4: ведь прощу-
, пывание ведется не по узлам
¦** сетки, оно лишь задает поло-
положение после «больших» ша-
шагов. В новой схеме, как и в
'I других схемах, использую-
использующих идею экстраполяции,
возможности «размышления»
в, xt и «действия» не связаны меж-
р - 4 ду собой жестко. С другой сто-
стороны, воспоминания о прош-
прошлом помогут нам разобраться в особенностях новой схемы.
Прежде всего, поскольку число узлов в ограниченной
области конечно, то и итеративный процесс за конечное
число шагов приведет нас в окрестность экстремума. Можно
Рис. 7.5.
было бы сказать, что он остановится, сойдется за конечное
число шагов, но это несколько неосторожно. Бывают не-
неприятные ситуации, и с ними можно познакомиться даже
на одномерной картинке (рис. 7.6). Ясно, что, прийдя на
t-м шаге в точку х и основываясь на ощупывании окрест-
окрестности, придется сделать шаг направо, на величину Э, и прий-
прийти в точку x-\-Q—y, но ощупывание в ней покажет, что надо
двигаться налево, и мы вновь окажемся в точке х\
Как говорят, процедура «зацикливается»: «ищущий че-
человечек», вместо того чтобы мирно остановиться в окрест-
96
Рис. 7.6.
ности экстремума, будет вынужден пуститься в бесконеч-
бесконечный пляс, прыгая из х в у и обратно.
Таким образом, выяснился важный порок схемы: она
может зацикливаться и при этом, если ее остановить в
произвольной точке цикла, например в х, то точность попа-
попадания в экстремум будет порядка 9, а не порядка А, как это
было в исходной градиентной схеме. Конечно, величину
шага можно по ходу дела менять, например, на начальных
этапах вдали от экстре-
экстремума брать большую ве-
величину шага, а потом ее
уменьшать, или начать
уменьшать, как только
обнаружится цикл.
Но если говорить по
справедливости, это бу- • х х+^
дут уже новые схемы,
схемы с переменным ша-
шагом. Так что у них и
достоинства, и недостатки новые. Достоинства уже ясны,
а недостатки? Они в самой идее: если менять шаг, то надо
знать, как менять. Самое естественное, менять шаг в соот-
соответствии с крутизной: если крутизна больше, то и шаг
больше. Но, позвольте, скажет возмущенный читатель, в
этом и суть ранее раскритикованной градиентной схе-
схемы; придется ведь снова оценивать величины производ-
производных!
И читатель будет несомненно прав: наш критический
круг замкнулся, и мы пришли в исходную точку. Для лю-
любого метода, лежащего на этом пути, найдены свои арго»
и «contra», «за и против», и решительного предпочтения мы
никому отдать не можем. Стоило ли заниматься тогда кри-
критикой,— заметит скептический читатель. Ну, конечно же,
стоило; критика была воистину плодотворной: она родила
нам целое семейство новых поисковых процедур.
Кстати, мы еще не познакомились со всеми членами этого
семейства. Есть и еще одно разумное «подсемейство»: как
и в градиентном наискорейшем спуске, выбрав направле-
направление, можно длину шага, параметр 9, подбирать, двигаясь
вплоть до экстремума по выбранному направлению, а сам
одномерный поиск экстремума производить разнообраз-
разнообразными способами. Все члены такого «подсемейства» итера-
итеративных схем совсем неплохо работают практически и,
пожалуй, эффективнее «прародителя» — простой схемы с
постоянным шагом.
Но автору хочется поскорее познакомить вас с предста-
представителями еще одной и, видимо, более древней и знатной
семьи, издавна конкурирующей с семейством градиентных
за первенство среди всего многочисленного племени ите-
итеративных поисковых процедур, и, как мы убедимся, по
праву. Эта семья носит гордое и непонятное имя: «методы
релаксации». Происхождение имени действительно древнее,
и разъяснение его происхождения увело бы нас далеко
в сторону от основной линии нашего повествования, заведя
в дебри науки о строительных конструкциях. Впрочем,
в переводе слово «релаксация» означает просто «ослабление,
расслабление», и некоторый смысл мы в этом потом увидим.
Но хватит лингвистики, перейдем к делу и узнаем, что
же таится за этим словом.
А тайна более чем проста. Пусть, как всегда, задана
произвольная начальная точка с координатами xf\ х[0),...,
х^; а значение функции в ней равно /@>=/ (х[0), хB0>
*п0)). Положение точки в пространстве закреплено. Начнем
теперь ослаблять связи, позволяя поочередно изменяться
каждой координате. Сначала изменим первую из них, xlt
оставив другим прежние значения, и будем осуществлять
одномерный поиск по хи пока не наткнемся на экстремум по
направлению этой оси. Там, в точке с координатами х[и,
хB°\ хC0),..., х^\ и остановимся, после чего «ослабим» вто-
вторую координату и позволим точке двигаться по ней, вплоть
до экстремума по х2, при закрепленных остальных коорди-
координатах (координата лгх имеет уже новое значение х?\ до-
достигнутое на предшествующем шаге!). Эта процедура пов-
.торяется п раз, за которые мы по очереди «расслабим» все
п координат. А потом — вновь беремся за координату a'i
и делаем новый цикл из п шагов и т. д., пока не остановимся.
Остановка произойдет тогда, когда очередная точка ока-
окажется точкой экстремума по всем координатным направле-
направлениям *). Не правда ли, удивительно простой и изящный
метод? Недаром его создание связывают с именем гения
математики Гаусса. В нем, так же как и в наискорейшем
*) Очевидно, что если функция цели фактически представляет со-
собой сумму функций, каждая из которых зависит только от одной пере-
переменной, т. е. f(xlt x2 *n)=/:1(*1)+/i,(*;.) /„(*„), то экстремум
будет достигнут за один цикл нз п шагов.
98
спуске, многомерный поиск превращается в последователь-
последовательность одномерных, но не делается никаких прощупываний
с целью выбора направлений таких одномерных движений,
а просто перебираются по очереди все направления коорди-
координатных осей. И тем не менее почти всегда достигается успех.
Простота релаксационных схем (возможные варианты только
что описанной схемы читатель, наверное, уже придумал)
издавна делает их излюбленным оружием исследователей.
Более того, часто появляются новые научные работы, опи-
описывающие новые схемы поиска, а в них, если внимательно
вглядеться, замечается все та же знакомая идея рела-
релаксации.
Итак, у нас новое увлечение. Отбросим утомительную
процедуру нахождения направления градиента и... «нет
бога, кроме релаксации,
и Гаусс — пророк ее!»
Но... тут снова возни-
возникает критическое «но,—
как сказал великий Гёте,
современник великого
Гаусса,— нет на земле
проступка без отмще-
отмщения!» Мы отошли от не-
необходимости выбора на-
направления и зарабо- Рис. 7.7.
тали ряд неприятностей.
Прежде всего, в релаксационной схеме может оказаться куда
больше шагов одномерного поиска, чем в наискорейшем
спуске. Число шагов в релаксационных схемах крайне
чувствительно к ориентации линий уровня функции цели
относительно осей координат. Для убедительности приве-
приведем один классический пример. Пусть разыскивается ми-
минимум функции f (xlt хг)=а2х1+х1. Линии постоянного
уровня, задаваемые условиями f=a2xl+xt=c (а и с —
постоянные числа), здесь, как нетрудно убедиться, эллип-
эллипсы, полуоси которых ориентированы по осям координат
(на рис. 7.7 показаны линии уровня при а=1/2). Ясно,
что релаксационная схема приведет из начальной точки А
в минимум (хх=0; х2—0) за один цикл из двух шагов. Повер-
Повернем теперь все эллипсы на 45° относительно осей, или, что
то же самое, повернем оси на 45° (рис. 7.7). После поворота
отсчет координат изменится, и, вспомнив тригонометрию
или даже просто теорему Пифагора (см. рис. 7.8), нетрудно
99
убедиться, что точка с новыми координатами уи уг имела
старые координаты
у _ Уг — Уг v __ У1 + У2
Х Х
Функция цели останется прежней, но ее описание в новых
координатных осях будет другим:
Теперь уже функция цели не представляет собой сумму
л, '
Рис. 7.8.
функций от каждой из координат в отдельности, и, увы,
за один цикл здесь до минимума не добраться. Зигзагооб-
Зигзагообразный путь, проходимый при релаксации, показан на
рис. 7.9. Теоретически придется сделать бесконечное число
шагов для того, чтобы прийти точно в экстремум. А ведь
функция-то, по существу, сложнее не стала'
Вместе с тем градиентная схема как бы сама на каждом
шаге выбирает направление оси, по которой надо двигаться,
и эта ось обычно оказывается ближе к разумному направ-
направлению, ведущему прямо к цели В конце § 6 проводился
расчет именно для такой функции по методу наискорейшего
спуска. Уже за два шага мы попали в малую окрестность
экстремума, приблизившись к нему до 0,05 от исходного
расстояния
С другой стороны, хотя в этих неудобных для релакса-
релаксации осях координат для продвижения релаксационным
методом к минимуму потребовался хитрый, зигзагообразный
путь с большим числом итераций, стоит внимательнее по-
посмотреть, как проводились расчеты.
100
Функция цели при а=1/2 записывается в виде *)
Поиск начинается из точки с координатами г/<10)=1;
(рис. 7.9).
Рис. 7.9.
Освободим координату ylt оставив у2 закрепленной и
равной г/20>=2. Тогда функция цели будет иметь вид
= У\
и окажется функцией только координаты yt. Ее минимум
находится из условия
^ ^0>)=2^+1,2^в) =2У1+ 2,4=0.
Таким образом, координаты новой точки таковы:
ai — Уг — l>zi Уг Уг —*'•
Теперь закрепляем координату ух на новом уровне и начи-
начинаем изменять у2. Функция цели снова становится функцией
только одной координаты:
*) Фактически после подстановки а—Ш в предшествующую фор-
формулу для {(уъУъ) получается функция, отличающаяся от записанной
множителем 5/8 Однако очевидно, что умножение всей функции цели
на постоянный множитель не меняет расположения экстремума.
101
Ищем ее минимум из условия
и переходим в
новую точку
./1)— 19
Уч. ¦
-у? = 0,72.
Далее начинаем следующий цикл, т. е. вновь возвращаемся
к переменной уи затем к уг и т. д. Результаты счета пока-
показаны в таблице и, как уже говорилось, на рис. 7.9.
от
ЦИК
Чл
f
1
2
7
0
,0
,0
,4
_,
2
2
,2
,0
,56
1
1
0
0
,2
,72
,92
-0
0,
0,
2
432
72
09
—0
0
0
,432
,259
,030
—0,
0,
0,
3
155
259
ОН
—0
0
0,
,155
,093
0037
4
—0,056
0,093
0,0013
—0,056
0,033
0,0005
Как видите, хоть итераций и много, но каждая из них
куда проще, чем в методе наискорейшего спуска. Снова
типичное сочетание: «да! но?», т. е. есть доводы и за, и
против.
Обратим теперь внимание (рис. 7.9) на одну интересную
особенность траектории поиска в рассчитанном примере:
точки последовательностных итераций лежат на лучах /,
//, задаваемых уравнениями
2 1,2
и траектория зигзагообразно, лесенкой, спускается к началу
координат между этими лучами. А что если сразу восполь-
воспользоваться этим свойством при организации поиска? Сделав
три первых шага, мы получим две точки Аг и А3, лежащие
на прямой, непосредственно идущей в минимум. Коль так,
то, сделав единственный шаг вдоль этой прямой, сразу
приходим в экстремум (рис. 7.9). Для этого вместо беско-
бесконечной лесенки, потребовалось всего четыре шага. Такой
вариант спуска часто называют методом параллельных
касательных (ПК). Возникновение этого названия связано
е тем, что метод ПК прямо или косвенно использует сле-
следующее свойство семейства концентрических эллипсов,
которыми в нашем примере являются линии уровня: если
102
в начальной точке Ло провести касательную к линии уровня
(рис. 7.10), а затем провести произвольную прямую, ей
параллельную, то эта прямая также окажется касательной
к какой-нибудь линии уровня, а минимум, общий центр
эллипсов, обязательно ля-
ляжет на прямую, соединяю-
соединяющую точки касания. Оче*
видно, что прямые, прохо-
проходящие на рис. 7.9 через
АпАх и A2AS, параллельны
и касаются в точках Ах и
Л3 соответствующих линий
уровня. Следовательно, на-
нами было использовано имен-
именно это свойство параллель-
параллельных касательных. Строгое
его доказательство, и тем бо-
более распространение на п-
мерный случай (когда п>2),
достаточно сложно и приводиться не будет. С методом ПК
можно подробнее познакомиться по книге [16]. Ограничимся
одним замечанием: сама возможность ускорения здесь свя-
связана с эллиптическим характером линий уровня. Если же
«эллиптичности» в действительности нет, то, вообще говоря,
может пропасть и эффективность приема. Практически все
же оказывается, что при достаточной гладкости функции
цели в окрестности экстремума линии уровня обычно близ-
близки к эллиптическим, и прием, хотя и не приводит точно в
экстремум, но дает хорошее следующее приближение.
Здесь полная аналогия и внешне и по существу дела с ме-
методом Ньютона. Относительная узость метода ПК, его
«привязанность» к определенному классу поверхностей,
была очевидна с самого начала. Поэтому попытаемся еще
раз осмотреться и поискать удачливых конкурентов Наи-
Наискорейшего спуска среди более универсальных способов.
Рис. 7.10.
о
РЫЦАРИ УДАЧИ
И ЗАНОЙ
(Локальный
случайный поиск)
За черной тучей спрятано
полнеба,
И плача, ветер в соснах
бьет тревогу. Земля уже
закрыта черной тучей.
Отыщет ли Пер Гюнт свою
дорогу?
Г. Мистраль, «Песни
Сольвейг»
Релаксационные схемы —
несомненно, солидное и заслу-
заслуженное семейство, по праву
гордящееся и древним происхож-
происхождением, и современным преуспея-
преуспеянием. Однако при внешней со-
солидности в их поведении все же
кроется нечто легкомысленное.
В самом деле, как они осущест-
осуществляют выбор направления? Ка-
Казалось бы, солидно: по порядку
номеров координат. Но откуда
взялся этот порядок, почему
температуру назвали — хи рас-
расход — хг, а не наоборот? Да
совершенно случайно, наугад,
без всяких на то оснований и
предпочтений. Кроме того, и
сами-то направления осей, по
существу, случайны: ведь всегда
перед началом поиска могло быть
осуществлено преобразование
координат, и оно, как мы уже
видели, может и улучшить, и
ухудшить дело.
Итак, в солидных релакса-
релаксационных схемах есть скрытый
элемент легкомыслия. Но ясно,
что этот элемент есть и в гра-
градиентных схемах: во-первых, на-
направление градиента зависит от
выбранного наугад масштаба по
каждой оси, а во-вторых, обзор-
«ощупывание» окрестности каж-
каждой точки ведется только по
направлениям осей координат,
а они опять-таки выбраны слу-
случайно. Естественно, что все это
относится и к постоянно-шаго-
постоянно-шаговым схемам.
Таким образом, мы убеди-
убедились, что при всей внешней
предопределенности (детермини-
104
зме, как говорят ученые) изученных нами процессов поиска
в них явно присутствует элемент угадывания, случайности.
Правда, этот элемент проявляется только один раз, перед
началом поиска, но он, конечно, влияет на всю дальней-
дальнейшую его историю.
Ситуация в известной степени напоминает игру в карты
в открытую двух очень сильных игроков, действующих
безошибочно. Их ходы, по существу, предопределены вы-
выпавшими каждому картами, но сами карты, доставшиеся
каждому, выбраны из колоды случайно, и именно это опре-
определяет исход игры. Но фактически поиск тоже представляет
собой игру, игру против Природы, которая делает ход,
предлагая нам одну из бесчисленного количества имею-
имеющихся у нее загадок — задач поиска *).
Каждую целевую функцию можно рассматривать как
наугад извлеченную из колоды, которую тасует Природа.
От того, насколько удачно мы примеримся к этой функции,
насколько удачно изберем стратегию поиска, и зависит наш
успех.
Итак, в обычных схемах все предопределено первым
случайным выбором: Природа выбрала одну из функций,
мы выбрали один из методов поиска. Но, может быть, этот
выбор неудачен, не подходит к данной функции? В обычных
известных нам схемах неудачу исправить уже нельзя.
Поэтому естественно попытаться использовать и более
гибкую стратегию, вводя элемент случайного выбора, уга-
угадывания, на каждом шаге. Возможно, что при этом удастся
лучше приспособиться к выбранной Природой функции.
Присмотримся еще раз к изученным схемам. Ведь при
всем различии в них явно просматривается одна общая
черта: в каждой точке выбирается одно из подходящих на-
направлений, составляющих острый угол с градиентом, а
потом проводится одномерный поиск по выбранному направ-
направлению. На выбор подходящего направления тратятся зна-
значительные средства. В n-мерной задаче для этого требуется:
в градиентной схеме м+1 измерений, а также их обработка,
включающая п вычитаний **), в постоянно-шаговых —
столько же измерений и п сравнений, в релаксационных
*) В этой книге не вводится никаких строгих представлений теории
игр. Читатель, знакомый с этой теорией, сможет глубже понять идею
игры против Природы, прочитав § 12.
**) Деление на Д можно не производить, считая, что эта операция
компенсируется выбором коэффициента 6.
схемах — три (или два) измерения и одно вычитание (или
сравнение), определяющие выбор направления движения
(вправо — влево) по уже заранее определенной оси. Градиент-
Градиентные схемы опирались на идею выбора наилучшего, по
крайней мере по отношению к малым шагам, остальные
же довольствовались выбором произвольного подходящего
направления, затрачивая на это соответственно меньшие
усилия.
Каждый шаг в них может быть менее успешным, т. е.
на каждый шаг может приходиться меньшее приращение
целевой функции, так что на продвижение вверх, достигну-
достигнутое за один шаг градиентной схемы, придется несколько
шагов более простых схем, но зато совокупные усилия на
это продвижение могут оказаться меньшими.
Таким образом, и эти рассуждения приводят нас к тому,
что выбор направления в каждой точке, возможно, не стоит
осуществлять с такой тщательностью, как в градиентных
схемах.
Может быть, стоит выбирать его просто наугад, слу-
случайно, причем на каждом шаге независимо от предшествую-
предшествующих?
Именно эта идея лежит в основе действия еще одного
семейства в славном племени итеративных схем — методов
случайного поиска. Это — самая молодая по возрасту, но
очень обширная и бурно растущая семья.
Мы познакомимся лишь с несколькими, наиболее извест-
известными ее представителями.
Представим сначала первого. Он придерживается очень
простой тактики: опираясь, как и его родственники из
релаксационной семьи, на принцип выбора направления
только по осям координат, он вместе с тем отказывается от
условности: «переход к новому направлению по раз навсегда
установленному порядку». Этот метод каждый раз выбирает
новое направление случайно, наугад вытягивая его из «ко-
«колоды направлений».
При этом каждое одномерное движение может осуществ-
осуществляться по любому правилу. Если используется, как в наи-
наискорейшем спуске, идея продвижения до экстремума по
избранному направлению, то оно, естественно, исчерпывает
свои возможности и при выборе направления на следую-
следующем шаге должно быть изъято из «колоды».
Второй представитель семьи таков. Он вообще отказы-
отказывается от релаксационного наследства и делает выбор на-
106
правления движения, совершенно не заботясь о том, совпа-
совпадет ли оно с какой-либо осью координат. Пробный шаг дли-
длиной А делается в произвольном направлении.
Если в новой точке А (которая окажется где-то на сфере
с радиусом Д и центром в исходной точке О) (рис. 8.1),
значение функции цели окажется выше, то (при поиске
Рис. 8.1.
максимума) и направление от О к Л признается подходя-
подходящим для одномерного поиска.
Если значение в А ниже, то принимается противополож-
противоположное направление. Наконец, третий член семьи придержи-
придерживается полностью анархических взглядов. Его не устраи-
устраивает сам принцип выбора направления по изучению малой
окрестности с последующим одномерным поиском. Его де-
девиз прост: «Делай как придется. Получится — хорошо,
не получится — ну что же, не беда, повторим, может быть,
на следующий раз повезет!»
В соответствии с этим девизом он сразу делает из исход-
исходной точки большой шаг в наугад выбранном направлении.
Длину шага он обычно выбирает постоянной или меняю-
меняющейся от шага к шагу по заданному закону *), но может и ее
выбирать случайной. Именно этот наиболее оригинальный,
наиболее ярко отличающийся от уже известных методов
вариант мы и попытаемся изучить, сравнить его действие
хотя бы со схемой с постоянным шагом по градиенту.
*•) В этом параграфе мы будем интересоваться только такими свой-
свойствами случайного поиска, которые проявляются при не слишком боль-
больших рабочих шагах, даже случайный выбор длины будет считаться ог-
ограниченным. Это позволит нам оставаться в рамках локальных схем.
107
Однако изучение не будет легким. Ведь новый метод —
не просто один из многих в племени итеративных процес-
процессов, он, в сущности, пришелец из другого, таинственного
и еще совсем неизвестного нам мира — мира случайностей.
В этом мире — свой свод законов, называемый «Теория
вероятностей». Он достаточно громоздок и сложен, как и
подобает своду законов каждой высокоцивилизованной
страны, и чтобы познать его суть по-настоящему, потребо-
потребовалось бы куда больше усилий, чем это нужно для освоения
основных идей поиска.
Поэтому мы и не будем браться за столь тяжелое дело,
а лишь проведем небольшую экскурсию в случайный мир:
ведь мы уже открыли первую дверцу в этот мир, да и потом
нам не избежать столкновения с ним. Значит, за время
экскурсии придется хотя бы познакомиться с главными
правилами поведения в этом мире *).
А это, на взгляд чужестранца, очень странный, «безум-
«безумный, безумный» мир. Поведение его жителей кажется не
подчиняющимся никаким разумным нормам. Они все время
суетятся, переходя от одного дела к другому, а перед каж-
каждой переменой забегают в маленькую лавочку, где сидит
старуха-гадалка, окруженная непременными атрибутами
своего ремесла: тут и кости, и карты, и «колесо судьбы».
Чтобы что-нибудь во всем этом понять, попытаемся позна-
познакомиться с одним из жителей. Вот как раз один из них
выбегает из лавочки гадалки.
Мы:Извините, мы здесь с экскурсией и очень хотим позна-
познакомиться с вашим удивительным миром. Не могли бы
Вы нам в этом помочь.
Он: Охотно. Меня зовут е, Эпсилон, и я к вашим услугам.
Мы:Может быть, это будет нескромно с нашей стороны, но
мы хотели бы спросить, почему вы и ваши соотечест-
*) Изложение основных понятий теории вероятностей на базе эле-
элементарной математики, да еще всего на десяти страницах, является, ко-
конечно, тяжелым, если не безнадежным делом. Вместе с тем вероятностные
представления слишком существенны для теории поиска, чтобы о них
ничего не говорить, а с другой стороны, собственно вероятностная тема
не может занимать слишком много места в этой небольшой книге без то-
того, чтобы не заслонить ее основные идеи.
Именно в поисках выхода из этих трудностей автор пришел к мысли
о том, чтобы придать здесь изложению детски наивную форму, отвечаю-
отвечающую поневоле примитивному отражению существа проблемы. Образо-
Образованный читатель, конечно, должен с презрением перелистать последую-
последующие страницы, вплоть до стр. 122.
108
венники, вполне солидные на
первый взгляд люди, все вре-
время зачем-то обращаются к га-
гадалке?
е: (недоуменно). А как же иначе?
Я, например, должен выбрать
сегодня, что мне делать: есть на
обед пирожное или сбитые сливки
с шоколадом. И то и другое я
очень люблю, но надо выбрать
что-то одно — ведь я и так слишком
склонен к полноте. Вот я и ходил
к гадалке, она метнула монетку,
выпал «орел» — значит, сегодня я
буду есть пирожное! А иначе я бы никогда не решился
предпочесть что-нибудь одно и остался бы вовсе без
сладкого, а это было бы очень печально.
Мы:В самом деле, вы совершенно правы. Ведь в нашем
мире однажды случилась очень печальная история.
У некоего Буридана был осел. И вот хозяин, надолго
уезжая из дома, оставил своему любимому ослу две
большие охапки сена, но, к несчастью, сделал их со-
совершенно одинаковыми и положил на совершенно рав-
равном расстоянии от осла. И, можете себе представить,
Буриданов осел так и умер от голода, не решившись
выбрать какую-нибудь охапку.
е: В нашем мире нет ослов, но, даже не будучи знакомым
с этими животными, я предполагаю, что они не отли-
отличаются особым умом. У нас каждому известно: если ни
одному из двух дел нельзя заранее отдать предпочте-
предпочтения, стоит только метнуть монетку — и все окажется
ясным.
Мы: Ну, а если вы все-таки одно дело предпочитаете друго-
другому, так вы его и выбираете?
е: Что вы!? Я, например, в пять раз больше люблю есть
рыбу, чем мясо, и если бы я всегда поступал так, как
вы говорите, то никогда не попробовал бы мяса. А ведь
это тоже бывает неплохо. В нашем мире любят разно-
разнообразие и все чередуют в соответствии со своими
вкусами, предпочтениями. Мы их, кстати, обычно
называем вероятностями.
Мы:3начит, вы пять дней подряд едите на обед рыбу, а на
шестой — мясо?
109
е: Нет, вы меня совершенно неправильно поняли. Зачем
же такая скучная регулярность. Я каждый раз иду к
гадалке. Она уже знакома с моими пристрастиями,
выбирает шестигранный кубик и подбрасывает его.
Если выпала единица — стало быть, пришла пора есть
мясо, если любая другая грань — значит, говорю
жене, чтобы готовила мою любимую рыбу. Все очень
просто.
Мы:Ну, а если вы одно предпочитаете другому не в пять, а,
скажем, в 36 раз? Или вам надо выбрать между не-
несколькими различными вещами или занятиями, как же
тогда поступать?
е: У моей гадалки всегда в запасе найдется подходящий
инструмент, случайный механизм, как мы его называем.
Для вашего примера подходит «колесо судьбы», га-
гадалка раскрутит колесо, бросит в него шарик, колесо
крутится-крутится, а когда остановится, шарик ока-
окажется у одного из полей. Их всего 37. Если оста-
остановится у нуля — значит придется делать одно, а у
любого числа от 1 до 36 — другое.
Мы:В нашем мире этот механизм тоже известен. Он еще
называется «рулетка». Но его используют только азарт-
азартные игроки в игорных домах. Но всё-таки это очень
неудобно — для каждого варианта предпочтения иметь
свой инструмент.
е: Конечно. Поэтому мы и бегаем к гадалке, у которой
их целая лавочка. Правда, есть умные люди, которые
говорят, что прекрасно можно обойтись и одной монет-
монеткой. Вот, кстати, Учитель, который все знает. Господин
Учитель, позвольте представить вам иностранцев,
которые очень интересуются обычаями нашей страны
(все дружно раскланиваются). Объясните им, пожа-
пожалуйста, как это с помощью одной монетки можно уга-
угадать, какое из многих различных дел необходимо сей-
сейчас делать?
110
Учитель: Это не слишком сложно, но все же придется кое-что
писать и довольно долго. Готовы ли вы затратить на это
время?
Мы: О да, мы полны внимания и будем усердными учени-
учениками. Вы можете писать в нашем блокноте.
Учитель: Тогда слушайте и смотрите. Вот монетка, она
совершенно симметрична, только по рисунку можно
отличить две ее стороны. Мальчишки называют их
«орлом» и «решкой», мы же просто занумеруем стороны.
Одна будет 1, другая—0. Нельзя заранее угадать,
какой стороной она упадет, что выпадет, 0 или 1.
Оба эти варианта равновозможны, равнопредпочти-
тельны, равновероятны. Вы уже, наверное, узнали,
что бросание монеты — классический способ выбора
между двумя равновозможными вариантами. Но по-
попытаемся сообразить, сколько вариантов выпадений
возможно, если монету бросать дважды. В первой
попытке может быть 0 или 1 и во второй — тоже 0
или 1. Значит, различных вариантов «историй» исхо-
исходов наших бросков может быть 4 или 22. Запишем их,
пользуясь простыми обозначениями:
0 0 0 1
10 11
Они естественно разбились на две группы: одни полу-
получились из прежних исходов, когда при новом броске
выпал 0, а вторые — когда при новом броске выпала 1.
Если мы бросим монету еще раз, то число возможных
вариантов снова удвоится, их станет 8 или 23, по-
поскольку каждый старый «раздвоится».
^0 0 0 ^0 10
00-( 01<(
0 1 *0 1 1
^10 0 ^1 1 0
10< 11<
Так, конечно, будет при каждом новом броске, следо-
следовательно, общее число вариантов «историй», которые
111
могут возникнуть за N бросков, равно 2N, и все эти
истории совершенно равновозможны. Так что на каж-
каждую приходится -SAT = 2~N доля шансов появиться в
каждом конкретном случае. Эту долю мы обычно и на-
называем вероятностью каждого конкретного вари-
варианта.
Итак, теперь уже понятно, как сделать выбор между
2, 4, 8 и вообще 2N возможными действиями, если ни
одному из них нельзя заранее отдать предпочтение.
Пусть их, например, будет 4: Ль А2, А3, Л4. Доста-
Достаточно заранее договориться, что Аг будет делаться,
если в обоих бросках выпадет О, Л2— если выпадет
сначала 0, а потом 1, As — если... Впрочем, не стоит
перечислять, это и так ясно: каждому действию при-
присваивается своя последовательность нулей и единиц.
И то действие, чья последовательность реализуется,
и должно выполняться, реализовываться.
Ну, а как же поступить, если надо выбирать между
действиями, предпочтение к которым различно? Идея
этого тоже, конечно, ясна: тому, которое предпочти-
предпочтительнее, надо дать больше «своих» последовательностей.
Если хоть одна из них выпадет, значит, это действие и
надо делать.
Если желаете, могу рассказать об этом подробнее.
Мы: (единодушно, хотя и утомленно). Да, да, конечно.
Учитель: Предпочтения, как вы уже, наверное, усвоили,
мы выражаем точными числами, вероятностями. Если
предпочтения к двум возможным вариантам Аг и Л2
выражаются как один к трем, то можно было бы ска-
сказать, что вероятность А г равна 1, а вероятность Л2
равна 3. Но удобнее не иметь дела с произвольными
числами, и мы используем изменение масштаба, так
чтобы сумма вероятностей всех возможных вариантов,
т. е. вероятность выбора хотя бы одного из них, была
равна единице. Это просто удобнее. Так что мы берем
вероятность Аг равной 1/4, а Л2 — 3/4. Тогда, как вы
уже видели, вероятность будет соответствовать доле
шансов каждого действия.
е: (тоже с интересом слушающий рассказ учителя). Вот,
например, я вам рассказывал, как выбираю обеденное
меню. Вероятность съесть что-нибудь сладкое, конечно,
для меня равна единице, что-нибудь я обязательно
m
съем. А поскольку шансы пирожного и сбитых сливок
равны, то вероятность каждого равна 1/2.
Учитель: Спасибо, е. Вы привели очень выразительный
пример. Я помню, что Вы были способным учеником
в школе, но потом слишком увлеклись приложениями,
хотя и это похвально. Позвольте все же продолжить
рассказ.
Итак, вероятность любого возможного действия,
например А, может быть любым числом, лежащим
между нулем и единицей,— отрицательных предпочте-
предпочтений у нас не бывает. Ну, а любое такое число можно
всегда представить его двоичным разложением с про-
произвольной точностью.
Мы: К сожалению, нам не известно, что такое двоичное
разложение.
Учитель: Это не беда. Вы ведь знаете, что такое десятичная
дробь. Например, когда мы вместо 1/3 пишем 0,333,
это означает, что мы записали 1/3 в виде
10 ' 100 г 1000
или
и при этом сделали ошибку менее одной тысячной, т. е.
10~3. Точно так же любое число между нулем и едини-
единицей можно представить в виде суммы отрицательных
степеней двойки. Это и будет двоичное разложение.
Например:
с ошибкой менее 2~10, т. е. приблизительно тоже в
10~3. Это разложение также можно записать строчкой
из коэффициентов при последовательных степенях
О, 0 1 0 1 0 1 0 1 0 1
и такое представление 1/3 называется двоичной дробью.
Важно, что в ней используются всего две цифры, 0 и
1, и других никогда не потребуется, ибо если мы бы
нечаянно оставили слагаемое, например, вида 5- ( у ) '
ИЗ
то его всегда можно было бы записать в виде
т. е. снова представить в виде суммы степеней 1/2.
Чтобы этого не случалось, можно использовать простое пра-
правило. Каждое число р (между 0 и 1) с точностью 2~N записывает-
записывается в виде двоичной дроби
О, 0Cj 0C2 0C3 • • • ®N>
где <%!, а2, . . ., Одг равны либо 0, либо 1 и находятся последова-
последовательно. Если рЗ=1/2, то at=l; если меньше, то ^=0. Если
Pi=p—щ(У2)^{1/2)*, то a2=l, если нет, то а2=0. Если
P2=Pi-a2(l/2JSs(l/2K, то аэ=1 и т.д.
Итак, с этим делом мы разобрались. Вернемся снова
к бросанию монеты. Возможные истории «исходов» N
бросаний тоже изображались последовательностью из 0
и 1, причем их было 2У вариантов. Разобьем теперь все
варианты на N-j-l группу Ви В.г,..., BN+1, причем так,
чтобы они не содержали ни одной общей истории, как
говорят, не пересекались.
В группе В, будут все варианты, в которых в первом
броске выпала 1, а потом что угодно. Объединенные
шансы всех вариантов, входящих в Ви равны, оче-
очевидно, 1/2, т. е. вероятности того, что в первый раз
выпала именно 1. В группу Вг объединим все варианты,
у которых в первом броске выпал 0 (очевидно, ни один
из вариантов, вошедших в В}, здесь не годится), во
втором — 1, а потом — снова что угодно. Вероятность
В 2 равна вероятности появления «истории» 01 в двух по-
последовательных бросках, т. е. A/2J. Далее выделим в В3
все варианты, начинающиеся с 001. Их общая вероят-
вероятность П/2K, и т. д. Действуем так последовательно
N — 1 раз. Тогда останется только два варианта. В од-
одном должны подряд выпасть N — 1 раз нули, а в пос-
последнем броске единица. В другом же должны выпадать
только нули. Назовем их BN и ВА,+1. Вероятность
каждого из них, как мы уже в самом начале беседы
установили, равна (l/2)'v.
Чтобы все было ясно, я нарисую вам табличку раз-
разбиения на группы.
114
Вариант
l!
Bl
Bn+i
Тип последовательности
1
01
001
000 01
000 00
Вероят-
Вероятность
1/2
A/2J
A/2K
(J/2)"
A/2)"
N—\ раз
Сумма вероятностей всех групп, конечно, равна 1,
поскольку каждый возможный вариант, конечно, по-
попал в одну из групп. А теперь, коль такой набор
построен, то и делать больше почти нечего. Ведь мы
можем объединять наши группы в большие, например,
объединить группы В2, Bit Be, В8, В10 в одну В, и тогда
шансы того, что выпадет хоть один из вариантов, вхо-
входящий в В, равны
Я + (т)'+(тИ4)'+(тГ.
т. е. приблизительно 1/3.
Я мог бы записать вам общее правило в виде формул,
но, наверное, понятнее будет просто пример.
(Мы, окончательно утомленные и арифметикой, и
вероятностью, могли бы отказаться, но из вежливости
молчим, что и принимается за знак согласия.)
Итак, пусть выясняется необходимость совершить
действие В, предпочтение к которому выражается
числом р — 0,719. Построим двоичное разложение этого
числа: оно таково (с точностью до 10~3):
±У+(±У+(±
2 ) ^\2 ) +\2
или, сокращенно, 0,10111.
Осуществим подряд 5 *) бросаний монеты. Если
произойдет хоть одно из перечисленных событий:
") По числу цифр в двоичном разложении, которое определяется
принятой точностью.
115
/?! — в 1-м броске выпало I,
В3 — в 1-м и во 2-м—0, в 3-м — 1,
Вг — в Г-м, 2-м и 3-м—0, в 4-м — 1,
Въ— в 1-м, 2-м, 3-м, 4-м —0, а в 5-м — 1,
то действие В надо совершать. Прошу заметить, что для
выяснения этого совсем не всегда придется совершать
обязательно все пять бросков. Всё может выясниться и
раньше. А для наших жителей, которые вечно торопятся
сделать случайный выбор, это очень важно. К сожале-
сожалению, многие из них быстро забывают то, чему я их
учу в школе, и вынуждены по старинке захаживать к га-
гадалкам.
Вот Вы, например, е. Вы все забыли.
е: Нет, нет, господин Учитель. Я только немного забыл
и сразу все вспомнил, как только вы начали рассказы-
рассказывать, и уже применил к делу. У меня сегодня на ужин
жена обещала приготовить яблочный пирог или кремо-
кремовый торт. Я, вообще говоря, предпочитаю торт в два
раза больше, чем пирог. Но я бросил монету только два
раза, и уже выпал «орел», а я считал «орел» единицей и
гадал на пирог. Придется бежать домой и заказывать
его. До свиданья.
Учитель с улыбкой помахал рукой Эпсилону-сладкоежке,
мы тоже, и хотели было расстаться и с Учителем, изрядно
утомленные беседой, но он задал обычный вопрос, который
задают чужеземным гостям: «Ну, как вам нравится наша
страна?» И мы должны были искренне признаться:
Мы: Вы знаете, Ваши объяснения нам во многом помогли,
но все-таки мы не понимаем главного: как в вашей
стране можно что-нибудь предвидеть, как управлять
ею, как, в конце концов, планировать производство
мяса, рыбы, муки, сахара, чтобы накормить миллионы
таких, как Ваш достойный ученик е?
Учитель: Вы, действительно, задали самый главный вопрос,
но, к счастью, на него можно просто ответить. В нашей
стране только на первый взгляд — вам, наверное,
тоже так показалось — царствуют беспорядок и анар-
анархия. В действительности мы — самая упорядоченная
страна среди всех цивилизованных миров, ибо у нас
неумолимо властвует один закон — закон больших
чисел. Ему подчиняется каждый отдельный сладкоежка,
116
если он много-много раз
использует один и тот же
набор предпочтений. Ему
подчиняются и суммарные
действия миллионов подоб-
подобных сладкоежке жителей,
если у них одинаковые пред-
предпочтения. Он состоит в том,
что если многократно делает-
делается случайный выбор между
действиями, и каждый раз
с одними и теми же предпо-
предпочтениями, вероятностями, то почти наверняка доля
случаев, при которых осуществляется выбор каждого
действия, близка к его вероятности.
Если мой милый е не изменяет своим пристрастиям,
то наверняка приблизительно 1/3 дней в году он будет
есть яблочный пирог, а остальное время — свой самый
любимый кремовый торт. Если в городе миллион слад-
сладкоежек придерживаются того же принципа случайного
выбора, то плановики могут спокойно их обеспечить,
организовав поставку в город припасов, достаточных
для изготовления примерно 333 тысяч яблочных пиро-
пирогов и 666 тысяч кремовых тортов.
Мы: Но ведь в отрицал какую-либо регулярность в своем
выборе, он не соглашался есть
мясо каждый четвертый день
после трех дней рыбной диеты.
Учитель: Действительно, никакой
регулярности и нет. Может ока-
оказаться и восемь рыбных дней под-
подряд, но зато почти наверняка их
когда-нибудь скомпенсируют два
к ряду мясных. Правда, не
исключена катастрофическая
возможность того, что весь мил-
миллион сладкоежек случайно выбе-
выберет в один день яблочный пирог.
Но на это, как нетрудно убедить-
убедиться, шанс всего 1/3 в миллионной
степени, или лучше сказать, что
такое событие, в соответствии с
тем же законом больших чисел,
117
может в среднем произойти один раз за 300 миллионов
дней. Такую возможность плановикам учитывать явно
не стоит.
Мы: (заинтересовавшись). Почтенный Учитель, мы, ка-
кажется, поняли действие закона больших чисел, поняли,
что судить о вашем мире нельзя с первого взгляда, по
единственному впечатлению, а надо всматриваться
долго в поведение хотя бы одного жителя или суммиро-
суммировать впечатления от многих с одинаковыми пристра-
пристрастиями. Но мы немного запутались в логике. Ведь когда
вы рассказывали о вариантах многократного выбора
между двумя событиями 0 и 1, каждое с вероятностью
1/2, то ведь закон больших чисел должен был сказы-
сказываться?
Учитель: Совершенно верно. При больших N, большом
числе бросков монеты доли выпадеиий нуля и единицы,
«орла» или «решки» приблизительно равны.
Мы: Это нам ясно и из нашего житейского опыта. Но ведь вы
говорили, что каждый вариант выпадения имеет одну
и ту же вероятность A/2). Как же может преобладать
вариант, где число единиц и нулей равно?
Учитель: К сожалению, и вы сделали обычную логическую
ошибку. Ведь равное число нулей и единиц может быть
не в одном варианте, а в очень многих. Например, и во
всех розных вариантах
0 110 10 10
10 1 10 0 0 1
0 10 110 0 1
10 10 10 0 1
и многих других возможных вариантах историй восьми
бросков — равное число нулей и единиц. Именно на том,
что этих вариантов, каждый из которых имеет вероят-
вероятность A/2) , большинство, и основывается доказа-
доказательство закона больших чисел.
Я не хочу рассказывать это доказательство, это
было бы слишком утомительно. Давайте просто рас-
рассмотрим все возможные варианты исходов бросков.
Их 2", т. е. 16. Чтобы ничего не пропустить, будем
придерживаться принципа удвоения.
118
Число
бросков
1
2
3
4
Варианты исходов
0
00
000
0000
0001
001
0010
ООП
01
010
0100
0101
011
оно
0111
1
10
100
1000
1001
101
1010
1011
11
110
1100
1101
111
1110
1111
Итак, мы убеждаемся, что в шести случаях 2 еди-
единицы и 2 нуля, в четырех случаях — 3 единицы и 1 нуль,
также в четырех — 3 нуля и 1 единица, и только по
одному, как и следовало ожидать, случаю выпадения
только нулей и только единиц. Конечно, 4 слишком
малое число, чтобы на нем проверять закон больших
чисел, но мы убеждаемся в том, что варианты с равным
числом единиц и нулей, или близкие к ним, уже здесь
оказываются доминирующими, и, главное, чем больше
отклонение от ожидаемого по закону, тем таких откло-
отклонений меньше *).
При вероятностях, отличных от 1/2, будет, конечно, прояв-
проявляться та же ситуация, хотя формально все выглядит сложнее.
Если действию А соответствует вероятность р, а другому действию
q=\—р, то каждый конкретный вариант с заданной последова-
последовательностью выбора А и В появится при Л'-кратном повторении с
вероятностью pnqN~n, где п — общее число появлений А, но
совокупная доля всех вариантов, содержащих приблизительно pN
появлений А, с ростом Л' быстро приближается к единице.
В чем еще важно разобраться, чтобы понять жизнь
в нашем случайном мире, так это в случайных числах.
Ведь с выбором каждого варианта действий связано
*) Читатель, хорошо помнящий школьную-науку о сочетаниях-,
размещениях и перестановках, наверное, уже догадался, что именно
она нужна для подсчета вариантов в общем случае. Если он действитель-
действительно заинтересовался наукой о случайностях, то может лучше познако-
познакомиться с ней по многим хорошим книгам. Школьных знаний вполне до-
достаточно для чтения [4], а если читатель знаком и с основами высшей ма-
математики, то, наверно, нет ничего лучше, чем прочитать книгу [17]
(цифры соответствуют списку литературы, приведенному в конце книги).
119
какое-нибудь число. Если сладкоежка выберет яблоч-
яблочный пирог, то его жене придется затратить, скажем,
50 грамм масла, 500 грамм муки, килограмм яблок и еще
чего-нибудь — я очень слабо разбираюсь в кулинарии.
Но ясно, что если будет выбран кремовый торт, то
масла потребуется куда больше, скажем, 400 грамм, а
яблок и вовсе не нужно. Значит, с выбором сладкоежки
связано случайное количество затраченного масла,
яблок, муки. Именно эти числа, в сущности, и должны
интересовать плановиков, определяющих размеры по-
поставок продовольствия в город. И здесь им приходит
на помощь закон больших чисел *). Количество масла,
которое потребуется для удовлетворения аппетита
миллиона сладкоежек, может случайно колебаться от
50 тонн (все едят яблочные пироги) до 400 тонн (все
набросились на кремовые торты), но закон больших
чисел говорит, что этих крайних случаев почти не бы-
бывает. А наиболее типична ситуация, когда приблизи-
приблизительно 1/3 ест пироги, а 2/3 — торты. Значит, и потре-
потребуется почти всегда приблизительно
1/3-50+ 2/3-400 = 317 тонн масла,
1/3-1000 + 2/3-0 = 333 тонны яблок, и т. д.
Оценка, которая получается суммированием произве-
произведений каждого варианта случайного числа на его ве-
вероятность, называется его ожидаемым значением или,
более научно, его математическим ожиданием.
Но напомним, что эти оценки хороши только, когда
действует закон больших чисел. При малом числе пов-
повторений затраты могут оказаться куда больше или
куда меньше ожидаемых. Они, конечно, зависят не
только от числа повторений, но и от того, насколько
отличаются варианты друг от друга. Скажем, по маслу
и яблокам сладкоежкины варианты отличаются очень
сильно, а вот муки на торт потребуется, наверное,
грамм 400. Так что колебания окажутся всего в пре-
пределах 100 г. Точнее, ожидаемые затраты муки в день
на одного сладкоежку составляют
500-1/3 + 400-2/3 = 433 грамма.
*) Плановикам реального мира, естественно, работать намного
сложнее, так как им приходится сталкиваться с большим разнообразием
шкал предпочтений.
120
Возможны отклонения в одну сторону на 66 грамм, а
в другую — на 33 грамма. Но пироги пекутся реже.
Значит, лучше оценивать средние отклонения с учетом
вероятности их появления. Чтобы не путаться со
знаками отклонений, мы обычно вычисляем их квад-
квадраты и оцениваем ожидаемое отклонение такой вели-
величиной:
называемой дисперсией случайного числа, т. е. затрат
муки в данном случае. Еще удобнее пользоваться квад-
квадратным корнем из дисперсии, так и называемым средне-
среднеквадратичным отклонением *). В случае с мукой оно
составляет примерно 47 грамм. Закон больших чисел
проявляется и в том, что среднеквадратичное отклоне-
отклонение суммы результатов многих последовательных вы-
выборов растет как корень из их числа, а сама сумма,
естественно, пропорционально этому числу, так что
абсолютный рост отклонений отстает от роста общих
затрат и их относительная доля быстро падает. Напри-
Например, в суммарном действии миллиона сладкоежек
относительная роль отклонений снизится в j/^106, т. е.
в 1000 раз. Если ожидаемые колебания в затратах муки
одним из них оценивались приблизительно в 1/10, то
для миллиона это составит всего 1/10000, т. е. 0,01%.
И мы снова приходим к выводу, что при общем пла-
планировании их не стоит и учитывать.
Но, кажется, я окончательно замучил вас своим
рассказом. Ведь что греха таить: все мы, учителя,
любим рассказывать и поучать. Вот и вам досталось.
Мы: (собрав воедино все остатки вежливости). Что Вы, что
Вы! Все это было до крайности интересно. Большое
спасибо.
*) Если возможны п вариантов значений случайного числа, равных
*!, хъ . . ., хп, каждое из которых появляется с вероятностью, равной
соответственно рг, р2, . . ., рт то математическое ожидание этого числа
тх вычисляется по формуле
тх = РА + Ргхг + • • • + Рпхт
а дисперсия Dx — по формуле
(х2—тх)*+...+рп (хп—тх)*.
121
\
Учитель: Не за что. Я лишь хочу на прощанье сказать вам:
все, что я писал, все цифры, названия и формулы, вы,
конечно, можете забыть. Но главное — не забывайте
суть закона больших чисел. Он — единственная ясная
путеводная нить во всех сложностях нашего действи-
действительно непростого мира.
Так и закончилась наша длинная беседа, а с нею и вся
экскурсия в мир случайностей.
Но как она ни была утомительна, стоит скорее браться
за дело, пока еще свежи впечатления. Увы, нам придется
применять свои скромные поз-
познания о случайном выборе не
в столь приятной области, как
доброму е, но, как говорится,
чем труднее задача, тем сла-
сладостней успех.
Итак, попытаемся разоб-
разобраться в поведении одного из
представителей семейства под
названием «случайный поиск».
Для простоты будем изу-
изучать его сначала только на
двумерных задачах. Обратимся
к обычной «топографической»
картинке (рис. 8.2). Пусть из точки О делается шаг длиной г
в случайно выбранном направлении. Линия уровня, на
которой расположена точка О, делит окружность радиуса г
с центром в О на две дуги. На дуге / — мы будем называть
ее дугой удачи — значения функции цели лучше (не хуже),
чем в исходной точке, а на дуге // —¦ обратная ситуация.
Значит, только в тех случаях, когда направления выбира-
выбираются из сектора ОАВС, шаг окажется более или менее
удачным. Если при случайном выборе не отдается заранее
предпочтения никакому направлению, то интуитивно ясно,
что вероятность попасть именно на дугу удачи пропорцио-
пропорциональна отношению ее длины L к общей длине окруж-
окружности.
Мы можем это доказать, если определим, какой меха-
механизм случайного выбора при этом точно подразумевается.
Ясно, что окружность можно разбить на 2Л'дуг, причем при
достаточно большом N эти дуги будут сколь угодно ма-
малыми, а затем осуществлять выбор каждой дуги при выпа-
выпадении одного из 2Л' равновероятных вариантов «историй»
Рис. 8.2.
122
А^-кратного бросания монеток *). Тогда вероятность попа-
попадания на дугу удачи будет равна суммарной вероятности
попадания на все маленькие дуги, длиной 2лг-2~Л' каж-
дая, укладывающиеся на ней. по их окажется -п-^гдт
L ' '
штук, т. е. суммарная вероятность равна -^— , что и требо-
требовалось доказать. Выбор, осуществляемый нашим механиз-
механизмом, обычно называется равномерным.
Теперь ясно, что при равномерном выборе направления
вероятность удачи (хотя бы относительной) тем выше, чем
более близка к прямой линия исходного уровня в пределах
шага. Тогда дуга удачи совпадает с полуокружностью и ве-
вероятность удачи будет равна 1/2. Это возможно в двух
случаях — либо склон является достаточно широким, по-
похожим на скат крыши, либо длина шага (т. е. радиус окруж-
окружности) мала. А точнее, склон должен быть достаточно широ-
широким по сравнению с длиной шага, а это обычно бывает, когда
функция цели достаточно гладкая, а до экстремума еще
далеко. По мере приближения к экстремуму условия, как
правило, ухудшаются, дуга удачи уменьшается, а в непо-
непосредственной близости от экстремума (на расстоянии поряд-
порядка длины шага г) вообще исчезает (рис. 8.3). Таким обра-
образом, вероятность удачи при равномерно_ случайном выборе
направления приносит наилучшие результаты при работе
вдали от экстремума. Вот теперь и посмотрим, как ведет
себя случайный поиск в этих наиболее благоприятных
условиях.
Изобразим картину линий уровня в большом масштабе,
считая для простоты, что крутизна в пределах выделенной
зоны постоянна и равна k (рис. 8.4).
Напомним, что если применяется градиентная схема, то
шаг длиной г будет сделан по наиболее выгодному направ-
направлению, перпендикулярно линиям уровня, и в результате
будет «заработано» приращение функции, равное kr. Однако
для этого будет затрачено по крайней мере три измерения.
Теперь рассмотрим действия случайного поиска. Здесь
в случае удачи, приходится делать только одно измерение,
*) Практически при счете в машинах для выбора направления ис-
используются специальные таблицы случайных чисел, полученные при
обработке экспериментальных данных о физических случайных механиз-
механизмах, или сами эти механизмы, или особые формулы, искусно имитирую-
имитирующие случайность результата (см. § 10).
123
но возможны и неудачи. Оценим сначала ожидаемое про-
продвижение за один шаг. Случайный механизм используем в
очень упрощенной форме. Разобьем окружность на три
равные части точками А, В, С и будем осуществлять
-х,
Рис. 8.3.
Рис. 8.4.
случайный выбор между тремя вариантами направлений
(в середины этих дуг (/, //, ///)), считая, что вероятности
каждого варианта равны 1/3. Тогда ясно, что только в слу-
случае / будет достигнута удача и приращение функции со-
составит kr, а в остальных двух случаях придется вернуться
124
назад, т. е. приращение будет равно нулю. Таким образом,
ожидаемое значение равно
Л'+0+0*г
т. е. просто 1/3 приращения, получаемого за один шаг по
градиенту.
Внимательный читатель заметит, что мы несколько
схитрили при этом выводе, предварительно ориентировав
направление / по градиенту, чего, конечно, в силу случай-
случайности (произвольности разбиения на три дуги) ие должно
было быть. Однако, если бы мы применили более тонкий ме-
механизм разбиения на 2N дуг с достаточно большим N, то
надобности в ориентации не было бы, а подсчеты, которые,
конечно, более громоздки, привели бы к мало отличающе-
отличающемуся числу. При N, стремящемся к бесконечности, ожидае-
ожидаемый шаг оказывается стремящимся к
1 , 1 ,
krkr
Основной качественный вывод, который мы можем сделать,
остается в силе: при применении схемы случайного поиска
среднее приращение целевой функции за большое число
шагов примерно в три раза меньше, чем продвижение при
том же числе шагов, если применяется градиентная схема.
Этот вывод прямо следует из закона больших чисел. Но
ведь на каждый шаг градиентной схемы затрачивалось по
крайней мере в три раза больше измерений. Значит, в этих
условиях, если вести сравнение по числу измерений, слу-
случайный поиск по крайней мере не хуже градиентного.
Очень существенно, что при росте размерности задачи
(если мы, конечно, остаемся в столь же благоприятных усло-
условиях работы на широком склоне) начинают сказываться
даже преимущества случайного поиска. Если произвести
необходимые подсчеты для многомерных сфер (их еще назы-
называют гиперсферами, т. е. сверхсферами), то число необхо-
необходимых измерений k с ростом размерности п при случайном
поиске растет как У~п, а при градиентном — каждая новая
координата требует дополнительного измерения, так что
рост идет пропорционально п, т. е. быстрее (рис. 8.5).
Итак, из проведенного сравнения можно сделать разум-
разумный практический вывод: случайный поиск целесообразно
125
использовать в задачах большой размерности, причем как
удобный стартовый ускоритель. Первую часть дистанции,
когда до экстремума еще далеко, он проходит быстро, не
делая многих лишних измерений, а на второй части его,
пожалуй, лучше и заменить, поручив тонкое дело прибли-
приближения к экстремуму более рассудительному методу, напри-
например, все тому же наискорейшему спуску.
Впрочем, мы ведь изучали поведение лишь одного пред-
представителя семьи «случайный поиск», а она, как уже гово-
говорилось, велика и обильна. Среди ее членов есть и куда
2 3 4 5 6 7 8 9 10
Рис. 8.5.
более рассудительные, деликатные, чем уже описанный
анархист. Впрочем, они сохраняют характерный для се-
семейства в целом принцип случайного выбора направления
на каждом шаге, но заимствуют у методов, использующих
подходяада направления, идею изучения свойств функции.
Ведь поскольку на каждом шаге, и удачном и неудачном,
проводятся измерения значений функции, то можно эти
данные использовать и для прогноза поведения функции,
для обучения на основе этих знаний.
Опишем идею одного из способов такого обучения. Пусть
направление прыжка из исходной точки выбирается по-
прежнему равномерно случайно (знаний о функции еще нет)
(рис. 8.6).
После первой же удачной попытки, используя идею
экстраполяции, можно предположить, что это направление
и далее окажется разумным, т. е. если двигаться по нему и
126
дальше, сделав следующий прыжок, то снова попадешь
в удачную точку. Полностью верить в это нельзя, но стоит
сузить область случайного выбора, сократив ее, например,
вдвое, так что выбирать придется уже из точек, лежащих
на полуокружности, ориентированной так, что ее середина
лежит на направлении первого удачного прыжка. Затем
назначим два числа, т, и т, (например, 2 и 6), и попытаемся
снова прыгать в любую точку полуокружности. Если удача
Рис. 8.6.
придет за mv или меньшее число попыток, то в новой точке
будем делать выбор уже из четверти окружности, ориенти-
ориентированной относительно последнего удачного направления.
Если же потребовалось больше ти но не больше т, по-
попыток, то и в новой точке будем выбирать из полуокруж-
полуокружности. Если же число неудачных попыток оказалось рав-
равным тг, то срочно откажемся от сделанного сужения зоны
выбора и начнем выбирать из всей окружности, пока не дой-
дойдем до удачного варианта (это, наверняка, когда-нибудь
случится, если данная точка уже не экстремальная). После
этого в новой точке опять-таки попытаемся сделать выбор
только из полуокружности *). Такое движение с перестраи-
перестраиваемым сектором похоже на поиски с фонариком-прожекто-
фонариком-прожектором, пучок света которого может быть сделан либо уже и
*) На рис. 8.6 показан случай наиболее удачный; каждый шаг со-
совершался не более чем за т1 попыток.
127
ярче, либо шире и туск-
тусклее. Суженный сектор по-
повышает вероятность выбора
правильного направления,
если оно существует внутри
этого сектора, расшире-
расширение — повышает саму эту
возможность. Поскольку
по пути можно осуществ-
осуществлять и оценку средней кру-
крутизны между соседними
точками, то саму длину
шага также разумно ме-
менять пропорционально из-
изменению крутизны. Существует и много других способов
обучения. Все они основаны на управлении «сектором
обзора» или длиной шага. Не удержусь, чтобы не расска-
рассказать об одном, совсем простеньком *). Из начальной точки
делается шаг заданной длины в случайном направлении,
пока не будет достигнута удача. Из новой точки первая
попытка делается именно в этом направлении и той же ве-
величины. Если эта первая попытка сразу была удачной, то
продвигаемся в том же направлении, но с умноженной на
заданный коэффициент роста величиной. Если она оказа-
оказалась неудачной, то делается вторая попытка в направлении,
противоположном исходному, но с длиной шага, делен-
деленной на заданное число. Если же и эта попытка неудачна,
то вновь переходим к случайному выбору направления,
при каждой неудаче уменьшая длину шага. Когда же,
наконец, удача приходит, переходим в новую точку и пов-
повторяем свои попытки в том же порядке, но уже опираясь
не на исходную длину шага, а^на ту, которая получилась
в процессе обучения на предшествующих ошибках и
удачах.
Итак, мы существенно расширили свое представление о
членах молодого и (может быть, потому?) несколько легко-
легкомысленного семейства методов случайного поиска. Ясно,
что при достаточной «обученности» и удачных условиях оно
прекрасно может конкурировать с благородными милор-
милордами из градиентного и релаксационного семейств.
*) Здесь упрощенно описывается один из вариантов схем, пред-
предложенных А. Л. Гайдуковым. Более полно с этими интересными схе-
схемами можно познакомиться по книге [8].
128
На первоначально же поставленный еще в § 7 вопрос:
действительно ли изобретение метода наискорейшего спуска
является достойным делом,— можно ответить вполне опре-
определенным «да». Этот приговор незримого суда присяжных
верен и потому, что наискорейший спуск, да и вообще гра-
градиентные схемы обладают многими полезными чертами,
которых нет у других схем, и потому, что, внимательно изу-
изучая «наше изобретение» и изменяя, модифицируя его, можно
прийти к множеству других, также, несомненно, полезных
изобретений. А это, пожалуй, самое высшее достоинство,
которым могут гордиться любое новое изобретение, машина
или теория!
Конечно же, здесь обязательно возьмет слово дотошный
читатель и спросит: «А как же все-таки быть, какие же
методы применять? Разбирались, разбирались, так и не
выяснили». Дотошному читателю можно было бы ответить,
что книга еще не дочитана и о методах поиска рассказано
далеко не все. Но, к сожалению или к счастью, и в конце
этой книжки, да и более солидных книг, прямого ответа не
найти. Дело в том, и это будет повторено неоднократно, что
все зависит от вида той функции, с которой мы сталкиваемся
в каждой конкретной задаче поиска. Если функция цели
такова, или почти такова, что ее изменения, вызванные
изменением одной переменной, просто суммируются с изме-
изменениями, вызванными другими, т. е. f (xlt x2,---, xn) мало
отличается от fx (*i)-f /2 (x2)+... + fn (xn), то, конечно,
ничего лучшего координатной релаксации не придумаешь.
Если переменные распадаются на I независимых групп, т. е. функ-
функция цели близка к сумме
f1 (х1у л-2, . . . , Xm,) + /2 (*м,41. • • • > *га2)+ ¦ ¦ • Jr}lixmi + 1> ••• . хп)>
то разумно проводить релаксацию, «ослабляя» связи поочередно по
каждой группе переменных и при их изменении, например, по градиент-
градиентной схеме, добиваться экстремума по каждой группе (подробнее в кни-
ге [9]).
Если все переменные тесно связаны и физически одно-
однородны, сходны, то, наверное, лучше всего будет работать
схема наискорейшего спуска.
Если переменные совершенно несходны и лишь выбором
масштабов могут быть приведены к внешне однородному,
безразмерному виду, то совсем неплохи простые шаговые
методы, а может быть, и случайный поиск.
129
Кроме того, случайный поиск почти всегда разумен как
стартовый ускоритель, позволяющий быстро ликвидировать
большие отклонения от экстремума. Ясно лишь следующее:
для одних функций цели лучше одни методы, для других —
другие. А если вид функций цели, их истинная природа нам
совершенно неизвестны, то ничего не остается сделать,
кроме как пробовать их один за другим, устраивая «сорев-
«соревнования» методов на каждой конкретной задаче. И тогда
«спорт есть спорт», «поиск есть поиск» — победит сильней-
сильнейший! Здесь явно нет спортсменов — абсолютных гегемонов,
побеждающих в каждом соревновании, в котором им приш-
пришлось участвовать. Но все же устроителям состязаний полезно
руководствоваться двумя практическими принципами: во-
первых, если задача похожа на такие, которые уже успешно
решались (оптимизируется режим печи, а для печей такого
или близкого типа уже проводился поиск оптимума), то
стоит использовать опыт и начать с применения испытанной
методики; во-вторых, если никаких сходных задач еще не
решалось, то стоит начинать с самых простых методов,
например с релаксационных схем или схем с постоянным
шагом, и только в случае неудачи переходить к более слож-
сложным приемам.
§ 9
ВСЯЧЕСНИЕ МЕЛКИЕ
НЕПРИЯТНОСТИ
(Локальные методы
в условиях
ограниченности
области поиска
и наличия оврагов)
К безднам все глубже
уводят излучины.
В. Брюсов. «Слава толпе»
И справа — скала,
и слева — скала,
Терновник и груды песка.
Р. Киплинг, «Баллада о
Востоке и Западе»
Мы долго шли с гордо подня-
поднятой головой от успеха к успеху,
от одного хорошего метода к дру-
другому, не менее хорошему. Один
был немного умнее, другой —
немного быстрее, но все они,
как нам казалось, честно делали
свое скромное дело: приходили
к экстремуму. Правда, это мог
быть только локальный экстре-
экстремум, но мы решили, что пока
такой успех нас вполне удо-
удовлетворяет.
По ходу действия, однако,
время от времени всплывали
отдельные воспоминания о раз-
разного рода неприятностях, с ко-
которыми могут сталкиваться наши
излюбленные схемы, но мы
опять-таки решали отложить раз-
разговор о них до лучших, или,
точнее, худших времен.
Давайте теперь покончим с за-
замалчиванием и объявим откры-
открытие кампании: «Поиск всяческих
неприятностей при поиске».
А чтобы это мероприятие не
оказалось слишком грустным,
совместим его с другим — «Ме-
«Месячником поиска средств борьбы
со всяческими неприятностями
при поиске» и будем надеяться
«на полную безаварийность».
Чтобы почувствовать себя более
уверенно, начнем с неприятно-
неприятностей мелких, научимся бороться
с ними, а потом будем пере-
переходить ко все более круп-
крупным.
Итак, неприятность № 1 —
ограниченность зоны поиска.
Сразу скажем, что для методов
поиска это «зло не столь
131
*~Xt
большой руки». Более того, нельзя быть даже уверенным,
что ограниченность зоны — зло, ибо чем меньше зона, тем,
вообще говоря, меньше различимых вариантов, тем эффек-
эффективнее применима элементарная схема перебора вариантов
на сетке. Но для локальных итеративных методов, о кото-
которых мы уже столько говорили, наличие ограничений —
несомненная неприятность.
Прежде всего напомним, что под локальным экстрему-
экстремумом мы понимаем точку, наилучшую среди всех своих со-
соседей, и притом соседей,
выбранных только из
допустимой области, из
области поиска. Точка А
на рис. 9.1 не обладает
никакими достоинства-
достоинствами, максимум находит-
находится в В, но если область
поиска сузить до такой,
которая показана пунк-
пунктирной границей, то
именно А безусловно
рис, 9j, станет точкой макси-
максимума.
В этом параграфе мы будем интересоваться только та-
такими функциями цели, для которых в заданной области
имеется единственный искомый локальный экстремум (мак-
(максимум или минимум). Об узости этого предположения уже
подробно говорилось в конце § 4, однако и в столь узком
случае известные нам итеративные процедуры действи-
действительно сталкиваются с неприятностями.
Рассмотрим сначала схему наискорейшего спуска. Нач-
Начнем из некоторой точки О, лежащей внутри допустимой
«пунктирной» области на рис. 9.1. Двинемся по направле-
направлению градиента (о том, как оно оценивается, пока говорить
не будем). Это движение приведет к точке /, которая лежит
выше всех точек на этом направлении (напомним еще раз,
что речь идет только о точках в допустимой области!).
После остановки надо оценить направление градиента в точ-
точке /. На рис. 9.1 результат этой оценки показан пунктир-
пунктирной стрелкой. По этой стрелке и надо было бы идти, если
руководствоваться стандартной идеей наискорейшего
спуска, да и вообще всех градиентных схем. Однако идти
некуда: стрелка выводит за пределы допустимой области.
132
Значит, полная остановка, а следовательно, полная неудача,
так как / — заведомо не экстремальная точка.
Итак, неприятность № 1 проявила себя во всем блеске.
Что же делать? Надо срочно искать способ «лечения» гра-
градиентных схем от неприятной манеры останавливаться
у границ зоны. К счастью, способов лечения много и неко-
некоторые из них совсем просты.
Ясно, что, идя в направлении любой стрелочки, состав-
составляющей с градиентом острый угол, мы также сможем до-
добраться до точек, лежащих выше исходной (рис. 9.2, а).
*)
Рис. 9.2.
Все эти стрелочки задают, как уже говорилось в § 6, под-
подходящие для поиска направления. Конечно, чем ближе они
к градиенту, чем меньше этот острый угол, тем круче,
быстрее мы пойдем по склону. Однако, что делать, если
точка лежит на границе и среди возможных направлений,
не выводящих из допустимой области, нет направления,
совпадающего с градиентом (рис. 9,2, б)?
Читатель, конечно, сразу ответит на этот вопрос: «Нельзя
идти по градиенту — ну что же, сойдет и любое подходящее
направление, лишь бы оно было возможным, а лучшее из
них, наверное, то, которое ближе к градиенту, составляет
с ним меньший угол». И читатель, несомненно, будет прав.
Эта простая идея лежит в основе большинства средств ле-
лечения градиентных методов от болезненной привычки оста-
останавливаться почти у всякого забора. Благоразумный «ищу-
«ищущий человечек», поднимаясь по склону и наткнувшись
133
на забор, преграждающий путь к цели, просто пойдет вдоль
забора, в сторону и подходящую и возможную.
Именно ограничение «забор» задает новый путь, новую
траекторию *). По ней и надо двигаться, пока избранный
путь не окажется бесполезным, t. e. пока на этом пути
функция будет возра-
возрастать. Там следует ос-
остановиться и снова изу-
изучить направление гра-
градиента. Оно может вести
внутрь допустимой об-
области, ну что ж, тогда
пойдем по нему, поступая
обычным способом. Оно
' может вести и из допусти-
Рис. 9.3. мой области. Тогда при-
придется выбирать среди
подходящих и возможных направлений, и если таковые най-
найдутся, выбрать одно из них и двинуться вдоль него (пред-
(предпочтительно, «прижимаясь к забору»). Однако может ока-
оказаться, что в точке, где мы остановились, нет никаких под-
подходящих направлений, ведущих в допустимую область
(точка А на рис. 9.3). «Печально, значит — снова некуда
деваться»,— скажет читатель-пессимист. «Да нет, пре-
*) Речь пока идет только о двумерных задачах, где граница одно-
одномерна и, естественно, полностью задает траекторию.
134
красно!» — возразит ему читатель-оптимист и будет
прав: если такая ситуация возникла, то, действительно,
идти дальше некуда, но и незачем, ибо именно точка А
и есть искомый экстремум. Тот факт, что среди подходящих
направлений, идущих из какой-либо точки, нет ни одного
возможного,— ясный и простой признак, что эта точка
экстремальная (конечно, снова только в локальном смысле).
Итак, способ лечения найден. К сожалению, мы огра-
ограничивались только рисованием картинок, а как в действи-
действительности изменять координаты точек в процессе поиска,
по каким правилам это делать — не рассказали.
Картинками же, в особенности, когда «много» это больше,
чем «два», увы, не обойдешься.
Попытаемся преодолеть эти неприятности сначала в дву-
двумерном случае, и притом в очень простом варианте*), когда
Рис. 9.4.
все «заборы» — прямые, точнее, составлены из прямых
участков и притом ориентированы по осям координат, а
еще проще — когда область поиска — просто прямоуголь-
прямоугольник (рис. 9.4). Такая область всегда возникает, если по
каждой из переменных просто заданы верхняя и нижняя
границы возможного изменения:
Тогда правила оказываются очень простыми, поскольку на
границе одна из переменных принимает постоянное значе-
*) Все описанное ниже представляет собой изложение так называе-
называемого метода проектирования градиента на границу именно для такого
простейшего вида границ.
135
ние (верхнее или нижнее), а меняться может только вторая,
так что и формальная запись элементарна: из любой точки
с координатами х[", х^ следует двигаться по направлению,
задаваемому формулами:
дхх Jt'
В них полагают
О, если
^-),>0 и х[" = х1в или
< 0 и xf = х1и,
О, если этого нет;
(
О, если
е2=
дх9
дх„
> 0 и
<0 и
} = х2
или
\
8, если этого нет.
Если окажется, что в^О, то движение сведется к измене-
изменению только хг, a Xi останется постоянным и равным гра-
граничному. Если 62=0, то аналогично будет изменяться
только Xi. Если 01=5^0 и Э2=^0, то происходит движение по
градиенту, причем принимается 81=82=8. Во всех этих
случаях движение идет до максимума по выбранному на-
направлению (только среди допустимых точек!). Если же
окажется, что и 91=0 и Э2=0, то, очевидно, новая точка
совпадает со старой, движение останавливается, а значит,
экстремум достигнут. Вся эта схема без труда переносится
и на многомерный случай*): для любой координаты пишутся
те же формулы, что написаны выше для хх и х2, только с за-
заменой номера. Важно заметить, что все коэффициенты 9И
62,..., 0„, не оказавшиеся сразу равными нулю, принима-
принимаются одинаковыми и равными 0 — вдоль направления ме-
меняется только один параметр 0, и все координаты, изменение
которых возможно и разумно, меняются одновременно.
*) Напомним, что речь идет только о поиске в таких областях, ко-
которые заданы ограничениями на каждую из переменных снизу и сверху.
Дело существенно осложняется, когда ограничения нося г более общий
характер, хотя сама идея движения по подходящим возможным направ-
направлениям сохраняет свое значение.
136
Именно поэтому, если ни одна из координат точки не сов-
совпадает с граничной, мы приходим к уже известной схеме
наискорейшего подъема (или спуска)!
Теперь уже окончательно можно сказать, что способ
избавления от неприятности № 1 найден. Он, очевидно,
пригоден и для других градиентных схем, отличающихся
только выбором параметра 6, да и для шаговых схем.
Посмотрим теперь, как лечить релаксационные методы, да
и надо ли их лечить вообще. Прежде всего, ясно, что если и
надо, то не всегда. Действительно, вспомним, как мы только
что вылечили градиентные методы, спотыкавшиеся на гра-
границах прямоугольника. При этом мы просто заставляли
одну из координат оставаться постоянной, а позволяли из-
изменяться только другой. Но ведь в этом и состоит идея
релаксации: закреплять одни координаты, а позволять ме-
меняться только другим! Значит, «излеченный» градиентный
метод частично ведет себя как релаксационный, и именно
это позволяет ему избежать спотыканий на границе. Но
тогда ясно, что самим релаксационным схемам неприятность
и совсем не страшна. «Прекрасное заключение,— скажет
вдумчивый читатель,— но это верно только для прямоуголь-
прямоугольника или для параллелепипеда со сторонами (или ребрами),
параллельными осям координат. Ну, а в общем случае?»
Увы, следует признаться, что в общем случае дело обстоит
совсем не так благополучно. В общем случае может сказаться
«узколобость» релаксации, позволяющая двигаться только
по заранее избранным направлениям координатных осей.
Из рис. 9.5 видно, что в точке А движение по оси хх вообще
невозможно (любое смещение выводит из допустимой обла-
области), а возможные смещения по оси хг приводят только к
уменьшению функции дели и, следовательно, тоже неосу-
неосуществимы при релаксации по х2. Значит, в точке А релак-
релаксационная схема остановится, в то время как максимальное
значение в пределах допустимой области соответствует
точке В.
Итак, несоответствие направлений границ направлениям
осей оказывается камнем преткновения для метода релак-
релаксации. Средство лечения на первый взгляд ясно: надо лишь
несколько повернуть оси, сделав преобразование коорди-
координат, хотя бы так, чтобы направление границы стало направ-
направлением одной из осей. Но к какой границе подстраиваться,
если точка застоя — на углу,— неясно, а в многомерном
(больше двух) случае таких границ может быть достаточно
137
много. В обшем, чистая релаксация с такими неприятно-
неприятностями справляется плохо. При столкновении с ними релак-
релаксация должна изменить своим принципам и обратиться
к чужим средствам, к свободному выбору направления,
который характеризует «излеченный» градиентный метод *)
или случайный поиск.
-X,
Рис. 9.5.
Кстати, о случайном поиске. Ведь мы еще не говорили о
том, как он ведет себя в присутствии границ. Здесь ситуа-
ситуация своеобразная: иногда хуже, иногда лучше. Если при
случайном выборе направления можно сразу исключить
невозможные (сам механизм, выдающий случайные «прыж-
«прыжки», не позволяет возникнуть тем, которые выводят за
пределы области), то, естественно, дело обстоит лучше,
ибо шансы выбрать то, что нужно («дугу удачи»), выше,
когда выбор ведется не из всей окружности, а из ее части.
Напротив, дело обстоит явно хуже, если, как это обычно
и имеет место, механизм знать ничего не знает о границах
и выбрасывает любые направления, а в то же время дейст-
действительно удачным будет попадание не на всю «дугу удачи»,
а только на ее «возможную», т. е. лежащую внутри допу-
допустимой области, часть. Поэтому точка зрения, принятая
большинством специалистов, такова: случайный поиск «не
любит ограничений», хотя все-таки с ними справляется.
*) После «излечения» его лучше называть общепринятым термином
«метод возможных направлений».
138
Итак, мы выяснили все, что могли, по поводу неприят-
неприятности № 1 и, в общем, научились с ней бороться. Но вот
перед нами новый и, пожалуй, более коварный враг, не-
неприятность № 2 — овраги *). Обратимся сначала к рис. 9.6.
Рис. 9.6.
На нем линиями уровня представлена топография хорошо
знакомой нам по § 7 функции цели:
Но здесь величина а равняется 0,1, так что эллипсы линий
постоянного уровня оказываются сильно вытянутыми, и
вся картинка изображает уже не котловину, а узкую впа-
впадину, овраг. Поперек оврага функция цели меняется быстро,
а вдоль него — чрезвычайно медленно. Это обстоятельство
и приводит К серьезным неприятностям. Посмотрим сначала,
как с ними: справляется релаксационная схема. Оказы-
Оказывается, очень плохо. Поскольку овраг не ориентирован по
какой-либо оси координат, релаксация из точки А по yt
или по уг почти сразу выводит на склон оврага и шаги ста-
становятся очень маленькими. Движение идет «медленным
шагом, робким зигзагом» (рис. 9.6).
*) Если разыскивается максимум, то ту же роль, что и овраги, иг-
играют узкие гребни. Неприятности, да и способы борьбы с ними, естест-
естественно, те же, что для оврагов, что для гребней.
139
Итак, плохое поведение при встрече с оврагами — несом-
несомненный и неизлечимый порок релаксационных схем. Но,
может быть, здесь лучше ведут себя градиентные методы?
Ведь в них заложено свойство выбора наилучшего направ-
направления. К сожалению, и здесь дело плохо. Во-первых, это
направление лучше только локально, в малом. Направление
по перпендикуляру к линии уровня, например из точки
В на том же рис. 9.6, отнюдь не лучшее «в большом». При
наискорейшем спуске необходимо очень тщательно вести
одномерный поиск по этому направлению, чтобы не про-
прозевать дна оврага. Если же используется обычная градиент-
градиентная схема с фиксированным коэффициентом пропорциональ-
пропорциональности, то этот коэффициент придется брать очень малым,
иначе проскакивание неминуемо — шаг может вывести
на противоположный склон в точку, расположенную еще
выше исходной. А раз малый коэффициент, то и движение
окажется очень медленным. Во-вторых, что, может быть,
еще более важно, при столкновении с оврагом приходится
вести очень тщательную оценку производных. Посмотрите
на точку С: из-за резкого поворота линий уровня значения
функции в пробных точках, сдвинутых на А, оказываются
совпадающими со значениями в ней самой. Оценки крутизны
здесь равны нулю, и поиск просто затормозится, не дойдя
до экстремума. Поэтому величину пробного шага необхо-
необходимо брать очень малой, соизмеримой с шириной оврага,
а это, как мы убедимся в § 10, резко повышает требования
к точности измерения самих значений функции. Наконец,
есть и еще одно печальное обстоятельство: на рис. 9.6 изо-
изображен отнюдь не худший вариант вредоносного проявления
«овражности». Ведь в природе овраги и долины обычно не
прямолинейны: оврагу свойственно причудливо изгибаться.
Аналогично и при поиске мы не застрахованы от столкно-
столкновения с функциями, топография одной из которых показана
на рис. 9.7. В таком случае, если даже удастся случайно
попасть в точку на самом дне, самой оси оврага, первый
же шаг снова выведет на боковую стенку, в то время как
при наличии прямолинейной оси, как было на рис. 9.6,
такое удачное начало сразу приводит к экстремуму.
Как же бороться с этой кучей «овражных» неприятно-
неприятностей? С каждой из них по отдельности справиться не очень-
сложно. Например, для того чтобы избежать «застаивания»
из-за плохой оценки крутизны, можно не только уменьшать
величину пробного шага, но и применять другую, крестооб-
140
разную схему расстановки пробных точек (рис. 9.8, а, б).
При этом делаются пробные шаги на ±Д в направлении
*?y
Рис. 9.8.
каждой координаты, а оценка частной производной, на-
например по х,, делается так:
141
Такая «симметричная», двусторонняя оценка дает, вообще
говоря, лучшее представление о крутизне вблизи точки О,
но, к сожалению, и она не всегда спасает от застревания
вдали от экстремума, если линии уровня изгибаются очень
резко (рис. 9.8, а). Вместе с тем для ее расчета требуется
почти вдвое больше измерений. Наконец, возможно исполь-
использование пробных шагов не в направлении исходных осей, а
по специально ориентированным на каждой остановке
осям, например, по направлению, приведшему в эту точку,
и перпендикулярно к нему (рис. 9.8, в). Этот способ хотя
и полезен, но приводит к более сложным расчетам для оценки
производных *).
Любая из этих мер не позволяет бороться с главными
неприятностями: склонностью процедуры поиска «тыкаться»
в стенки оврага, подобно слепому щенку, вместо того чтобы
плавно съезжать по его слегка наклонному дну, отслеживая
все возможные извилины.
Теперь стоит признаться, что способа, гарантирующего
удачное и полное избавление от всех «овражных» неприят-
неприятностей, нет. Однако существует остроумный метод, который
при искусном применении позволяет добиться замечатель-
замечательных успехов. Опишем его основную идею.
Начнем поиск из произвольной точки Ао (рис. 9.7) и,
применяя любую локальную схему (например, классиче-
классический градиентный метод с постоянным малым коэффициен-
коэффициентом пропорциональности), проведем ряд итераций. Пока
движение идет по склону оврага, крутизна оказывается
достаточно большой, а следовательно, и изменения функции
цели даже при малых шагах являются значительными.
Но как только спуск приведет на дно оврага близко к его
оси, движение замедлится или автоматически остановится и
функция цели почти перестанет уменьшаться. Обнаружив
это, остановимся (точка остановки Вп указана на рис. 9.7).
Остановка, конечно, может произойти и из-за того, что
поиск действительно привел к минимуму. Такое предполо-
предположение стоит проверить. Для этого сделаем большой, слу-
случайный шаг, т. е. прыгнем из точки ?„ куда-нибудь на
окружность радиуса R, много большего, чем шаги, которые
мы перед этим совершали. Пусть это будет точка А1. Теперь
*) Представление об этих расчетах можно будет получить далее,
из § 14. Более подробное описание схем поиска с поворотом осей имеется
в книге [16], гл. 5.
142
попытаемся совершить из нее градиентный спуск, пока не
остановимся автоматически, или, обнаружив резкое замед-
замедление движений, остановим процесс сами, что задаст нам
точку Вх. Ежели В„ была не минимумом, а всего лишь
лежала на дне оврага, то Вг не совпадет с Вя, а будет также
лежать на дне. Теперь уже мы имеем две точки в овраге
и можем совершить большой шаг в направлении, соединяю-
соединяющем их (он носит разбойничье название «овражного шага»).
Вряд ли целесообразно прощупывать все точки на этом
пути (если овраг достаточно кривой, то направление В„ВХ
почти сразу выведет на склон оврага, лежащий выше и
точки В» и точки Вх), разумно просто прыгнуть по этому
направлению от Вп в сторону В1 (если Bt ниже) с шагом,
пропорциональным средней крутизне дна оврага от Бо до
Вх, т. е. по простой градиентной схеме. Предположим, что
прыжок привел в точку Аг. Вновь осторожно спустимся из
нее на дно в точку В2 и, измерив крутизну от 5, до Б2,
сделаем овражный шаг. (Очевидно, что схема позволяет
хорошо отслеживать искривление оси оврага.) Итак, с
помощью призванного (только один раз!) волшебника —
«Случайного шага», явно происходящего из того же семейст-
семейства, что и наш прежний герой «Случайный поиск», удалось
выкрутиться из печальной «овражной» ситуации. Правда, в
случае, если размерность задачи больше двух, то дело об-
обстоит хитрее. Там можно столкнуться уже с целым «овраж-
«овражным слоем», при движении по которому функция цели ме-
меняется очень мало, а при выходе из него — резко. Тогда
уже и внутри самого слоя надо думать, как выбирать разум-
разумное направление, и для того, чтобы оценить «градиент
по слою», понадобится, как минимум, три точки (в трех-
трехмерном случае), т. е. случайным шагом придется пользо-
пользоваться уже два раза. Более того, в «овражном слое» может
оказаться и свой овраг, своя длина, вдоль которой функ-
функция цели изменяется еще медленнее.
Таким образом, в многомерных задачах может возник-
возникнуть необходимость использования целой иерархии, лест-
лестницы градиентных спусков, от начальных, с самым малень-
маленьким шагом, до старших, с самым большим шагом.
Сколько таких уровней надо задавать, конечно, невоз-
невозможно догадаться, если не знаешь вида функции цели.
Однако, как указывали создатели «овражного метода»
И. М. Гельфанд и М. Л. Цетлин, в каждой задаче физи-
физическая интуиция обычно позволяет разобраться, какие
143
переменные — несущественные, т. е. вызывающие резкое,
легко обнаруживаемое изменение целевой функции, а ка-
какие — существенные, дающие медленное, «овражное» из-
изменение. Они блестяще сумели продемонстрировать такую
физическую интуицию, сумев решить очень сложные задачи
поиска, возникающие при анализе лауэграмм *).
Поэтому раньше и говорилось, что новый «овражный»
метод не дает стандартного рецепта борьбы с оврагами,
а лишь указывает на основную идею, полагаясь в остальном
на опыт и искусство вычислителя.
*) О гом, что это такое и при чем тут поиск — будет рассказано
дальше, в § 14.
§ ю
ОБМАН, ВЕЗДЕ ОБМАН
(Случайные ошибки)
Пловец и лодочка, знаю,
Погибнут среди зыбей.
Г. Гейне
Мы уже начали серьезный
разговор о неприятностях, од-
однако то были еще мелкие не-
неприятности, крупные — впе-
впереди.
Итак, неприятность № 3 —
ошибки измерений. До сих пор
мы молчаливо предполагали, что
значения функции цели могут
быть измерены в любой точке,
и притом с абсолютной точ-
точностью, т. е. то, что измерено,
то и есть на самом деле.
Однако каждый, кто имел
дело с измерением чего угодно,
хотя бы собственного роста
и веса, знает, что безошибочных
измерений не бывает. Утверж-
Утверждение типа «Коля выше Пети
ровно на 3 еж» никогда не может
быть вполне верным. Во-первых,
потому, что измерение роста про-
производится устройством, точность
которого не более 0,5 см, а во-
вторых, потому, что сам рост —
величина не постоянная, а не-
несколько меняющаяся, медленно
ползающая, дрейфующая даже
за день в пределах ±1 см.
Поговорим прежде всего и более
всего об ошибках измерения.
Их два типа. Первый тип —
ошибки систематические. Сан-
Сантиметровые деления, нанесенные
на стойке измерителя роста, ко-
конечно же, не отделяют проме-
промежутки, в точности равные эта-
эталонному сантиметру — сотой
части метра, как говорят, сде-
сделанного из платино-иридиевого
сплава и хранящегося за семью
замками в Париже. При изго-
изготовлении стойки особо точными
145
приборами не пользовались, да и за время ее работы она и
сантиметры на ней меняли свою длину — дерево сохло,
краска коробилась. Поэтому деление 172 см на самом деле
может означать и 171 см, и от измерения к измерению такая
ошибка в 1 см сохранится. Ее, конечно, нетрудно устра-
устранить, если она известна, каждый раз вычитая этот лишний
сантиметр. Да, впрочем, для наших задач — задач поиска —
подобные систематические ошибки не страшны. Ведь нас
фактически интересуют только разности величин, а то
и просто — что больше и что меньше. А если обе измеренные
величины увеличить или обе уменьшить на одинаковое е,
то их разность от этого никак не изменится.
Итак, если последовательные измерения целевой функ-
функции делаются одним и тем же измерительным прибором,
то его систематические ошибки никак не скажутся на ходе
процесса поиска. Иное дело — ошибки второго типа, ошиб-
ошибки непостоянные. Они возникают оттого, что при различ-
различных измерениях одним и тем же прибором условия изме-
измерения в действительности немножко отличаются, как бы
мы ни стремились соблюсти их одинаковость.
Вот Коля аккуратно подлез под планку ростомера, по-
постарался прижать ноги, голову, придавить буйную шеве-
шевелюру. Добрый доктор посмотрел и сказал: «Молодец, Коля,
здорово вырос за лето — 175 см». Затем ту же процедуру
проделали с Петей. Ревностный Коля строго смотрел за
тем, чтобы Петя, не дай бог, не поднялся на цыпочки.
И вот у Пети — 174,5 см. Коля страшно рад — он выше на
целых 1/2 сантиметра! Но ведь добрый доктор, даже если
он очень тщательно смотрел сквозь свои очки, мог бы также
сказать, что у Коли 174,8 см, а у Пети — 174,7 см, ибо
деления-то на линейке толстые, и вся разница свелась бы
к 1/10 см. А если бы их перемерить еще раз, да Петя бы еще
побольше вытянул шею, глядишь — он и «перерос» бы Колю
на каких-нибудь 0,3 см\ Так что гордиться Коле нечем,
и если бы он был честным и образованным мальчиком,
то протянул Пете руку и сказал: «Вот здорово, Петька!
Мы совсем одинакового роста. А разница в полсантиметра —
это чепуха, из-за ошибок измерения».
Но вопрос о том, кто выше — Петя или Коля, в конце
концов, их личное дело. Но, увы, непостоянные ошибки
свойственны и более серьезным измерениям.
Самая важная характеристика качества турбины —
ее коэффициент полезного действия, к. п. д., отношение
146
мощности, которую она вырабатывает, к мощности, кото-
которую потребляет. Усилия тысяч конструкторов и ученых
направлены на то, чтобы поднять к. п. д. создаваемых ими
турбин хотя бы на 1%. Ведь что такое лишний процент
в к. п. д. для агрегата мощностью в 500 тысяч киловатт (а та-
такие стоят на Красноярской ГЭС)? Это лишние 5 тысяч кило-
киловатт — мощность, достаточная для освещения целого го-
городка. А 1 % от всей мощности Красноярской ГЭС — это
почти Волховстрой.
Недаром достижение максимального к. п. д.— более
чем достойная функция цели. Но у одной и той же турбины
к. п. д. бывает разный — он зависит от условий работы, от
напора воды, от ее расхода через турбину. Чтобы для каж-
каждого сочетания внешних условий турбина работала наилуч-
наилучшим образом, в ней делают специальное устройство, позво-
позволяющее так повернуть ее лопасти, чтобы обтекание их пото-
потоком воды было наилучшим, а следовательно, и к. п. д. наи-
наиболее высоким из возможных в данных внешних условиях *).
Хорошо бы уметь измерять к. п. д. и поиском определять
лучшее положение лопастей. Но, увы, измерять к. п. д. на
больших машинах с ошибками меньше 1 % мы не умеем,
а значит, и толку от таких измерений нет **). Причина же
невозможности точно измерить к. п. д. лежит в том, что он
непосредственно зависит от расхода воды через турбину,
а точно измерить, сколько бешено ревущих кубометров
воды проносится сквозь нее каждую секунду, очень сложно.
Если бы скорость течения воды во всех точках поперечного
сечения потока была одинаковой, то мы бы могли ее изме-
измерить, что не так уж трудно, и, умножив ее на площадь се-
сечения, найти расход. Но ведь поток — ревущий, пульсирую-
пульсирующий, скорости в нем меняются от точки к точке. Можно,
конечно, разбить сечения на части и мерить скорость
в каждой части. Это технически сложно и все-таки
*) Эти устройства делаются не иа всех турбниах, а лишь иа тех,
которые работают при не слишком высоких плотинах, когда условия
работы могут сильно меняться.
**) Любопытный читатель спросит: а как же все-таки говорят о
к. п. д. 89%, если его нельзя измерить? К сожалению, это делается
лишь искусственным косвенным путем, на маленьких турбинах-моде-
турбинах-моделях, которые стараются делать похожими на больших братьев как две
капли воды. Но автор, честно говоря, никогда не верил, что к. п. д.,
измеренный на моделях с точностью выше того же 1%, совпадаете к. п. д.
большого агрегата.
147
не позволяет полностью избавиться от ошибок, связанных
с быстрой переменностью скорости по сечению.
Но, может быть, приведенные примеры искусственны:
один из них — совсем детский и в нем говорится о заведомо
плохом измерительном приборе, другой пример — слиш-
слишком грандиозный, где заведомо велики трудности измерения?
Нет, к сожалению, эти примеры типичны. Можно
уверенно сказать, что не существует безошибочных измери-
измерительных приборов. Каждое измерение несет в себе ошибку,
причем от измерения к измерению эти ошибки меняются.
Мы можем их не замечать, когда интересуемся лишь гру-
грубыми оценками, но они, несомненно, присутствуют. «Как
же так,— скажет недоверчивый читатель,— ведь сущест-
существуют сверхточные приборы».
Да, конечно, сверх, но не абсолютно точные. И причина
этого — не в недостаточной изобретательности инженеров,
проектирующих приборы, не в плохом умении рабочих,
их изготовляющих, а в самой природе вещей.
Почти все точные приборы — электрические. Носите-
Носителями электричества являются электроны и ионы. На кар-
картинках в элементарных учебниках физики часто рисуют
стройные ряды электронов и ионов, идущие от одного по-
полюса к другому. Но, увы, эти картинки лишь полуправда.
В действительности носители электричества находятся в
непрерывном хаотическом, беспорядочном движении, тем
более энергичном, чем выше температура. Правда, действие
внешнего поля заставляет носителей постепенно сдвигаться
в одном направлении, отдавая ему большее предпочтение,
но танец не прерывается никогда. Движение совсем не напо-
напоминает военный парад: тенденция лишь прорывается сквозь
хаос, но не устраняет его. Хаотическое движение носителей
создает и хаотическое изменение электрического поля,
которое известно под названием теплового шума. Именно
оно создает колебания напряжения на любом проводнике,
внутренне ему присущие. Эти колебания невелики (при
комнатной температуре на сопротивлении в 1 мегом их
среднее отклонение составляет всего 0,01 вольта), но при
точных измерениях они обязательно скажутся. Можно,
конечно, снижать температуру, при абсолютном нуле
(—273° по Цельсию) «тепловой танец» замирает. Но, во-
первых, добиться этого полностью невозможно, а во-вто-
во-вторых, останутся и другие неприятности. Основным элемен-
элементом всякой точной измерительной аппаратуры являются
148
электронные лампы, в которых напряжение на сетке усили-
усиливает или уменьшает поток электронов, идущих от катода к
аноду. Но ведь заряд электрона — конечная, хотя и очень
малая величина, значит, сила тока должна пульсировать
из-за дробности, прерывности потока. И эта прерывность —
не регулярная, а хаотическая, поскольку электроны хоть
и срываются с катода и уносятся полем, но делают это
совсем не через жестко расставленные интервалы времени *).
Тем самым возникает другой источник ошибок, называемый
дробовым шумом.
Всякое повышение точности измерения связано с умень-
уменьшением длин, времен, напряжений, а следовательно, неумо-
неумолимо приближает нас к столкновению с миром малых ча-
частиц. А этот мир живет собственной жизнью, и все наши
усилия по созданию постоянных, стабильных внешних
условий не могут полностью организовать движения его
жителей. В измерениях, касающихся задач оптимизации,
нас, живущих в макромире и именно в нем ставящих свои
цели, конечно, не интересует индивидуальное поведение
каждой частицы, нас интересует лишь суммарный эффект,
например напряжение, сила тока. Но важно понимать, что
этот эффект является именно суммарным, результатом
усреднения деятельности отдельных жителей микромира.
А теперь самое время напомнить, что микромир — дейст-
действительно странный мир. Хотя его жители, конечно, не
обращаются ни к каким гадалкам, но в них самих заложен
случайный механизм, который и определяет их действия.
Итак, «слово названо»! Ошибки, с которыми мы сталки-
сталкиваемся при попытках повысить точность измерений, есть
проявления «странного», случайного мира, жители кото-
которого подчиняются законам вероятности и, к счастью, са-
самому главному из них— закону больших чисел. К счастью
потому, что нас в макромире интересует лишь суммарное
действие огромного числа жителей микромира, а при сум-
суммировании все результаты действий каждого из них сгла-
сглаживаются, усредняются, и относительные отклонения от
среднего, ожидаемого, становятся тем меньше, чем больше
число участников.
Но закон больших чисел — не жесткий диктаторский
закон, он вовсе не запрещает проявляться отклонениям,
*) Автор приносит извинения читателям за все неточности в этих
объяснениях, вызванные главным образом их краткостью.
149
хотя чем больше эти отклонения, тем реже бни появля-
появляются.
Итак, случайный мир прячется не только в темных залах
игорных домов, он — плоть от плоти реального мира. Все
кажущееся постоянство макромира, в котором мы живем,
лишь следствие закона больших чисел, который запрещает
частые проявления заметных отклонений от этого постоянст-
постоянства. Но стоит присмотреться внимательнее — и мы заме-
замечаем вечно волнующееся, зыбкое случайное непостоянство *).
Теперь, осознав всеобщность и неизбежность случайных
ошибок, пора вернуться к поиску, разобраться, как будет
реагировать на них «ищущий человечек».
В сущности, это было ясно уже из самого первого «дет-
«детского» примера: если Коля действительно близок к Пете
по росту, то разобраться, кто из них выше, а кто ниже,
трудно. Все результаты сравнения «тонут» в случайных
ошибках, а ведь сравнение близких величин — основное
занятие «ищущего человечка».
Для более полного понимания всех возникающих от
этого неприятностей, разберемся подробнее в простейшей
одномерной задаче поиска, решаемой хотя бы по градиент-
градиентной (пропорциональной) схеме, и запишем несколько про-
простых формул. Для оценки крутизны в начальной точке
сделаем, как обычно, два замера — в xim и в д;@)+Д. Если
/ (xw), движемся направо, если меньше — то
*) У читателя не должно создаваться впечатления, что все прояв-
проявления случайного возникают только при приближении к микромиру.
Ошибки в измерениях скорости потока были связаны, например, с впол-
вполне макроскопическим, но случайным по природе явлением турбулент-
турбулентности течения быстрых потоков. Кстати, и пресловутые ошибки прогно-
прогнозов погоды также во многом связаны с трудностью измерения турбу-
турбулентных потоков в атмосфере.
Читатель, конечно, помнит и о том, что значения целевой функции
зачастую не результаты измерения, а просто результаты вычислений
функции по вполне точным, но очень сложным формулам.
Может быть, здесь нет места случайным ошибкам? И это, к сожале-
сожалению, не соответствует действительности. Вычисления никогда не про-
проводятся точно, мы всегда вынуждены прибегать к округлениям, считая
с точностью, например, до пяти знаков после запятой или до пяти зна-
значащих цифр. Так считает и человек, и любая цифровая вычислительная
машина. Отброшенные величины малы, но если вычисления сложные,
включают много операций, то и ошибки округления могут накапливать-
накапливаться, создавая в результате заметные величины, с которыми надо считать-
считаться. На использовании'ошибок округления строятся некоторые из тех
формул, с помощью которых в вычислительных машинах вырабатывают-
вырабатываются последовательности чисел, похожих по свойствам на случайные.
150
налево. Тактика обычная, но, увы, неосуществимая, ибо
измерить мы можем не то, что есть на самом деле, не сами
значения функции цели, а значения, искаженные случайны-
случайными ошибками, т. е. вместо / (х{0)) находим
где z']01 — ошибка в первом измерении, а вместо / (л;@)+Д)
измерим
где zi0) — ошибка во втором измерении.
Предположим, что мы не имеем представления о наличии
ошибок и, просто сравнивая результаты измерения, состав-
составляем оценку крутизны:
S* I v(^) Л \ If* / v(") j Л \ f * (v(^)"n —
А
= —[/(х'0)+Д) — /(л;<0»)]Н д г .
Тем самым вместо
находится крутизна, искаженная наличием ошибок в изме-
измерениях:
2<0 J ;у@>
S*(x@>, A)=S(x<0>, Д) + <А где ст@> = - 2 д ' •
Эти ошибки проявляются в том, что 5* отличается от S
на случайную добавку а, ошибку в крутизне. Если мы теперь
попытаемся применить схему пропорционального поиска,
то нам придется для определения шага и, главное, его на-
направления, использовать именно искаженную крутизну S*
(другой, истинной, мы ведь не знаем).
Новая точка хп) найдется по формуле
Д)
и может оказаться где угодно: справа или слева от исходной
точки, ближе к экстремуму или дальше от него. Все теперь
зависит от того, какие же именно значения приняла слу-
случайная ошибка при измерениях. Посмотрим, что делается
с главным фактором — выбором направления. Здесь все
очень просто.
Если \S\ > |c|, то ошибка не влияет на выбор направле-
направления. Если ошибка а оказалась того же знака, что и S, то
15!
тоже никакого вредного эффекта нет. Однако если о ока-
окажется по величине большей, чем S, да еще противополож-
противоположного знака, то все покатится совсем в другую сторону, чем
нужно.
Итак, мы установили, что случайные ошибки могут
вызвать шаг в ложную сторону. А если же скверная ситуа-
ситуация повторится и на следующих шагах, что совсем не исклю-
исключено, тогда весь процесс поиска пойдет не к экстремуму,
а в противоположную сторону. Вот какое может произойти
безобразие!
Однако вновь пора вспомнить, что в случайном мире
действует спасительный закон больших чисел. На пути
к экстремуму надо сделать много шагов, и при суммировании
их эффекта явно скажется основное, предпочтительное
направление. Ведь значение искаженной крутизны колеб-
колеблется вокруг истинного значения, а истинное — задает
неумолимую тенденцию движения к экстремуму.
Ясно теперь, что случайные ошибки могут сбивать
«ищущего человечка» с истинного пути, заставлять его
время от времени делать ложные шаги или даже несколько
ложных шагов, но все-таки тяга его к экстремуму, заложен-
заложенная в среднем, истинном значении крутизны, скажется.
Как всегда в случайном мире, основное направление прояв-
проявляется как тенденция, предпочтение, но не как жесткое
правило.
Под действием ошибок «ищущий человечек» частично
теряет свою разумность. Хлебнув пьянящей отравы оши-
ошибок, он, хоть и приблизительно, представляет дорогу к
«дому» — экстремуму, но все же то и дело норовит шагнуть
и в другую сторону. Его поведение уже не является регу-
регулярным, вполне детерминированным процессом, оно ста-
становится случайным.
Научно его так и называют — случайным блужданием,
а чтобы подчеркнуть, что это блуждание не является совсем
бестолковым, что в нем проявляется предпочтительная
тенденция, его зачастую сравнивают с движением пьяного
пловца в канале с текущей водой *).
*) Это сравнение принадлежит знаменитому советскому физику-
теоретику Л. О. ]Мандельштаму, который вместе со своими учениками
очень много сделал для понимания реальных проявлений случайного
мира. Роль случайных блужданий в поиске впервые исследовал
А. А. Фельдбаум. Именно с его работ началось серьезное знакомство
инженеров-автоматчиков с замечательными возможностями поискд,
!52
Итак, ошибки замедляют движение к экстремуму,
и в этом первое проявление неприятностей, но все же тен-
тенденция должна брать верх и рано или поздно приведет
к экстремуму. Но, к сожалению, этого недостаточно. В де-
детерминированном мире поиск останавливается, когда оценка
крутизны обращалась в нуль. Действительно, если после
измерений вблизи точки ха) оказывалось
/(*"> + Д) = /(*«>),
то само правило поиска показывало, что х('+1)==л;(П. Можно
было снова и снова производить измерения в окрестности,
но они дали бы тот же результат, и все последующие точки
совпали бы с ха\ Но в случайном мире это не так. Пусть
при измерениях на шаге с номером / оказалось, что
Формула поиска, конечно, снова покажет, что надо принять
ха+Х) равным х{'\ Но если будут проведены вторичные
измерения в том же месте, они, в силу случайности, могут
дать другие результаты: окажется, например, что
хотя x<f+l)—xlt), и следующая точка уже сдвинется на-
направо. Отсюда следуют два вывода: во-первых, если изме-
измеренная крутизна вблизи какой-либо точки окажется рав-
равной нулю, то эта точка может быть очень далека от экстре-
экстремума; во-вторых, при выходе в окрестность действительного
экстремума ошибки измерения могут «замаскировать» это
событие.
Напомним, что в вершине, экстремуме, крутизна равна
нулю, предпочтительной тенденции двигаться в какую-либо
сторону нет. Значит, подойдя к экстремуму, например,
слева, «ищущий человечек» имеет равные шансы, под дейст-
действием опьяняющих паров случайных ошибок, пойти дальше
направо или обратиться вспять, но в обоих вариантах —
вниз по склону. Следовательно, несмотря на тенденции,
проявляющиеся и справа, и слева и всегда толкающие
его к экстремуму, «ищущий человечек» обречен на вечное
случайное блуждание около цели! Именно около, ибо закон
больших чисел не позволит ему далеко отклониться от
экстремума, хотя и не может запретить эти случайные
блуждания.
153
Если форма функции цели является симметричной от-
относительно экстремума, значит, и сила притяжения справа
и слева одинакова, а следовательно, в блужданиях не будет
проявляться предпочтение к уходу в какую-либо опреде-
определенную сторону, так что в среднем за длительную историю
блужданий положение нашего человечка будет совпадать
с экстремумом. Это и дает нам некоторые надежды на воз-
возможность оценки положения экстремума, но ведь симметрия
есть отнюдь не всегда. Один склон может быть круче, дру-
другой — положе. На крутом склоне тенденция, толкающая
в сторону экстремума, сильнее. Поэтому среднее положение
при блужданиях смещается в сторону более пологого склона
и не будет совпадать с экстремумом, так что наши надежды
не вполне оправданы. Очень важно представлять, как за-
зависят отклонения от экстремума от основных характери-
характеристик процесса поиска, т. е. от пробного шага Л и коэффи-
коэффициента пропорциональности 9, а также от характеристик
ошибок и свойств самой функции цели. Можно достаточно
просто установить эту зависимость.
Читатель, любящий формулы, может посмотреть на приводящие к
этой зависимости выкладки для простого случая, когда функция цели
описывается зависимостью / (х)= —^- Lx2, где L> 0. Истинная крутизна
/'(¦*)=—Lx. Максимум лежит в точке, где /' -=0, т. е. при х=0. Прави-
Правило поиска таково л.(' + 1>- х(*' -[-в[—La^'-t-o1'1], где о"<г>— ошибка в изме-
измерении крутизны в t-ik точке. Пусть *<0) взято произвольно. Тогда в силу
правила, применяя его последовательно, получим
+ [A — OL)^-1 9а1°Ч-- • •. +A —GL)
Значение координаты на N-u шаге, а следовательно, и отклонение от
экстремума, поскольку он — в начале координат, складывается из двух
частей: одной — зависящей от начальной точки, и другой — зависящей
от случайных ошибок Если взять Э так, что q — |1 — 9L|< 1, то с ростом N
первая часть будет стремиться к нулю (условие q< 1 и есть условие схо-
сходимости к экстрем} му при отсутствии случайных ошибок), а вот вторая
часть к нулю не стремится. Правда, ее ожидаемое значение равно нулю,
ибо каждая из ошибок о<г>— в среднем нуль, но случайные отклонения
от него возможны. Итак, после очень многих шагов x'-N) действительно
будет случайно блуждать около экстремума, причем среднее значение
совпадает с ним (исходная функция цели симметрична).
При очень больших Л'
x^'^Olo10) qN~1-\- ...
154
(считая для простоты 1—8L>0). Можно доказать, что дисперсия суммы
(или разносш) независимых случайных чисел равна сумме дисперсий
(средних квадратов) каждого из них, следовательно,
D }
где через Д, обозначена одинаковая дисперсия каждой ошибки o(t).
Отсюда по правилу суммирования бесконечной геометрической прогрес-
прогрессии получаем, что при Л' стремящемся к бесконечности,
Ho
Следовательно,
где Dz — одинаковые дисперсии ошибок при каждом измерении.
Напомню, что Учитель из случайного мира рассказал об
очень простой мере случайных отклонений — дисперсии.
Так вот: дисперсия отклонения от экстремума в случайных
блужданиях (для симметричной кривой) тем больше, чем
A) больше дисперсия случайных ошибок при измерениях,
и это, конечно, совершенно тривиальный факт; чем B)
выше коэффициент пропорциональности 0: чем подвижнее,
темпераментнее «ищущий человечек», тем дальше он может
уходить от экстремума при блужданиях; чем C) более
пологой является функция цели вблизи экстремума, ибо
тогда и при удалении от него крутизна, а следовательно,
тенденция, стремление к экстремуму, мала и «тонет» в слу-
случайных ошибках, и наконец, D) дисперсия отклонений тем
больше, чем меньше пробный шаг Д. И это, конечно, заранее
ясно, ибо чем ближе взяты точки сравнения, тем меньше
отличаются истинные значения целевой функции в них,
тем больше относительная роль случайных ошибок, тем
больше шансов ошибиться в вопросе о том, кто выше и кто
ниже *).
Итак, качественная картина случайных блужданий
вблизи экстремума становится вполне ясной и из общих
*) Действие случайных ошибок во многом близко к действию мел-
мелких неровностей, бугров и ямок. Увеличение Д полезно в обеих ситуа-
ситуациях. Разница лишь в том, что «случайные неровности» не являются ста-
стабильными, а колышутся, напоминая скорее не плохую дорогу, а волную-
волнующееся море.
155
интуитивных соображений. А это очень важно при орга-
организации поиска, поскольку обычно заранее не известны
точно ни конкретные свойства функции, ни характеристики
ошибок, и при организации поиска приходится руководст-
руководствоваться именно качественной картиной.
Главный качественный вывод, пожалуй, состоит в том,
что не следует брать измерения в возможно более близких
точках, стремясь, как утверждалось раньше, лучше опре-
определить, локализовать положение экстремума. Как мы уста-
установили, это уточнение при наличии случайных ошибок ста-
становится мнимым, ибо увеличиваются случайные откло-
отклонения.
После перечисления и выяснения основных последствий
неприятности № 3 — ошибок измерений, пора браться и за
трудное дело борьбы с ними. При этом обычно на первый
план выдвигается борьба с неточностью в достижении ко-
конечной цели, а на второй — проблема замедления темпа
движения к ней.
Основных средств борьбы — два, и оба базируются на
разумном использовании закона больших чисел. Первый
из них, классический, довольно прямолинеен. Поскольку
источником всех бед являются ошибки измерений, то можно
непосредственно бороться именно с ними.
Во многом неприятности «ищущего человечка» были
связаны с излишним доверием к результатам однократных
измерений. А что, если производить измерения несколько
раз и использовать для оценки крутизны средние
результаты последовательных измерений? Если измерений
действительно будет много, то действие закона больших
чисел, несомненно, скажется и отклонения от среднего,
истинного значения окажутся малыми. Но и при не слиш-
слишком большом числе усредняемых измерений отклонения от
среднего окажутся существенно уменьшенными. Пусть,
например, каждый сосед опрашивался дважды, так что
в формировании оценки крутизны участвовали ошибки че-
четырех измерений. Тогда получаем
1
J'
т. е.
С* С | г2 г1 г г4 гЗ
Ь =='Ь + 2Д
156
Предположим для простоты, что при каждом измерении
равновероятны ошибки в +е0 и —е„, что равносильно
выбору значений ошибки случайным механизмом типа
бросания монеты. Следовательно, нам достаточно подсчи-
подсчитать возможные варианты четырех последовательных бро-
бросаний, а эти варианты уже были записаны в нашем блокноте
господином Учителем из случайного мира.
В шести вариантах произойдет полная компенсация,
в восьми — будут отклонения от среднего на 2е„ и только
в двух — на 4е0. Так что в среднем по всем возможным
вариантам будем иметь следующее ожидаемое среднеквад-
среднеквадратичное отклонение суммы г.2 — zi-]-zi — г3 от нуля:
V & ¦ ° + Те • Bе«J + ТЕ <4е«4> = ^ = 2е<"
т. е. отклонение S* от S составило -~- — -^-. Если бы мы
подсчитали точно так же результаты однократного опроса,
т. е. оценки крутизны по двум измерениям, то получили сред-
неквадратичное отклонение, равное —^— . Значит, удвоение
измерений привело к уменьшению средних отклонений в
]/2 раза. Но еще господин Учитель предупреждал нас, что
при усреднении N величин средние отклонения убывают в
У N раз, так что мы просто убедились в справедливости
этого правила на простом примере. Итак, усреднение
нескольких измерений, проводимых в одной и той же
точке, уменьшает в среднем случайные ошибки в оценке
крутизны, а значит, и все дальнейшие неприятности. Одна-
Однако усреднение невозможно без проведения лишних изме-
измерений, а следовательно, дополнительных затрат. И ведь
пока производятся измерения, мы стоим па месте, ни ка-
капельки не улучшая функции цели. Кроме того, сколько ни
усредняй, возможность ошибки все-таки не исключается.
Правда, если мы усредним очень большое число изме-
измерений, то она окажется очень малой. Но мы же не можем
бесконечно долго думать, прежде чем совершить решитель-
решительный шаг. Читатель, наверное, помнит, что случилось с
бедной Эльзой из сказки братьев Гримм, которая, думая
о возможных неприятностях, никак не решалась сделать
жлъ что-нибудь.
Не желая повторять истории бедной Эльзы, можно
либо просто махнуть рукой на неприятности, производить
157
усреднение лишь малого количества измерений, уповая на
то, что и при этом шансы на неудачу будут невелики, либо
придумать что-нибудь новенькое.
Это «новенькое» было сравнительно недавно придумано и
получило название «стохастическая аппроксимация» или,
по-русски, способ приближения при наличии случайных
ошибок *).
Идея его тоже не очень сложна: раз стоять на месте недо-
недопустимо, то давайте двигаться. Весь вопрос, как двигаться.
Напомним, что при анализе случайных блужданий мы
выяснили любопытный и простой факт: отклонения от эк-
экстремума оказываются связанными с коэффициентом 6;
чем В меньше, чем поиск недоверчивее, медленнее, тем
меньше отклонения от экстремума в установившемся после
большого числа шагов режиме блужданий. Отсюда элемен-
элементарное следствие: сделаем Э равным нулю или по крайней
мере очень малым, и блужданий не будет! «Но ведь это
глупо,— скажет возмущенный читатель,— если 6 обратить
в нуль, то и поиска не будет, мы так и останемся в исходной
точке!»
Читатель, как всегда, прав. Но в этой абсурдной идее
все же есть зерно истины. Ее можно примирить со здравым
смыслом довольно просто: давайте начинать поиск с доста-
достаточно большим коэффициентом 6, но с каждым шагом будем
делать его все меньше и меньше, устремляя его к нулю по-
постепенно, только с бесконечным ростом числа шагов. Тогда
и овцы будут целы, и волки сыты: и поиск будет вестись,
и случайные блуждания постепенно угаснут.
Итак, мы решили, что разумно обратиться к такой схеме
поиска:
где S* (xlt\ Л) — по-прежнему оценка крутизны в точке
хт, содержащая случайные ошибки, а В(() — коэффициент
тем меньший, чем больше номер шага t, и стремящийся
к нулю, когда t стремится к бесконечности.
Но при этом важно не перегнуть палку, нельзя требо-
требовать слишком быстрого уменьшения Q[t), иначе мы можем
никогда не дойти до экстремума, даже если этому не будут
мешать ложные шаги из-за ошибок.
*) Эта методика была сравнительно недавно предложена американ-
американскими учеными сначала для поиска корней уравнений (Роббинсом и
Монро), а затем и для поиска экстремума (Кифером и Вольфовицем).
158
Чтобы убедиться в этом, рассмотрим достаточно естественный слу-
случай, когда крутизна склона (истинная, безошибочная) по мере продви-
продвижения к экстремуму от начальной точки л101 не возрастает (точка х10)
взя1а слева от 1\аксимума, где крутизна положительна), г. е. 5(lt))
*HS{x{t))—S0. Тогда р силу нашего основного правила
Применяя это неравенство последовательно, получим
-1>] s0.
Тем самым оказывается, что перемещение из исходной точки за N ша-
шагов, др(ЛГ)—х<0), не превосходит величины
определяемой суммой коэффициентов б101. Но* если сумма этих коэффи-
коэффициентов за бесконечное число шагов не будет неограниченно возрастать,
значит, мы и не сможем сдвинуться из исходной точки более чем на огра-
ограниченное расстояние, равное произведению этой суммы на So Но ведь
исходная точка может быть выбрана и на большем расстоянии от мак-
максимума. Тогда, увы, иди хоть бесконечное число шагов, а до него не
дойдешь.
В том, что такой парадокс возможен при быстром убывании 8<'>,
убеждает простой пример. Ничто нам, казалось бы, не мешает умень-
уменьшать 6(<), на каждом шаге умножая его на постоянный положительный
коэффициент Р, меньший единицы, т. е. выбирая 6<1'=E010', В12) =
=f}6lll=S 1*)в<°), и т. д.Тогда нетрудно по формуле геометрической прог-
прогрессии подсчитать, что
е
1-й
Но при N, стремящемся к бесконечности, |3Л' стремится к нулю. Значит,
продвижение от исходной течки ограничено величиной
е<0M°-
Итак, при уменьшении коэффициентов нужна осторож-
осторожность. Попытаемся уменьшать 6(" тоже по очень простому,
но более медленному правилу, взяв Q{i) = ——г > т- е-
е<1> = 4-6@)> 0<2> = 1е<°> и т. д. Тогда сумма
46> 0 =
Z О
=е*0' 11 +у+1
159
уже будет возрастать до бесконечности с ростом числа
слагаемых *), и подозрения, что мы можем не добраться
до максимума, оказываются необоснованными.
К описанным схемам можно прийти и из совершенно
других соображений. Пусть мы решили использовать клас-
классическую схему градиентного поиска с постоянным коэф-
коэффициентом 9^0<О), тогда, оценив крутизну в исходной
точке, мы сдвинемся в новую по правилу
x<l> = .x;'0> + eS*(x@\ Л).
Вновь оценим крутизну, получив S* (х{1), Л), и по схеме
получим указание двигаться в x<J)+GS* (хA), А), но, помня
об опасности случайных ошибок, решим не совсем доверять
этой рекомендации и возьмем среднее между ней и старой
точкой ха\ в действительности перейдя в точку
В ней померим крутизну S* (х{2>, Л) и снова возьмем в ка-
качестве х{3) среднее между рекомендацией обычной схемы
и х{2), но относясь к этим рекомендациям с большим недо-
верием, чем к уже наиденному хк\ будем предпочитать
старое в два раза больше, чем новое, и примем
s*(/> a).
Ясно, что эта схема с усреднением и возрастающим на каж-
каждом шаге предпочтением к старому, с возрастающим кон-
консерватизмом, эквивалентна уже описанной схеме с умень-
уменьшающимся шагом, схеме стохастической аппроксимации.
Но ведь теперь мы сумели разглядеть в ней и старую, хорошо
знакомую идею использования закона больших чисел
путем усреднения результатов измерений.
Однако очень важно, что эта идея воплощена принци-
принципиально по-новому: мы не просто бесконечно «размышляем»
над результатами, пытаясь увидеть под зыбью случайных
ошибок твердую основу истины, но и сочетаем эти размыш-
*) Доказательство такого свойства суммы несложно" Оно основы-
основывается на том, что в ней можно выделить бесконечное число групп
слагаемых A/2, 1/3+1/4, 1/5+1/6+1/7+1/8, . . .), причем сумма членов
в каждой из групп равна или больше 1/2.
160
ления с действиями, с постепенным перемещением к экстре-
экстремуму.
Читателю, наверное, ясно, что различный выбор харак-
характера убывания Q[t) соответствует различной степени «кон-
«консерватизма» при усреднении старых результатов и новых
рекомендаций, ибо очевидна справедливость тождества
(x«>, A)]
Чем быстрее убывает 6(", тем более «консервативна» схема,
тем опаснее возможность вообще не дойти до цели. Но слиш-
слишком медленное убывание Э(" соответствует излишне боль-
большому доверию к несколько легкомысленным (в трудных
условиях наличия ошибок) рекомендациям к слишком
быстрым перемещениям, которые не позволяют выяснить с
помощью закона больших чисел основную тенденцию,
пока она еще четко проявляется *). Ведь в окрестности
экстремума ее заметить не удастся. Оказывается, что после-
последовательность Э(<) — обладает всеми необходимыми
полезными свойствами. Их удается сохранить и при не-
несколько более медленном убывании коэффициентов, а сле-
следовательно, при более быстром общем темпе движения.
Идея одного из таких способов ускорения очень проста.
Поскольку правильный выбор направления все-таки пре-
преобладает, то постоянное повторение ложных шагов почти
невероятно. Поэтому сам факт повторения несколько раз
подряд выбора одного и того же направления является
косвенным подтверждением его правильности. Каждое же
изменение направления является подозрительным и взы-
взывает к осторожности. В силу таких соображений и предла-
предлагается длину шага уменьшать только при смене направле-
направления, иначе говоря, принимается
б«> = J е@)
я @+1 '
где п (t) — число перемен направления за все t шагов.
*) Более точное исследование показывает, что слишком медленное
уменьшение коэффициентов не обеспечивает полной компенсации слу-
случайных ошибок. Необходимо выполнить условие, чтобы сумма квадра-
квадратов 6('', т. е.
не возрастала неограниченно.
161
Напомним, что если экстремум лежит внутри области
поиска, то при наличии случайных ошибок его можно и
проскочить, а после перехода через экстремум направле-
направление, которое ранее было правильным, становится ложным и
теряет свою преимущественность. Поэтому почти наверняка
произойдет смена направления на обратное, а следовательно,
уменьшение длины шага, но это и необходимо: в окрест-
окрестности экстремума целесообразно двигаться возможно осто-
осторожнее, сводя постепенно длину шага к нулю и полной
остановке в экстремуме.
Кроме уже описанной, полезны схемы стохастической
аппроксимации, происходящие от постоянно-шаговой, а не
от пропорциональной (градиентной), и работающие по
правилу
( 1, если f* (х«> + к) > f* (х^),
_1( если /• (*«> + Д)</* (х<»),
0, если /* (х<*> + Д) = /* (.v("),
с убывающими Э(П. Эта схема оказывается вполне работо-
работоспособной и успешно справляется со случайными ошиб-
ошибками. Можно здесь применять и только что описанный
способ ускорения.
Итак, мы пришли к выводу, что стохастическая аппрок-
аппроксимация является универсальным лекарством от болезни
случайных ошибок.
Но..., как всегда, имеется хотя бы одно «но» против
всякой абсолютной гегемонии единственного метода.
Во-первых, полная компенсация эффекта ошибок с точ-
точным выходом в экстремум в схемах стохастической аппрок-
аппроксимации достигается дорогой ценой — увеличением числа
шагов, а следовательно, общего времени поиска. Вместе
с тем полная компенсация практически не нужна, так как
обычно достаточно оказаться лишь в некоторой малой ок-
окрестности экстремума, но зато — за приемлемое число шагов.
Так что, возможно, простое усреднение, по крайней мере
при невысоких требованиях к точности, будет более эффек-
эффективным.
Второе обстоятельство, порочащее схему стохастической
аппроксимации, имеет другую основу.
Дело в том, что функции цели, характеризующие ка-
качество работы многих машин, не остаются неизменными во
времени. Их вид искажается под влиянием меняющихся
внешних условий. Изменение функции, естественно, может
162
привести и к смещению положения экстремума, к его мед-
медленному дрейфу.
Возможность дрейфа не позволяет сводить к нулю,
хетя бы и постепенно, скорость поиска: ведь остановка
даже вблизи экстремума, каким он является в данный мо-
момент, опасна — в дальнейшем из-за дрейфа экстремум
медленно, но неумолимо уползет и машина окажется рабо-
работающей не в лучшем режиме.
Но уменьшение скорости поиска до нуля — характерное
свойство стохастической аппроксимации. Следовательно,
если возможен дрейф, то применять эту схему недопустимо.
Однако, несмотря на все возражения, схемы стохасти-
стохастической аппроксимации, несомненно, являются эффектив-
эффективным лекарством, обеспечивающим полное излечение от
вредного воздействия ошибок, если это излечение вообще
возможно, и мы этим лекарством научились пользоваться.
Внимательный читатель мог бы возразить, что все изложе-
изложение было посвящено только одномерным задачам. Однако
ни качественная картина влияния ошибок, ни оба опи-
описанных способа борьбы с ними принципиально не изменятся
при переходе к многомерным градиентным или постоянно-
шаговым схемам *).
Итак, за два параграфа мы в основном расправились с не-
неприятностями, возникающими при использовании итера-
итеративных схем поиска. Но...
*) О методике уточнения оценки частных производных при исполь-
использовании дополнительных измерений будет говориться в § 14.
§ 11
ПЯТЬ СПОСОБОВ
ОБЪЯТЬ НЕОБЪЯТНОЕ
(Многоэкстремальные
задачи)
Ни телеграммы нету,
ни письма,
Но есть игра случайности
слепой.
И если просто выйдешь
на перрон,
То кто-нибудь приедет
непременно.
В. Н е з в а л, Вильсоновский
вокзал
Долго прыгая по болоту, ля-
лягушка добралась до самой вы-
высокой кочки и, удобно устроив-
устроившись на ней, оглядела своими
близорукими лягушачьими гла-
глазами всю столь хорошо извест-
известную ей болотистую низменность.
Оглядела и возгордилась: еще
бы, ведь она забралась так вы-
высоко, знакомые лягушки пры-
прыгают где-то далеко внизу.
Но, дорогой читатель, не
возгордились ли и мы, овладев
методами локального поиска?
Ведь если локальный экстремум
не один и мы случайно не по-
попали на глобальный, лучший из
экстремумов, то не рано ли
гордиться, не окажется ли ло-
локальный экстремум просто вы-
высочайшей точкой на окрестном
болоте?
Если бы великий К- Прутков
занимался поиском, то в его
«Мыслях и афоризмах», несом-
несомненно, появилось бы и такое:
«Успокоившегося на локальном
экстремуме смело уподоблю бли-
близорукой лягушке, гордой своею
кочкой».
Справедливо, однако, и то,
что это изречение лишь гипоте-
гипотетическое, а в опубликованных
«Мыслях и афоризмах» содер-
содержится куда более категориче-
категорическое: «Плюнь тому в глаза, кто
скажет, что можно объять не-
необъятное!» И мы ясно понимаем,
что если функция цели может
вести себя совершенно произ-
произвольно, то попытка поиска ее
экстремума и есть попытка
объять необъятное.
164
Оглянемся на минуту назад и вспомним историю наших
попыток. Выдвинув гипотезу о гладкости функции, мы
сначала предположили, что сможем обойти трудности.
Число вариантов, которые оказалось необходимо сравни-
сравнивать для оценки экстремума с любой заданной точностью,
стало конечным. Но, увы, при ближайшем рассмотрении
многомерных задач и это число представилось столь же
необъятным.
Тогда мы просто махнули рукой на общие проблемы поис-
поиска и вплотную занялись локальными, достигнув значитель-
значительных успехов. Может быть, на этом и стоило поставить точку,
но оскорбительное «не уподобляйся!» явно мешает успоко-
успокоиться. Ведь изучение локальных методов было полезным
не только само по себе, оно улучшило и все наше понимание
возможностей поиска, открыло много новых идей: изучение
свойств функции в самом процессе поиска, применение
интерполяции и экстраполяции, прогноза, наконец, ввело
нас в «странный» мир случайностей.
Попытаемся же использовать эти новые идеи и для
решения общей, глобальной проблемы, не питая, впрочем,
излишне больших надежд, ибо изречение Козьмы Пруткова,
несомненно, справедливо.
Возможностей для использования достаточно много,
и они весьма разнообразны, но в большинстве из них ис-
используется один и тот же центральный прием — введение
случайного шага,— уже знакомый нам по борьбе с овра-
оврагами. Там он использовался только в начальной стадии
поиска. Здесь же мы попытаемся использовать этот прием
неоднократно.
Чтобы не запутаться в многообразии, расположим все
схемы в некотором порядке.
а) Совершенно случайный выбор. Начало рассказа об
этой схеме будет тем же, что и для локальных схем: пусть
выбрана произвольная точка Ао и в ней измерено или вы-
вычислено значение функции цели. Обозначим его /0 и за-
запомним, равно как и координаты точки. Словом, все как
обычно. Но дальше мы резко изменим своим принципам:
никакого «ощупывания» окрестности, ее изучения! Новую
точку А! выбираем не в окрестности Ах,-, а снова совершенно
произвольно. Измерим значение в Лх. Оно равно /х. Если
оно лучше, то его и запомним, а прошлое — выкинем из
памяти. Если же хуже, то и помнить об A j не стоит. Затем
снова — произвольный выбор, снова измерение и запомина-
165
ние лучшего результата. Ясно, что, выбирая каждый раз
точку произвольно, мы имеем шансы наткнуться и на самую
лучшую точку. «Но, позвольте,— воскликнет возмущен-
возмущенный читатель,— это же просто перебор!» — Да, конечно,
это перебор, но перебор случайный, ибо произвольный
выбор каждой точки и означает, что ее координаты назна-
назначаются равномерно *) случайным выбором из всех допусти-
допустимых в пределах области поиска значений. Разумно, однако,
спросить, есть ли польза в переходе от перебора на сетке
к случайному перебору. К сожалению, определенного от-
ответа мы дать не можем. С одной стороны, при переборе
на сетке мы тоже в некоторой степени произвольно назна-
назначали исходную точку и порядок перебора, развертывания
процесса. Неудачный начальный выбор может обречь на
неудачу и весь процесс, ибо в отпущенное нам ограничен-
ограниченное время мы успеем изучить лишь малую часть области
поиска. Здесь же при случайном переборе мы испытываем
удачу не единожды, а при каждом очередном замере. С дру-
другой стороны, можно выбрать очень грубую сетку и, успев
перебрать все значения на ней, получить, зная степень
возможной изменчивости, четкую оценку величины экстре-
экстремума. Впрочем, и при случайном переборе такая оценка
может быть дана, хотя и не четкая, а с привлечением слова
«вероятность».
Пожалуй, не стоит устраивать серьезный диспут между
этими схемами: уж очень обе они слабо используют какие-
нибудь идеи. Перейдем лучше к другой схеме.
б) Случайный выбор с промежуточными спусками. Снова
возьмем случайную точку Ло, но не будем сразу бросаться
в крайности, а организуем локальный процесс спуска из
нее**) и будем спускаться вплоть до остановки в точке Во —
одной из локально экстремальных точек, где значение
функции равно /0- Запомним его и координаты Во. Выбе-
Выберем новую точку А! случайно и произведем из нее спуск
в Вг. Если достигнутое в Bt значение Д лучше /0, то забу-
забудем прежнее, удержим в памяти только /ч и координаты В%.
Если этого нет, то сочтем случайный выбор Аг неудачным
и забудем его результаты, оставив в памяти прежнее зна-
*) См § 8.
**) Некоторые соображения о выборе типа локального поиска уже
высказывались в § 8. Рассуждения, которые проводятся здесь, естествен-
естественно, относятся к любой схеме, лишь бы она за разумное время приводила
в окрестность локального экстремума.
166
чение /о. Затем снова произведем случайный выбор, снова
спуск и т. д. Каждый этап состоит из случайного шага и ло-
локального поиска. Найденное в конце каждого этапа зна-
значение запоминается, если оно лучше предшествующих *).
Процедура, как говорят, монотонна: запоминаемые
значения функции не могут ухудшаться. Если функция
ведет себя не слишком безобразно, то можно предположить,
что по истечении достаточно большого числа этапов мы
побываем во всех локальных экстремумах и доберемся до
наилучшего из них. В принципе никакое конечное число
этапов не дает гарантии полного успеха, но ведь время
поиска практически ограничено, и обычно исследователи
остаются удовлетворенными результатом, если 5-—10 пос-
последних попыток не привели к его улучшению.
Известный норвежский ученый Р. Фриш, один из пио-
пионеров применения математики в экономической науке, назы-
называет этот метод «сотрудничеством кенгуру и мыши». Кен-
Кенгуру подслеповат, но может делать большие прыжки. К тому
же у него, как всем хорошо известно, на животе имеется
очень удобный карман. Вот кенгуру, отправляясь по го-
горам — по долам на поиски удобной впадины, и сажает себе
в карман мышку. Прыгнет кенгуру наугад, выпустит мышь
из кармана, та доберется до ближайшей подходящей ямки
и зовет кенгуру: полюбуйся, мол, лучше ли эта ямка преж-
прежней. Не нравится, тогда бери меня в карман и прыгай
снова. Так идет путешествие-поиск.
Но на мышиные хлопоты — локальный поиск — уходит
каждый раз достаточно много времени. Может быть, стоит
вообще отказаться от принудительного разделения: малые
шаги регулярны, большие — случайны? Рассмотрим дру-
другую возможность.
?) Случайный выбор с предпочтением по расстоянию.
После измерения в начальной точке Ао значения /0 сделаем
из э~той точки шаг в произвольном, равномерно случайно
выбранном направлении. Длину шага также будем выби-
выбирать случайно, но при случайном выборе длины не будем
безразличны, а установим «шкалу предпочтений»: малые
шаги будем делать с большей вероятностью, большие шаги —
с меньшей вероятностью. Например, можно построить
шкалу предпочтений так: шаг длиной Л выбирается с веро-
*) Эта схема, очевидно, очень близка к «овражному методу» из
§9, rio последовательные точки, из которых производится спуск, здесь
ничем не связаны.
167
ятностью 1/2, длиной 2А — с вероятностью A/2J и вообще
длиной kA — с вероятностью A/2)*. Чтобы была возмож-
возможность попасть в любую точку области, договоримся, что
наибольшая допустимая длина шага Nk не меньше наи-
наибольшего расстояния до границы области поиска *).
Используем теперь случайный механизм, в который за-
заложена такая шкала предпочтений. Выбранное им значение
длины шага вместе с выбором направления задает точку Во,
где и производится новое измерение. Если измеренное в ней
значение лучше исходного, то шаг считается удачным. Это
значение запоминается, и Во принимается за новую опорную
точку Аи из которой и делается новый случайный шаг.
Новый выбор точки, случайный, но все же тяготеющий —
в силу наличия шкалы предпочтений — к окрестности В„,
совпадающей с At. Если же значение в В,, хуже, чем в Ао,
то новый шаг делается опять-таки из А „. Тем самым избе-
избегается тяготение к неудачной точке.
Затем процедура, как обычно, повторяется с запомина-
запоминанием лучшего из найденных значений функции цели. Такая
схема сохраняет и достоинства случайного перебора, и склон-
склонность к просмотру малой окрестности, свойственную ло-
локальным методам. Внешне она мало отличается от уже изу-
изученной нами локальной схемы случайного поиска, но важная
деталь — возможность больших шатов — придает ей прин-
принципиально новый универсальный характер.
Действительно, предположим, что точка А„ является
локальным экстремумом, отличающимся от глобального.
Тогда малые шаги всегда будут неудачными, но после
каждой неудачи мы возвращаемся в исходную точку, а по-
поскольку вероятность шага в любую точку области поиска
отлична от нуля, мы рано или поздно вырвемся из притяже-
притяжения локального экстремума и попадем в лучшее положение.
Введение свойств притяжения, предпочтения к достигну-
достигнутому характеризует уже знакомую локальную идею: лучшее
может быть только вблизи хорошего. Допущение же боль-
больших шагов революционизирует эту несколько консерва-
консервативную концепцию и делает законным поиск лучшего
в условиях, резко отличных от уже сложившихся хороших.
*) Вероятность наибольшего шага N\ надо взять равной (
т. е. равной вероятности второго по величине шага длиной (N—1)Д.
Тогда совокупная вероятность всех вариантов окажется равной едини-
единице, а случайный механизм, реализующий такую шкалу предпочтений,
есть просто Л'-кратное подбрасывание монеты (см. § 8).
168
Это сочетание эволюционного (локального) и револю-
революционного (глобального) подходов и делает такой метод слу-
случайного поиска универсальным. Ясно, что его применение
в принципе не требует даже непрерывности (гладкости)
функции цели. Но (пришло время, как всегда, сказать, но...)
именно эта универсальность является слабым местом метода:
он почти не учитывает особенностей данной функции, очень
слабо использует накопленный в ходе измерений опыт,
знания о характере ее поведения.
Поэтому важно рассмотреть и такие методы, которые,
сохраняя универсальность, несут в себе идею «обуче-
«обучения».
г) Случайный выбор с предпочтением по расстоянию и
направлению. Все методы, относящиеся к этой группе,
представляют собой, по существу, итеративные схемы слу-
случайного поиска, которые, уже были рассмотрены в § 8, но,
в отличие от локальных вариантов, допускают возможность
шага из любой текущей точки в любую точку области поиска.
Пусть в результате удачного шага мы перешли из точки
At_x в точку At. Теперь стоит задача выбора точки для
нового эксперимента. Мы уже рассмотрели три подхода:
а) новое измерение делается в точке, выбранной совершенно
случайно, независимо от прежней; б) новый случайный вы-
выбор делается также, но предваряется регулярной процеду-
процедурой локального поиска; в) случайный выбор делается
сразу, но с предпочтением к окрестности прежней точки.
Естественно, возможен и подход г): случайный выбор
делается с предпочтением и к окрестности предшествующей
удачной точки At, и к направлению, которое привело в эту
удачную точку, т. е. направлению от At_± в At. При этом,
конечно, возможно учитывать и степень предшествующей
удачи, т. е. величину приращения функции цели при пере-
переходе из Лг_! в At.
Опишем подробнее один из возможных вариантов такого
учета «предыстории» поиска.
Примем, что шаг из точки At должен состоять из двух
частей: первой — регулярной, второй — случайной. Регу-
Регулярная часть шага делается по лучу, продолжающему от-
отрезок, соединяющий At_1 и At, причем его длина пропорцио-
пропорциональна разности между ft-l и ft. Случайная же часть строит-
строится так же, как и в схеме в).
Таким образом, центром притяжения становится не
точка At, а конец регулярной части шага.
169
Схема может быть усовершенствована введением масш-
масштабных коэффициентов, изменяющихся в зависимости от
удачи или неудачи в предшествующих попытках. Прин-
Принцип управления коэффициентами естественный: если пред-
предшествующий шаг удачен, то можно усилить влияние регу-
регулярной части, еще больше «доверившись» найденному
удачному направлению; если же шаг неудачен, то в после-
последующем, напротив, должна быть относительно усилена слу-
случайная часть.
Второй способ усовершенствования схемы заключается
в том, чтобы строить регулярную часть, используя сведе-
сведения не только о последнем участке траектории поиска,
т. е. направлении отрезка A,_lAt, но и о более ранней
«предыстории». При этом направление регулярного шага
получается усреднением направлений предшествующих ша-
шагов с коэффициентами, обеспечивающими относительное
превосходство «нового» над «старым».
Каждый из перечисленных приемов, в сущности, содер-
содержит целое множество различных схем, отличающихся выбо-
выбором закона вероятностного предпочтения, способом управ-
управления коэффициентами при ре-
регулярной и случайной части,
темпом забывания прошлого.
Разнообразие возможностей
обеспечивает большую гибкость
метода, который сейчас, по-види-
по-видимому, является самым многообе-
многообещающим методом решения задач
поиска глобального экстремума.
Вместе с тем ясно, что часто
он является слишком дорогим
лекарством от бед близоруко-
близорукости.
Представим себе ситуацию,
при которой поиск привел в
точку At, лежащую недалеко
от глобального экстремума Э
(рис. 11.1). Регулярная часть приведет в точку At+1. Слу-
Случайный шаг будет сделан в произвольном направлении
с тяготением к At+l. Вероятность удачи при этом неве-
невелика: ведь надо попасть в часть плоскости, ограниченную
линией уровня, на которой лежит исходная точка Ах. Но
Рис. И.1.
170
в случае неудачи регулярная часть уменьшится, а случай-
случайная, как было договорено, возрастет, точнее, возрастет
вероятность попасть в более удаленную от центра притяже-
притяжения точку. Тем самым вероятность удачи не увеличится,
а скорее упадет. Вместе с тем любая чисто регулярная
процедура типа градиентной привела бы здесь к цели очень
быстро. Напомним, что методы поиска вообще не отличаются
особыми достоинствами в последней фазе поиска при не-
непосредственном приближении к экстремуму.
Но, с другой стороны, все наши рассуждения и оценки
относились к случаю, когда экстремум, вблизи которого
мы оказались, действительно глобальный, а не локальный.
Ясно теперь, что допущение случайного элемента — это
плата за нелокальность, и плату стоит вносить только в том
случае, если есть полная убежденность в том, что встреча
с главной неприятностью — обилием локальных экстре-
экстремумов — неизбежна.
Наконец, еще об одном способе «объять необъятное»,
являющемся усовершенствованием самого простого спо-
способа — случайного выбора без предпочтения.
Разделим область поиска на две равновеликие части,
обозначенное 0 и 1 (рис. 11.2, а), совершенно случайно вы-
выберем точку из области 0 и найдем в ней значение /0. Затем
0 *fa
1 .f,
00
01
' X
о
6)
Рис. 11.2.
00
. OlO
v:
i
также совершенно случайно выберем точку из области 1.
Пусть значение функции в ней равно Д. Сравним теперь
fo и Д. Если /0>fi, то область 0 разделим на две части
с равной площадью и назовем их 00 и 01. Если /i>/0, то
область 1 разделим пополам *) на области 10 и 11. Если
fi—fo, то оставим все по-прежнему. Пусть для определен-
определенности оказалось^ что /o>/i и разбиение произведено так,
как это показано на рис. 11.2, б.
*) Деление «пополам», на две равновеликие области,— операция
неоднозначная и совсем не простая.
171
Проведем теперь следующий цикл измерений: в каждой
из выделенных областей совершенно случайно выберем
по одной точке для оценки значений. Область, в которой
оказалась наилучшая точка (с учетом измерений в первом
цикле), снова разобьем пополам, а после разбиения в каж-
каждой из областей вновь выберем по одной точке и т. д.
Суть процедуры ясна: в каждом новом цикле число точек
измерения возрастает на одну и притом этот «прирост»
приходится на ту область, где в предшествующем цикле
обнаружена лучшая точка.
Тем самым обеспечивается, что
1) не существует такой точки в области поиска, которая
в очередном цикле не могла бы оказаться точкой из-
измерения, и
2) каждый раз возрастает плотность постановки изме-
измерений в той области, которая были признана наилучшей на
основе предшествующих измерений.
Первое условие универсально. Оно гарантирует гло-
глобальность поиска: в принципе не допускается возможность
заведомого пропуска какой-либо точки, а следовательно, и
точки экстремума. Этому условию удовлетворяют все ме-
методы, описанные в данном параграфе, и, конечно, не удов-
удовлетворяют локальные схемы поиска. Второе условие харак-
характеризует принятый в данной схеме способ «обучения» слу-
случайного поиска, способ учета предыстории при выборе
очередной группы измерений. В соответствии с ним опи-
описанную схему и другие аналогичные схемы обычно называют
методом случайного выбора с управлением плотностью изме-
измерений *).
Итак, мы уже познакомились с пятью способами «объять
необъятное».
Каждый из них (может быть, кроме первого, совсем
«тупого») обладает своими достоинствами. Все они молоды,
достаточно гибки и, что очень важно, недостаточно «обстре-
«обстреляны» в поисковых соревнованиях.
*) Более распространен термин: оценка апостериорной плотности
вероятностей. Действительно, до первого цикла нет никаких оснований
для предпочтения какой-либо части области поиска, так что исходное,
априорное распределение вероятностей выбора естественно брать равно-
равномерным (совершенно случайный выбор), но после, апостериори, сравне-
сравнения результатов измерения выявляется предпочтение, так что может
быть построено некоторое апостериорное распределение вероятностей,
отличное от равномерного. Разумных способов такого построения много.
172
Ведь лишь сравнительно недавно стала актуальной сама
проблема глобального поиска, и опыт ее практического
решения совсем невелик.
Впрочем, было бы нечестно скрывать от читателя, что
некоторые ученые придерживаются совсем другой точки
зрения.
Они считают, что глобальный поиск столь же древен,
как сама жизнь. «Действительно,— утверждают они,—
посмотрите, в чем состоит основная схема эволюции живого?
Каждый вид представляет собой эксперимент, который
ставит великий искатель — Природа. Возникающие мута-
мутации — это случайные шаги, совершаемые в поисках луч-
лучших, более приспособленных организмов. Утверждение или
гибель мутантов в процессе борьбы за существование —
это сравнение результатов и выбор лучшего из них. Весьма
редкие революционные изменения, когда возникают со-
совершенно новые виды, превосходящие старые,— это редкие
удачные следствия больших случайных шагов».
Подобные аналогии очень привлекательны, но все же
поверхностны. Поверхностны и потому, что Природа совсем
не годится в организаторы поиска — у нее явно нет четко
поставленной цели, и потому, что виды существуют не
отдельно, а в сложном взаимодействии.
В природе сохраняется одновременно множество ре-
результатов экспериментов, каждый из которых удачен и не-
неудачен по-своему. Эволюция совершается при многообразии
внешних условий, существующих на планете в каждый
данный момент, и при еще большем разнообразии условий,
существовавших на ней в прошлом.
Так что сопоставление эволюции и глобального поиска,
пожалуй, только удачная метафора: глобальный поиск —
целиком творение человеческого разума, и притом еще
очень юное *).
*) Учитывая, что сведения по теории вероятностей были даны в
весьма малом объеме, автор не решился приводить здесь какие-либо
формальные описания процедур поиска. Интересующийся читатель, име-
имеющий достаточную вероятностную подготовку, может найти их, напри-
например, в книгах [8, 15].
§12
НАИЛУЧШИЙ ПОИСН
НАИЛУЧШЕГО
(Оптимальный
одномерный поиск)
...Сняты
покровы с жизни. В резком
свете мир прост! Ужасней
простоты нет ничего на этом
свбте.
Е. Винокуров
Побывав в горах, жители
равнины обычно приходят в пол-
полный восторг: «Ах, какие там
высочайшие вершины, какие глу-
глубочайшие долины! Заберешься
на вершину — слепнешь от яр-
ярчайшего солнца, опустишься
в долину — поглощает тьма
мрачнейшая. Ах, как все это
потрясающе!»
Но и самому страстному лю-
любителю гор знакомо то подлинно
радостное ощущение, которое ох-
охватывает его после возвращения
из горного хаоса в родные пе-
пенаты, столь простые и близкие.
После блуждания по много-
мерностям и многоэкстремаль-
ностям и мы вернемся к внешне
самой простой, а потому к самой
богатой задаче — одномерному
поиску, чтобы обрести в ней
и прежнюю ясность, и новые
идеи.
И из одномерных задач вы-
выберем самую простую и хорошо
организованную. Пусть область
поиска ограничена отрезком от
хн до хв длиной La *). Заранее
известно, что в этой области
только один локальный макси-
максимум, он же, следовательно, и
глобальный.
Более того, график функции
(рис. 12.1) не имеет горизон-
горизонтальных участков, хотя воз-
возможны излом и даже резкие
скачки. Координата максимума
хт, конечно, заранее не извест-
известна, но зато в любой точке х
*) Ясно, что всегда можно выб-
выбрать начало координат в точке хя.
Тогда *в=0, xB—L0
174
можно сделать измерение и оно абсолютно точно, без вся-
всяких ошибок даст значение / (х).
Конечно, такая постановка идеализирована, упрощает
реальную ситуацию, но зато в ней все до предела ясно.
Читатель вправе спросить, стоит ли вообще заниматься
такой задачей? Ведь в нашем распоряжении столько методов
а)
б)
ее решения: и поиск на сетке, и пропорциональный поиск,
и его усовершенствование — метод Ньютона. Целых два
параграфа мы разбирались в них, изучали сравнительные
достоинства и недостатки.
И все же стоит, ибо, переходя от хорошего метода к луч-
лучшему, мы все же не ответили на вопрос, какой метод самый
лучший и есть ли вообще оптимальный способ поиска экстре-
экстремума, а эта проблема и для самого простого случая явля-
является ужасно сложной.
Прежде всего надо договориться, что считать оптималь-
оптимальным способом, поскольку всякая задача оптимизации долж-
должна начинаться с формулировки функции цели, критерия
качества.
В сущности, этот критерий хотя явно и не фигурировал,
но всегда имелся в виду: мы считали лучшим тот метод,
который потребует меньшего числа измерений для обнару-
обнаружения экстремума.
Если говорить точнее, то в строгом обнаружении экстре-
экстремума необходимости не было: считалось достаточным найти
точку, расстояние которой до экстремума не превышало
достаточно малое число А.
175
Действие любых методов поиска можно, следовательно,
трактовать так: вначале, до производства измерений, поло-
положение экстремума неопределенно, он может находиться
в любой точке области поиска, но в ходе процесса мы прове-
проверяем различные точки и, отбрасывая их, сужаем область,
в которой может в действительности находиться искомый
экстремум.
Поэтому оптимальным можно считать такой метод, кото-
который либо
A) позволяет сузить исходную область неопределенности
длиной /о до области заданной длины А в результате мини-
минимального числа измерений, либо
Б) позволяет сузить область /<, при заданном числе из-
измерений N до наименьших возможных размеров lN.
Обе формулировки задачи разумны, но первая (А) есте-
естественнее, когда ищущий может идти на любые затраты,
лишь бы добиться желаемой точности, но хочет максималь-
максимальной экономии средств, а вторая (Б) — когда ищущий зара-
заранее ограничен в средствах, но хочет использовать свои
ограниченные возможности наилучшим образом. Попытаем-
Попытаемся описать строгое решение задачи (Б) и дать приближен-
приближенные, но практически эффективные методы решения задачи
(А). Но, прежде чем приступить к этому описанию, надо
уточнить еще одно обстоятельство. Мы уже хорошо знаем,
что успех поиска самым существенным образом зависит от
конкретного вида целевой функции. Класс функций, кото-
которыми мы ограничились (их обычно называют унимодаль-
унимодальными, или одногорбыми), все же достаточно широк: предъ-
предъявленным требованиям удовлетворяют кривые очень
разного вида (рис. 12.1, а, б).
Для того чтобы добиться четкой постановки, первый
исследователь проблемы (Б), американский ученый Кифер,
ввел в ее формулировку дополнительное требование: размер
области неопределенности lN должен быть гарантирован
для любой одногорбой функции, какую бы ни подсунула нам
для исследования зловредная Природа. Кифер же предло-
предложил изменить и сам характер задачи (Б), придав ей другой,
но, по существу, равносильный смысл:
B) Пусть возможно произвести только N измерений,
причем в результате этих измерений требуется, чтобы об-
область неопределенности, в которой может располагаться
максимум, имела длину не больше, чем единица. Необхо-
Необходимо указать такое число F^, чтобы это было осуществимо
176
для любой одногорбой функции, заданной на отрезке,
длина которого меньше FN, и дать правило расстановки
точек измерений, позволяющее всегда добиться цели.
Ясно, что если задача (В) решена, то тем самым решится
и задача (Б). Действительно, для этого потребуется лишь
изменить масштаб: принять единицу измерения в а раз
больше старой при а—~. Тогда в новых единицах исход-
исходный отрезок будет иметь длину — = FN.
Но, будучи равносильной, задача (В) имеет определен-
определенные математические преимущества. Оказывается, что числа
FN подчиняются очень простой закономерности:
¦¦ N~ FN-1 ~Ь FN- 2 >
т. е. каждое число равно сумме двух предыдущих, причем
F0=F 1= 1, так что эти числа легко подсчитать для любого N:
и так далее *).
Числа F^ растут сначала медленно, но чем больше N,
тем их рост становится все стремительней и уже jF20 превы-
превышает 10 000. Значит, исходный отрезок неопределенности
с помощью всего 20 измерений можно свести до 0,01% его
первоначальной длины!
Правда, как это сделать, как запланировать постановку
точек измерения, мы еще не знаем. Кроме того, мы еще не
доказали и самого того факта, что длины отрезка FN подчи-
подчиняются основной закономерности.
Попытаемся сначала провести это доказательство.
Будем использовать метод математической индукции,
но в довольно хитром варианте.
Прежде всего ясно, что если не делать ни одного измере-
измерения (Л/=0) или сделать только одно измерение (N—\), то
неопределенность не исчезает, т. е. если исходный отрезок
имел длину больше единицы, то он таким и останется. Сле-
Следовательно, Fo = jFj = 1.
*) Эта замечательная последовательность целых чисел была по-
построена еще в XIII веке итальянским математиком Фибоначчи в связи
с совершенно другой задачей. Об истории этого открытия и многочислен-
многочисленных полезных свойствах чисел Fjy, чисел Фибоначчи, можно прочесть
в прекрасно написанной книжке Н. Н. Воробьева [7].
177
Изучим теперь случай, когда в нашем распоряжении
только два измерения (#—2). Случай этот, как мы увидим
дальше, заслуживает наиболее пристального внимания.
Итак, пусть исходный отрезок имеет длину L (рис. 12.2).
Произведем измерения в двух пока произвольных точках
f(x)
i
i i
О х"'х<2> L
ffx)-
ffx)
О х">
ffx)
-9—-9
\
0 x«>x<2> L
6)
Рис. 12.2.
xa) и хB)^ Причем xvi)>x{1) *). Как всегда, возможны три
варианта исходов (рис. 12.2, с, б, в).
а) / (*A>) > / Ю, б) / (хA>) < / (х<2>), в) / (*A>) = / (хB>).
Проведем анализ каждого из вариантов, памятуя о том, что
исследуемая функция обязательно одногорбая.
Вариант а) возможен, если: ai) обе точки оказались на
правом склоне / (х), т. е. правее экстремума, либо а2)
точки расположились на разных склонах, по обе стороны
от экстремума.
Третья гипотетическая ситуация — обе точки на левом
склоне — при таком результате Измерений, очевидно, не-
невозможна. Вместе с тем ясно, что при а^ экстремум может
быть только на отрезке от 0 до хA), а при а2) он должен
быть на отрезке от х{1) до хB). Что произошло в действи-
действительности, мы не можем сказать, но по крайней мере оче-
очевидно: если в результате измерений оказалось
*) Или, наоборот, хA)>хB)— ведь порядок нумерации здесь произ-
произволен.
178
то координата максимума не может располагаться правее
х{2). Следовательно, при таком исходе измерений размер
области неопределенности стал равен х{2).
Аналогичные рассуждения показывают, что при исходе
типа б) экстремум не может оказаться левее хп). Следо-
Следовательно, длина отрезка неопределенности остается равной
L — х{1). Наконец, исход типа в) может произойти только,
если точки хA) и х{2у расположились по обе стороны от мак-
максимума (ведь на склонах горизонтальных участков быть
не может). Значит, остается зона неопределенности длиной
хB) — хA).
Итак, можно составить табличку, где для каждого ва-
варианта исходов измерений указывается размер остающейся
области неопределенности.
а
б
в
ха)—хп)
Но, независимо от того, какой вариант действительно
осуществится, каков будет конкретный вид исследуемой
функции, нам надо гарантировать, чтобы этот размер был
не больше, чем единица. Следовательно, точки хA) и хB)
должны быть выбраны так, чтобы одновременно выполня-
выполнялись все три условия:
хB)<1, L — хA><1, хB)—хA><1.
Правда, последнее условие всегда выполняется, если вы-
выполнено первое, и его можно отбросить, так что остаются
два:
1) х<2><1, 2) LsSl+x<l\
которые надо дополнить естественными ограничениями
0<xA)<L A), 0<*B)<L B), x<2)>x(l> C).
Рассмотрим координатную плоскость (рис. 12.3). По оси
абсцисс будем откладывать координату первой точки изме-
измерения, х{1), по оси ординат — второй, хB). Любая точка на
плоскости соответствует определенному сочетанию этих
координат, но сразу ясно, что, в силу ограничений A) и C),
179
нас устраивают только точки, лежащие в заштрихованном
треугольнике, причем точки на его гипотенузе недопустимы
(если хA)=хB), то обе точки сольются в одну, и никакой
информации мы не извле-
извлечем), следовательно, х
Рис. 12.3.
A)
должно быть меньше 1.
С другой стороны, в си-
силу ограничения B) длина
исходного отрезка не пре-
превышает' 1+хA).
Значит, L не больше,
чем 2, и может быть сдела-
сделана неограниченно близкой
к этой величине, если взять
хB)=1, а х{1) сколь угодно
близкой к 1, но не совпадающей с х<2> точно *).
Итак, два — это верхняя граница возможной длины
исходного отрезка неопределенности, которая может быть
сокращена до единичной за N измерений, если N=2. Тем
самым мы доказали, что
F — 2
но F0=Fl=l, следовательно,
F — F 4-F
Таким образом, гипотеза о том, что
F JV = -» N
оказалась оправданной при Af=2. Остается применить
индукцию по N, для того чтобы доказать, что она справед-
справедлива всегда.
Следуя классическому стандарту, предположим, что
для k=2, 3,..., jV— 1, и докажем верность этого утвержде-
утверждения при k=N.
Рассмотрим вновь отрезок длины L и подумаем, как рас-
расставить первые два измерения из общего числа N, которые
предстоит сделать для сведения L к отрезку, длина которого
не больше 1. Договоримся, что L не настолько велико,
*) Исходная гипотеза о возможности абсолютно точных измерений
допускает сравнение результатов в сколь угодно близких точках.
180
чтобы этого нельзя было сделать при разумном планиро-
планировании измерений.
Разумность, конечно, надо проявлять с самого начала, с
первых двух измерений. Их надо поставить так, чтобы не
испортить дальнейших возможностей.
Обозначим координаты этих первых двух измерений
через хA) и л;B) и опять рассмотрим все возможные варианты
исходов. Возможен вариант / (хA))>/ (х{2)), показанный
на рис. 12.2, а. Ясно, что тогда мы не имеем права выби-
выбирать x{2)>FN_1. Действительно, область возможного
расположения максимума сократилась до отрезка длины хB),
внутри которого в точке хA) уже сделано одно измерение.
На нем можно поставить еще jV — 2 оставшихся в нашем
распоряжении, но за N — 1 измерений невозможно сокра-
сократить до единичной длины отрезок, больший FN_lt— ведь
именно такой, по определению, и имеет смысл это число.
Значит, для того чтобы окончательно не испортить возмож-
возможности на будущее, требуется выбрать второе измерение
так, чтобы выполнялось условие x{i)^FN_1. Кроме того,
надо учесть, что не исключена ситуация (рис. 12.2, а), когда
максимум лежит на отрезке между 0 и хA), внутри которого
мы не сделали ни одного измерения. Тогда этот отрезок
придется доводить до единичной длины с помощью остав-
оставшихся N — 2 измерений. Следовательно, необходимо обес-
обеспечить, ЧТобЫ Х<1)^^дг_2.
С другой стороны, возможен вариант б), когда / (хA))<
<Cf (x{2)), и достижение максимума возможно где-то на
отрезке длиной L — х{1) (рис. 12.2,6). Рассуждая ана-
аналогично прежнему, нетрудно установить, что в этой ситуа-
ситуации придется ограничить х{1) условием L — xil)^.FN_1.
Но ведь возможны все перечисленные ситуации *),
следовательно, для того чтобы застраховать себя на буду-
будущее, надо потребовать при выборе координат исходных двух
точек одновременного выполнения всех перечисленных
условий:
Из этих условий вытекает, что они могут быть выдержаны
только, если
1
Рассмотрение случая в) не добавит ничего нового.
181
Следовательно, наибольшая возможная длина исходного
отрезка неопределенности, который может быть сокращен
с помощью N измерений до отрезка единичной длины, не
превысит FN_1 +FN_2, иначе говоря,
При этом координаты исходных измерений должны, в част-
частности, удовлетворять условиям
Располагая этими полезными сведениями, рассмотрим
теперь (рис. 12.4) отрезок длиной
L-LN— ^1 —у
где е — произвольно малое положительное число, и рас-
расставим точки первых двух измерений так:
( F \
B) /1 с- \ с
— [ l — "Jj rN-l>
т. е. симметрично, на равных расстояниях от концов. При
этом мы удовлетворили всем условиям, гарантирующим
Рис 12 4.
окончательный успех, и вместе с тем показали, что это
может быть сделано, как бы ни была длина L исходного
отрезка близка к FN_1+FN_2. Но FN, по определению,
есть такая величина, что любой отрезок длиной меньше FN
заведомо может быть приведен к единичному. Таким обра-
образом, окончательно получаем, что
182
Тем самым индуктивное доказательство завершено, ибо
справедливость этого соотношения при N—2 мы уже уста-
установили. Самое главное, что в ходе доказательства мы уста-
установили и правило, наилучшую методику поиска. Опишем
его подробнее.
Взяв исходный отрезок длиной 1Л = ( 1 — у] FN, где е
может быть сколь угодно малым (практически малость е
ограничена только различимостью результатов измерений),
расставим первые две точки симметрично на расстоянии
( 1—Y) ^л'-г от К°ВД°В- Из условия, что FN-^=FN_1 +
+FN_Z, и рис. 12.5, а, б видно, что при любых вариантах
ИКг Hfcw
S)
/-в
2-е
Рис. 12.5.
исходов измерении отрезок неопределенности сократится
до длины
стоянии
_1 = f 1—J
v-i> внутри которого на рас-
расI—k)Fn_3 от правого или левого конца нахо-
находится точка, где уже произведено измерение и получен
результат, лучший из двух найденных. Проведя симмет-
симметрично этому измерению (в отмеченной на рис. 12.5, а,б
точке) третье измерение, добьемся сокращения до Ь#_:г=
= ( 1 —Y) Fn-z- Сохраняя тот же порядок действия, дой-
дойдем после (N — 1)-го измерения до ситуации, когда остается
183
отрезок длиной
.,«A-4 U= П-4
-2=2 — в с уже
проведенным внутри него измерением, давшим наилучшее
из всех предшествующих значение функции (рис. 12.5, е).
Последнее, N-e, измерение фиксирует остающийся отрезок
единичной длины, на котором только и может располагаться
координата максимума, и дает оценку снизу максимального
значения функции цели, поскольку сохранилось наилучшее
из всех ранее измеренных значений.
Напомним еще раз, что если исходный размер области
поиска равен какому-либо числу h, то соответствующим
изменением масштаба — введением новой единицы, большей
в «=¦—- раз, можно осуществить приведение к требуемому
для реализации алгоритма. Точнее, надо было бы взять
и
,но ввиду предполагаемой малости е это
<х=-
N
1
почти не изменит результата. Оставшийся после N изме-
измерений отрезок неопределенности в исходных единицах бу-
будет иметь длину lN=a. Для приведения к желаемому масш-
масштабу необходимо, конечно, знать числа FN. Подсчитаем их
заранее до JV—20 и запишем в таблицу. В этой же
таблице приведем величины отношений последовательных
чисел FN/FN_lt характеризующие выигрыш в сокраще-
сокращении отрезка неопределенности, если допустимое число
N
Fn
FnIFn-i
N
Fn
F nIF n -1
0
1
1
1
1,00
11
144
1,62
2
2
2,00
12
233
1,62
3
3
1,50
13
377
1,62
4
5
1,66
14
610
1,62
5
8
1,60
15
987
1,62
6
13
1,62
16
1597
1,62
7
21
1,62
17
2584
1,62
8
34
1,62
18
4181
1,62
9
55
1,62
19
6765
1,62
10
89
1,62
20
10 946
1,62
184
измерений увеличить на одно. Оказывается, что, сосчитанное
с точностью до трех знаков, это отношение, начиная с N=6,
становится равным 1,62 и далее, с ростом N, сохраняет
постоянное значение. Теоретический предел, к которому
стремится это отношение, равен
' + У5 =1,61803...
Это очень важный и полезный факт: ведь описанная наилуч-
наилучшая процедура поиска страдает одним практически сущест-
существенным недостатком — при ее реализации надо заранее
знать, каким числом измерений мы располагаем. А что,
если в ходе поиска выяснилось, что нужно сделать еще
несколько лишних измерений? Тогда, вообще говоря,
окажется, что весь предшествующий процесс надо было бы
пересмотреть, ибо оптимальная процедура для N-j-2 отли-
отличается по правилу постановки первых N измерений от
оптимальной процедуры для заранее заданного N.
Но посмотрим вновь на рис. 12.4 и 12.5. Из них сразу
явствует, что правила расстановки, в сущности, зависят лишь
от последовательных отношений ~—(k—N, N—1,...).
отношений общей длины отрезка на каждом этапе к рас-
расстоянию каждой из симметрично поставленных внутри
него точек измерения до правого и левого концов. Мы же
показали, что при больших числах k (k^6) это отношение
неизменно и приблизительно равно 1,62. Значит, если уже
сделано достаточно большое число измерений N и жела-
желательно добавить еще не меньше шести (а практически не
меньше трех) измерений, то можно считать всю предысто-
предысторию поиска оптимальной и для этой, большей совокупности
измерений.
Более того, возникает еще одна простая мысль: посколь-
поскольку оптимальный поиск, базирующийся на числах Фибоначчи,
дает на каждом шаге, достаточно удаленном от последнего,
сокращение отрезка неопределенности в постоянное число
раз, нельзя ли упростить процедуру, придерживаясь того
же принципа, но на всех шагах?
Покажем, что это возможно и совсем не сложно. Пусть
на отрезке длины L, где может размещаться координа-
координата максимума, сделаны два измерения в точках лA) и
хB). Тогда гарантированное сокращение отрезка равно
185
меньшему из чисел
Поставим точки симметрично, тогда оба этн числа будут
равны некоторой величине т (рис. 12.6, а):
ха>
или
х{2)—-
L L
При этом гарантируется, что в результате измерений длина
отрезка неопределенности уменьшится в т раз, т. е. до — ,
•^
О ГТТ***» л(*>
*> 6)
Рис. 12.6.
и внутри него останется одно измерение на расстоянии от
одного из концов, равном
Условимся выбирать т так, чтобы это расстояние было в т
раз меньше общей оставшейся длины, т. е. потребуем, чтобы
т удовлетворяло условию
L—\=-^ или т2 —т—1=0.
Тогда постановка нового измерения х{3) симметрично уже
имеющемуся, т. е. на расстоянии —; от другого конца (рис.
186
12.6, б, в), гарантирует уменьшение неопределенности вновь
в х раз. Очевидно, что эта процедура может повторяться
сколько угодно шагов и притом гарантирует уменьшение
на каждом шаге ровно в i раз. Остается только вычислить,
какое х удовлетворяет поставленному условию. Оно имеет
вид квадратного уравнения относительно искомого т и
имеет два корня
1 + УТ „ 1-^5"
2~~ и 2 '
Из них нас, конечно, интересует первый, положительный.
Но это ведь уже знакомое число — 1,62, которое характе-
характеризовало возможности оптимальной фибоначчиевой про-
процедуры при больших N. Итак, элементарно простое пра-
правило — каждый раз ставить измерения симметрично, на
расстоянии, равном 1/1,62«0,62 от концов остающегося
отрезка неопределенности,— при большом числе измере-
измерений, которое еще можно произвести, ведет себя не хуже
ученой оптимальной процедуры.
Даже если сохранять ее в силе до конца, когда остаю-
остающееся число измерений мало, проигрыш (по сравнению
с оптимальным поиском) получается незначительным.
За N измерений можно получить сокращение исходного
отрезка в (l,^)^ раз (первое измерение сокращения не
дает). Можно доказать, что это число никогда не отличается
от FN больше, чем на 23% (худший случай N—Щ, а при
больших N отличие составляет всего 17% *).
Будучи независимым от N, полученное правило, ко-
конечно, пригодно и как решение задачи (А), где число изме-
измерений заранее не фиксируется, а то, что оно мало отличается
по эффективности от оптимального при известном N, позво-
позволяет считать его приближенно оптимальным и в этом случае.
Само правило носит звучное название — метод золотого
сечения. Корни этого названия уходят в глубь веков, к зна-
знакомому всем школьникам великому эллинскому геометру
Евклиду. Ведь описанное правило поиска сводилось к по-
постановке измерения в точке, которая делит отрезок на две
части так, что отношение длины всего отрезка L к длине его
*) При этом правило лишено практического недостатка оптималь-
оптимальной процедуры, заключающегося в необходимости ставить последние
измерения на малом расстоянии друг от друга. Здесь расстояние всегда
2
Составляет 1=0,24 общей длины отрезка.
187
большей части равнялось отношению длины большей к дли-
длине меньшей:
L ?—хA>
Т
а задача о таком разделении отрезка (с помощью циркуля и
линейки!) поминается в «Началах» Евклида как задача
о «золотом сечении». (Не правда ли, свойство проблемы опти-
оптимального поиска — тревожить тени давно усопших и даже
не помышлявших о ней математиков — кажется почти мисти-
мистическим?)
Итак, пусть правило «золотого сечения» венчает наши
усилия в поисках оптимальных процедур поиска.
«Но,— может сказать разохотившийся читатель,— мы
ведь изучили только простейшую одномерную проблему, не
попытаться ли перейти к многомерным задачам, перенеся
и туда новые идеи?» Увы, такой путь, столь успешно прой-
пройденный при построении локальных методов поиска, здесь
оказывается почти полностью безнадежным. Впрочем, вдум-
вдумчивый читатель это, наверное, уже понял: все несчастье
в том, что любая точка на отрезке прямой делит его на две
части, а даже на плоскости одиночная точка, одиночное
измерение, ничего не разделяет. Поэтому и классификация
областей, разделяемых отдельными измерениями, на кото-
которой основывалось оптимальное решение одномерных задач,
в многомерном и даже в двумерном случае, вообще говоря,
невозможна *).
Из этого, конечно, не следует делать опрометчивый вы-
вывод, что все описанное для решения многомерных задач
бесполезно. Вспомним самый знаменитый из локальных
методов поиска — нашего чемпиона Наискорейший спуск.
Ведь его действия состояли из двух элеменгсв: первый заклю-
заключался в определении наилучшего направления, градиента,
а второй — в одномерном поиске по выбранному направле-
направлению. Вот в эту вторую часть возможно и зачастую очень
эффективно введение новых идей.
Право же, мы можем предположить, что самое секретное
оружие Наискорейшего спуска, на которое намекал его
*) Известны попытки прямого обобщения идей оптимального по-
поиска на многомерные задачи (см., например, [8]), но все они налагают
не слишком естественные ограничения на возможный вид исследуемых
функций.
188
тренер-профессор при расставании с нами в § 6, и есть
оптимальный поиск по направлению.
Даже если его проводить по упрощенному правилу «зо-
«золотого сечения», есть шансы на значительное повышение
эффективности по сравнению с прямым перебором на сетке
или пропорциональным поиском. Мы говорим «есть шанс»,
а не «наверняка» по двум причинам, которые стоит обсу-
обсудить.
Первая причина: подлежащая исследованию одномерная
функция не обязательно будет одногорбой. Но это — не-
небольшая беда, поскольку и конкурирующие локальные
методы здесь частично теряют эффективность.
Вторая причина куда важнее и заключается в самом
существе того определения оптимальности, которым мы
пользовались. Ведь мы стремились найти метод, который
гарантировал наилучшие результаты для любой возможной
одногорбой функции, как бы плоха и неудобна она ни была.
Если же функция в действительности имеет более бла-
благообразный вид, то другие методы, в частности, уже зна-
знакомые нам локальные, могут куда быстрее привести к
успеху.
Напомним, например, замечательный метод Ньютона,
основанный на оценке крутизны функции и крутизны самой
крутизны (§ 5). Мы убеждались с помощью графиков, что
если крутизна крутизны в зоне поиска почти постоянна,
то метод Ньютона всего за 1 шаг приводит в малую окрест-
окрестность экстремума, причем этот шаг требовал только трех
измерений.
Вместе с тем случай постоянства крутизны крутизны
(второй производной) в окрестности экстремума — довольно
часто встречающееся в практике поиска явление. И в таких
случаях метод Ньютона окажется эффективнее метода,
застрахованного на любой случай жизни.
Но, конечно, все эти рассуждения не могут умалить до-
достоинств оптимальных или почти оптимальных, несмотря
ни на какие неприятности, методов. Ведь, в конце концов,
страховать свой дом от пожара разумно, даже если пожар
в доме до сих пор никогда не возникал.
§13
ДОРОГИ, МОТОРЫЕ
МЫ ВЫБИРАЕМ
(Динамическое
программирование}
Ты сам избираешь
свой собственный путь.
По кручам ли кружит,
иль прямо ведет,
Он все равно твой
избранный путь.
Читатель, наверное, с детства
знаком с такой развлекатель-
развлекательной задачей: меняле подсунули
фальшивую монету, он должен
разыскать ее в куче других,
настоящих золотых монет, на
которые фальшивая внешне по-
похожа. Сходство, конечно, не мо-
может обмануть опытного менялу:
он отлично знает, что фальшив-
фальшивка отличается от золотого по
весу.
Итак, достаточно взвесить по
очереди каждую монету, и
негодница будет обнаружена.
Однако этот тривиальный способ
потребует слишком большого
времени: меняла— человек дела,
истина «время — деньги» слиш-
слишком хорошо им усвоена, чтобы
тратить на взвешивание денег
излишнее время. Он, конечно,
применяет другой, самый бы-
быстрый из всех возможных мето-
методов.
Как же должен выловить
старый меняла из N монет одну
фальшивую — в этом и состоит
известная детская задача *).
Ее решение не трудно, но на-
настолько поучительно, что явно
стоит поговорить о нем подроб-.
нее, и притом с вполне научных
позиций.
Прежде всего мысленно за-
занумеруем все монеты номерами
от 1 до N и представим себе
зависимость веса монеты от
номера (рис. 13.1).
Е. А к и к о
*) Загадывающий, конечно, го-
говорит о десяти или тридцати монетах,
но от конкретности в задании N суть
дела не меняется.
190
Вес у зависит от но-
номера с, принимающего
конечное число значе-
значений. Итак, с общей точки
зрения, поиск фальши-
фальшивой монеты — это поиск
минимума*) функции,
заданной на конечном
множестве. Достаточно применить один из многочислен-
многочисленных методов поиска, которые мы уже знаем, и задача ре-
решится не хуже, чем у менялы.
Примитивный перебор мы, конечно, отвергнем и попро-
попробуем что-нибудь поумнее, например локальный поиск, но,
увы, сравнение с соседями ничего не даст, ибо все соседи
одинаковы, никто не может претендовать на «лучшесть»
или, точнее, «большую фальшивость», а следовательно, не •
может указать и направление поиска. Может быть, поможет
процедура оптимального поиска, но и здесь явная неуда-
неудача— ведь функция, изображенная на рис. 13.1, совсем
/23
К
N-1 N
Рис. 13.1.
не унимодальна: и справа, и слева от минимума — сплош-
сплошные горизонтальные участки. Сравнение измерений, т. е.
сравнение весов отдельных монет, не даст желаемого сокра-
сокращения области поиска.
Конфуз получается полный — современная наука о
поиске пасует перед каким-то допотопным менялой!?
Но, конечно, этот вывод — преждевременный. Мы просто
забыли, что меняла мог взвешивать не только отдельные
*) Для простоты мы предполагаем заранее известным, что фальши-
фальшивая монета легче.
191
монеты, но и несколько монет сразу, объединяя от-
отдельные варианты в группы. А в таком случае дело прини-
принимает совсем другой оборот: идеи оптимального поиска,
примененные в новых условиях, успешно приведут нас
к цели.
Прежде всего надо договориться об одном немаловажном
условии: какими весами располагает меняла. Рассмотрим
сначала простейший случай — в распоряжении менялы
пружинные весы, или, попросту говоря, безмен, и, бо-
более того, ему заранее известен вес р настоящей мо-
монеты.
Тогда, взвесив сразу любое число k монет, меняла может
прийти к одному из двух результатов:
а) вес монет равен p-k, и тогда среди всех взвешенных
монет нет фальшивой, а следовательно, она — среди осталь-
остальных N — k монет;
б) вес монет отличается от p-k, следовательно, фальшив-
фальшивка — именно среди k взвешенных.
Применяя уже известную точку зрения, что всегда надо
быть готовым к худшему и гарантировать наилучший ре-
результат при возможном возникновении любой ситуации,
меняла должен выбрать число взвешиваемых монет k так,
чтобы большее из двух чисел k и N — k было наименьшим.
Ясно, что если N— четное число, то надо взять k—-~-, т. е.
взвешивать половину монет. При любом исходе взвешивания
остающаяся неопределенность сводится к группе в N/2
подозрительных монет. Если же JV — нечетное, то, взяв
« = —s—> можем прийти в худшем случае (когда все взве-
взвешиваемые монеты окажутся настоящими золотыми) к не-
неопределенности выбора среди
монет. Вот и весь алгоритм менялы! Сходится он почти со
скоростью геометрической прогрессии. Пусть, например,
имеется 23 монеты. Тогда после каждого взвешивания число
подозрительных монет (даже при наихудших исходах) будет
сокращаться так: имеется 23. Взвешиваем 11. Результат
верный. Остается 12. Взвешиваем 6. Независимо от резуль-
результата, остается 6. Взвешиваем 3. Независимо от результа-
результата, остается 3. Взвешиваем 1. Результат верный. Остается 2.
192
Взвешиваем 1 и обнаруживаем, какая из двух оставшихся
монет фальшивая.
Сколько же (при наихудших исходах!) понадобится взве-
взвешиваний для выявления фальшивой из произвольного числа
N монет?
Читатель легко может убедиться, что если N боль-
больше 2т~х и не превосходит 2т, то взвешивать придется
т раз *). В примере было ЛГ=23, но 32=25>23>24=16,
так что взвешивать пришлось пять раз.
Рассмотрим теперь более сложный случай, когда вес
золотого заранее не известен, а в распоряжении менялы —
обычные рычажные весы. Гирь никаких нет, да они и не
нужны: ведь требуется лишь выявить более легкую монету,
а не узнать, на сколько граммов она легче, так что вместо
гирь можно использовать сами монеты **). Положим на
одну чашку весов k монет и на другую — столько же. Если
чашки уравновесятся, то, очевидно, все монеты, лежащие
на весах, настоящие, а фальшивая может быть только
среди оставшихся N — 2k монет. В противном случае одна
из чашек с k монетами поднимется, а значит фальшивая —
именно среди них. Готовясь к худшему, выберем k так,
чтобы большее из двух чисел N — 2k и k было возможно
меньшим.
Разделим N на 3, получим число х и, возможно, остаток
а, равный 1 или 2:
N=3x + a.
Если остатка нет, то положим k=x, и тогда в результате
одного взвешивания сократим число подозрительных монет
до х, ибо N — 2k тоже равно х. Если же остаток есть, то
приняв k=x-\-l, гарантируем уменьшение неопределен-
неопределенности до х-\-\, ибо
N — 26 = х + а — 2
и не может быть больше х. Ясно, что это правило дает
всегда наибольший гарантированный успех и может быть
вновь применено к оставшейся подозрительной группе.
*) Иначе говоря, число взвешиваний равно числу цифр (разрядов)
в двоичной записи N. Так, десятичной записи 23 соответствует пятираз-
пятиразрядная двоичная запись 10111.
**) Следует отметить, что при двух монетах и в случае, есЛи
неизвестно, легче истинная или тяжелее фальшивой,— задача нераз-
неразрешима
19а
Последовательность взвешиваний для N = 23 при наихуд-
наихудших исходах такова:
N
X
k
23
7
8
8
2
3
3
1
1
Для выявления фальши потребовалось только три взве-
взвешивания. Вновь предлагаем читателю возможность дока-
доказать самостоятельно, что если исходное число монет N боль-
больше З и не превосходит 3"\ то для гарантии успеха
потребуется т взвешиваний. Читатель может убедиться
и в том, что указанное правило действий при наличии
остатков не единственно:
N
k
23
9
9
3
3
1
Наконец, читатель может просто возмутиться, сказав:
«Я до сих пор считал, что в этой книжке несерьезно рас-
рассказывается о серьезных вещах, а здесь мне приходится
читать серьезные разговоры о древней и несерьезной загадке!»
Однако, высокоученый читатель, не будем торопиться
с выводами. Поговорим сначала о вполне серьезной пробле-
проблеме. В электрической цепи последовательно включено мно-
множество приборов. Внезапно один из приборов выходит из
строя — в нем обрыв цепи. Это сразу же обнаруживается
по отсутствию тока. Придется заняться ремонтом, но прежде
всего следует определить, в каком именно приборе произо-
произошел обрыв. Можно, конечно, проверять, «прозвонить»,
все приборы по очереди, но ведь есть и более разумная
тактика. Какая именно? Этот вопрос, конечно, уже запоз-
запоздал: ведь мы подробно разобрали наилучшую тактику ме-
менялы при поиске фальшивой монеты, а задача о поиске
Неисправного прибора, по существу, ничем от нее не отли-
отличается, хоть взвешивание на безмене и заменится «прозвани-
ванием» участков цепи (рис. 13.2).
194
По-видимому, серьезный читатель потерял право назы-
называть задачу о фальшивой монете несерьезной безделушкой:
ведь она явилась образцом для решения одной из важных
практических задач, задач об обнаружении неисправностей
]—О-
Рис. 13.2.
в сложных машинах. Правда, решенная задача очень про-
проста, но использованный в ней прием — объединение вари-
вариантов в группы и рассмотрение возможных ситуаиий — яв-
является достаточно общим и сильным *).
Заметим, что реальные задачи поиска неисправностей
осложняются еще по крайней мере двумя обстоятельст-
обстоятельствами. Все наши рассуждения относились к поиску дефек-
дефективного в группе из одинаковых приборов (или монет).
А если приборы различны, то в одних неисправности
возникают чаще, в других — реже. Специалист с разной
степенью недоверия относится к различным частям слож-
сложной машины, состоящей из многих приборов и устройств.
Он всегда может указать более «предпочтительные» к не-
неисправности и именно такие
проверяет прежде всего. Эту
систему предпочтений, а точнее
«непочтении», можно задать
математически как набор веро-
вероятностей того, что опреде-
*) Читатель, знакомый с элек-
электротехникой, конечно, понимает, что
методика поиска фальшивой моне-
монеты с помощью чашечных весов мо-
может быть перенесена на поиск об-
обрыва, если в нашем распоряжении
Рис. 13.3
имеется мостик Уитстона, в плечи которого можно включать сразу
по k приборов (рис. 13.3), хотя, конечно, и такая «техника» может
вызвать только улыбку у специалиста.
195
ленный прибор может оказаться в неисправном состоянии,
и учесть этот новый фактор при организации поиска. Тогда,
например, при «прозванивании» цепи целесообразно выде-
выделять не приблизительно равные участки, а участки — груп-
группы приборов, для которых приблизительно равны вероят-
вероятности появления неисправностей *).
Наконец, стоит учесть и то обстоятельство, что проверка
проверке — рознь: приборы различны и затраты на про-
проверку одного могут существенно отличаться от затрат на
проверку другого.
С учетом различий в вероятностях отказа и стоимости
проверки совсем не тривиальным становится даже назна-
назначение последовательности проверок, когда отдельные при-
приборы нельзя объединять в группы. Впрочем, основная идея
ясна: из всей последовательности приборов раньше всего
стоит проверять тот, у которого вероятность отказа выше,
а стоимость проверки ниже. Ну, а если проверка самого
«капризного» прибора и стоит дороже всего? Тогда, на-
наверное, стоит руководствоваться отношением стоимости
к вероятности отказа. Более строгие рассуждения показы-
показывают, что первым надо проверять прибор, для которого
cq
является наименьшей величина
где с — стоимость
проверки прибора, р — вероятность его отказа, а q=
= 1 — р — вероятность отсутствия отказов.
Для примера приведем таблицу с характеристиками
четырех приборов.
N
1
2
3
4
С
10
20
15
30
р
0,
0,
0,
0,
1
8
4
6
0
0
0
0
я
,9
,2
,6
,4
cq
Р
90
5
22,5
20
Сначала должен проверяться прибор 2. Если он исправен,
то проверяется прибор 4, затем 3 и последним — 1. Как
только неисправный прибор обнаружен, остальные прове-
*) Подготовленный в области теории вероятностей и заинтересо-
заинтересовавшийся проблемой оптимальных проверок читатель может найти мно-
много интересного в книге [14].
196
рять уже не нужно *). То, что потребуется проверка одного,
двух или более приборов,— дело случая, но вся процедура
построена так, чтобы средние (по всем возможным случай-
случайным вариантам) затраты (математическое ожидание затрат
по терминологии, введенной в § 8) на проверку были наи-
наименьшими.
Читатель, возможно, еще помнит, что в самом начале
этой книги рассказывалась печальная история о том, как
испортилось «чудо века» — цифровая вычислительная ма-
машина.
Теперь мы можем с новых позиций посмотреть на работу
инженеров, искавших неисправности в машине с помощью
специальных программ-тестов. Ведь в современной вычис-
вычислительной машине — огромное число элементов, отдельных
приборов. Проверять их по очереди немыслимо. Вот тут-то
и работает идея объединения в группы.
Машину заставляют делать вычисления, в ходе которых
работает большое число элементов. Каким должен быть
правильный результат вычислений, известно заранее. Если
полученный машиной результат иной, ясно, что один из
элементов, участвовавших в счете, неисправен. Если же
машина решила задачу «по ответу», то все участники счета
в порядке и стоит проверять только остальные элементы.
Здесь все та же «проблема фальшивой монеты»! Если бы
все элементы были равномерно подозрительными на полом-
поломку, то и проверочные задачи стоило строить так, чтобы
в ходе их решения участвовала приблизительно половина
непроверенных элементов. Ну, а как придумывать такие
проверочные, тестовые задачи — это само по себе задача,
рассмотрение которой далеко увело бы нас с избранного
пути.
Пора бы, кстати, и разобраться, а так ли хорош этот
путь и нет ли путей получше, а заодно и вообще выяснить,
как выбирать самый лучший путь. Но сначала — маленькая
детективная история **).
... Юная заря еще нерешительно спорила с заревом
огней Джаз-сити, когда сержант Мак-Кваски, совершав-
совершавший обход участка пригородного шоссе, обнаружил в утрен-
утреннем тумане нечто подозрительное. Он ринулся вперед и не
*) Предполагается, что вероятность одновременного отказа двух
или даже большего числа приборов пренебрежимо мала
**) История включена в текст для развлечения несерьезных читате-
читателей, однако ее математическое содержание более чем серьезно.
197
напрасно: у обочины лежало тело, безжизненность которого
не вызывала никаких сомнений. Впрочем, все остальное
было в высшей степени сомнительно. На лице мертвого
юноши застыла улыбка, в полураскрытой кисти правой
руки лежал револьвер. Похоже на самоубийство: бледно-
интеллигентный юнец решил свести счеты с опостылевшей
жизнью и заранее радовался избавлению от всех ее тягот.
Но все же — зачем интеллигентному юноше кончать жизнь
на обочине пригородного шоссе? В карманах — ни денег,
ни документов, но, судя по
костюму с Банд-стрит, по-
покойник если и страдал, то
не от безденежья. Но все
же сержанту удалось из-
извлечь из кармана нечто ин-
интересное — длинный золо-
золотистый волос. «Придется
искать женщину», — про-
пробормотал старый Мак-
Кваски.
Вскоре труп, пиджак и
волос были доставлены в
полицейское управление,
где опытный криминалист
Д. Т. Ктив срочно взялся
за исследование, Микро-
Микроанализ структуры волоса
Рис' 13-4- убедительно доказал, что
его владелицей является
некая Джейн Пшифли, студентка Высшей школы бизнеса.
Полицейские во главе с Д. Т. Ктивом немедленно отправи-
отправились на ее квартиру, но, увы, владелицы там уже не было.
Обыск не дал результатов, за исключением... валявшегося
на столе листа бумаги. На нем была изображена какая-то
схема и таблица с числами (рис. 13.4).
Бравый полисмен чуть было не сбросил эту бумажку со
стола, но Д. Т. Ктив не был бы детективом, если бы не
обратил на нее внимания — было слишком похоже на то,
что записи делались совсем недавно. Лабораторный анализ
чернил убедительно доказал, что вряд ли Пшифли занима-
занималась своим студенческим делом перед бегством.
Таинственные вычисления явно связаны с делом об
убийстве, но как? — эта мысль неотступно вертелась в го-
198
лове у Д. Т. Ктива. Он вновь и вновь принимался за изу-
изучение записей, но тщетно. Наконец его осенила гениальная
догадка: «Пусть числа разбирают математики!» Листок
отправлен в Вычислительный центр фирмы YMOD, что
означает: «Деньги ваши — цифры наши».
Не будем ожидать исхода дела, а попытаемся разобраться
в нем сами. Ведь логика предельно ясна: если произошло
убийство, то убийца должна была бежать и возможно быст-
быстрее. Куда? В любое место за пределы своей любимой страны,
но наилучшим путем!
Итак, ей явно предстояло решить задачу выбора опти-
оптимального пути, а будучи студенткой Высшей школы биз-
бизнеса, она могла решить ее математически, самым современ-
современным методом. Теперь все ясно: схема — это упрощенная
карта дорог, ведущих к границе, числа на карте — времена
проезда между узловыми пунктами, перенумерованными
от 1 до 7.
Ну, а что дальше? Дальше придется познакомиться с
идеями самого современного метода поиска наилучшего
пути — метода, предложенного американскими учеными
Р. Беллманом и Дж. Данцигом *). Идеи эти, к счастью,
очень просты.
Пусть наилучший путь из пункта Л в пункт В проходит че-
через пункты С uD (жирная линия на рис. 13. 5). Предположим
Рис. 13.5.
теперь, что условия изменились и требуется пройти
только из С в D. Каким будет оптимальный путь из С в D?
Ясно, что он должен совпадать с частью оптимального пути
из Л в В. Действительно, если это не так и из'С лучше от-
отправиться в D каким-нибудь другим путем (например,
*) На этот раз фамилии — настоящие и действительно знаменитые.
199
путем, показанным на рис. 13.5 пунктиром), то и наилучший
путь из А в В был бы не таким — было бы выгоднее сначала
добраться из Л в С прежним путем, а потом перейти на
пунктирный до D, и общие затраты оказались бы меньшими.
Но ведь прежний путь из А в В был оптимальным, луч-
лучшим из всех доступных путей, значит, такой дополнитель-
дополнительный выигрыш невозможен.
Таким образом, оптимальный путь между любыми двумя
пунктами, лежащими на оптимальной трассе между двумя
другими пунктами, должен быть частью этой трассы, или,
короче, любая часть оптимального пути также опти-
оптимальна.
В этом и состоит знаменитый принцип оптимальности,
предложенный Р. Беллманом. Польза этого принципа оче-
очевидна: найдя наилучший путь между двумя промежуточ-
промежуточными пунктами, мы можем быть твердо уверенными, что
если какой-либо из этих пунктов окажется на нашем пути,
то следующий переход необходимо делать по оптимальному
пути между ними и не рассматривать никаких других ва-
вариантов. Беда лишь в том, что мы заранее не можем сказать,
действительно ли они окажутся на нашем пути. Ясно, что
исходная точка обязательно находится на этом пути, а ос-
остальные мы будем «подозревать в оптимальности» пооче-
поочередно.
Теперь пора вернуться к проблеме Д. Т. Ктива и по-
посмотреть, как реализовалась общая идея поиска оптималь-
оптимального пути в конкретных планах преступления. Обратимся
сначала к схеме. Из Джаз-сити, помеченного номером 1,
можно непосредственно (не минуя никаких других пунктов)
попасть в пункты 2, 3 и 5. Любой путь к границе из 1 будет
содержать в качестве начального участка один из участков
1—2, 1—3 или 1—5. Предположим, что начальным явля-
является участок 1—2. Тогда путь может быть продолжен до
пунктов 3, 4 или 5 (назад, в 1, возвращаться, очевидно,
нецелесообразно).
Аналогично после 1—3 могут последовать участки 3—2,
3—5 или 3—б, а после 1—5 — участки 5—3, 5—6 или 5—7.
Каждый из перечисленных «двухучастковых» (обычно гово-
говорят «двухшаговых») путей, кроме уже заканчивающихся
в точках на границе, может быть удлинен по крайней мере
еще на один участок, и так далее. В результате мы полу-
получаем схему всех возможных вариантов, показанную на
рис. 13.6. Такую схему принято называть деревом вари-
200
антов *). На каждом конце его многочисленных ветвей
висит желанный плод — точка границы, а число кон-
концов 20!
Для того чтобы выбрать наилучший путь, можно вос-
воспользоваться «тупым» приемом прямого перебора, подсчиты-
подсчитывая время, необходимое
для прохождения каждо-
каждого варианта. Но стоит
ли? Ведь в нашем рас-
распоряжении — принцип
оптимальности, и он
позволит отбросить мно-
множество бесполезных ва-
вариантов, даже не
просматривая их до
конца.
Подсчитаем затраты
времени только по ва-
вариантам начальных ша-
шагов. Впрочем, их непос-
непосредственно можно выпи-
выписать с «дорожной карты».
Как бы ни продолжа-
продолжались дальнейшие пути,
затраты времени на эти
начальные участки оста-
останутся. Запишем их ря-
рядом с номером пункта на
схеме (рис. 13.7, а). Про-
Проведем ту же операцию со
всеми вариантами двух-
шаговых путей, поставив
рядом с номерами достиг-
достигнутых пунктов на рис. 13.7, 6 затраченное время, получен-
полученное суммированием времени по участкам. Дальше можно
было бы сразу рассмотреть и все трехшаговые пути, но
здесь-то пора призвать на помощь принцип оптимальности!
Предположим, что точка 2 лежит на искомом оптимальном
пути к границе,— только тогда и стоит интересоваться
путями, ведущими в 2. Но в этом случае надо отбросить все
*) Эта схема напоминает схему вариантов возможных исходов мно-
многократного бросания монеты (§8), но здесь выбор осуществляется не
по воле случая, а оценкой качества варианта.
Рнс. 13.6.
20!
пути, ведущие из 1 в 2, кроме наилучшего, наибыстрейшего,
а именно — пути 1—3—2, потребовавшего всего 8 часов.
Ведь, напомним, часть оптимального пути, какой бы он
ни был, должна сама быть оптимальной («Noblesse oblige» —
«благородство обязывает», как говорилось в добрые старые
времена!). Но тем самым мы получаем возможность «на
корню» отсечь все варианты (а их 7!), начинающиеся участ-
участком 1—2, с затратами в 14 часов, да еще два варианта,
являющихся возможными продолжениями пути 1—5—2.
Применяя те же доводы, по отношению к путям, приходя-
приходящим в пункты 3 и 5, мы сможем отбросить еще пять заведомо
негодных вариантов. Кроме того, сравнив пути, уже при-
приведшие к границе, сохраним только лучший из них, путь
1—?—6, потребовавший 28 часов, как единственный из
них, подозрительный на оптимальность.
В результате этих рассуждений все решительно упро-
упростилось: из возможных трехшаговых путей стоит изучить
только два варианта (рис. 13.7, в), со'хранив еще для памяти
итог одного двухшагового. Здесь вновь выявляется возмож-
возможность отбросить один законченный вариант A—3—2—4),
как худший, чем уже найденный, а затем отбросить и этот
найденный A—5—6), как содержащий участок 1—5, заве-
заведомо худший, чем путь 1—3—2—5. Наконец, сравнение на
4-м шаге (рис. 13.7, г) выявляет единственный *) наилуч-
наилучший путь: 1—3—2—5—6, потребовавший всего 26 часов.
Не правда ли, такой метод куда проще прямого перебора?
Он, как и метод менялы, использует рассмотрение целых
групп вариантов и отсечение бесполезных также целыми
группами. Правда, варианты путей не кладутся на весы,
а оцениваются лишь по их общей начальной части, но это
уже не столь принципиальное различие.
Конечно, теперь мы уже можем сообщить в полицейское
управление Джаз-сити путь следования преступной Пшифли
и тем избавить от умственных мук математически малогра-
малограмотного Д. Т. Ктива. Однако полной уверенности у нас еще
нет, ибо записи, найденные в квартире упомянутой Пшифли,
не похожи на картинки с деревьями, которыми мы восполь-
воспользовались. Но в этом уже совсем не трудно разобраться.
Читатель, конечно, осознал, что для решения задачи
*) То, что оптимальный путь оказался единственным, не является
правилом, вполне возможны задачи, где равноправных (по суммарным
затратам) и наилучших путей несколько.
203
не было необходимости в разрисовывании всего дерева воз-
возможных вариантов. Стоит рисовать дерево только в процессе
роста, сразу обрубая ветви, заведомо не обещающие наи-
наилучших плодов. Пожалуй, и рисунок — излишняя роскошь,
дань наглядности. Расчеты можно разместить в таблице.
1
0
1—2
14
1—3
2
1-5
20
1—2—3
20
1—2—4
38
1-2-5
12
1—3—2
8
1—3-5
22
1—3—6
32
1-5-2
30
1—5—3
40
1—5—6
28
1-5-8
32
1-3—2-4
32
1—3—2—5
18
1—3—2—5-6
26
1—3—2—5—7
30
Если это сделать, то мы получим нечто сходное с запи-
записями Пшифли. Однако не совсем: таблица Пшифли содер-
содержит меньше расчетов.
Хорошенько присмотревшись, можно обнаружить в ней
еще одну простую идею. Зачем строить сразу все одношаго-
вые варианты, затем вседвухшаговые и т.д.? Не лучше ли
при подсчетах развивать только наиболее «подозрительные
на оптимальность» пути, исходящие из начальной точки?
Применим эту идею последовательно. Как и ранее, рас-
рассмотрим все одношаговые пути, ведущие из 1. Выясняем,.
204
что наилучшим, а следовательно, и наиболее подозритель-
подозрительным на то, чтобы быть началом оптимального пути, явля-
является участок 1—3 с затратами в 2 часа. Разовьем именно этот
вариант, изучив результаты добавления к нему еще одного
участка, а остальные пока заморозим. Сравним теперь все
пять изученных вариантов (и те, котор ые остались одноша-
говыми, и двухшаговые, «выросшие» из 1—3). Находим, что
наиболее эффективным из них является двухшаговый 1 —
3—2, и далее разовьем именно его еще на один шаг *),
отбросив заодно еще и вариант 1—2, как заведомо неспособ-
неспособный развиться во что-нибудь лучшее, чем 1—3—2. Получим
новые, уже трехшаговые варианты 1—3—2—4 и 1—3—2—5.
Отбор по четырем имеющимся и способным к развитию
выдвигает, как лучший, путь 1—3—2—5 и отбрасывает
1—5 и 1—3—5, как заведомо непригодные для продолже-
продолжения. Последний шаг приводит только к вариантам, закан-
заканчивающимся на границе, и из них имеется один лучший, чем
все, которыми мы располагаем **).
Тем самым мы окончательно пришли к варианту записи,
появившемуся в детективной истории.
Дело об убийстве на сем можно считать успешно закон-
законченным. Успех, конечно, заключается не в открывшейся
возможности поимки преступной Пшифли. Мы разобра-
разобрались в принципе оптимальности и его использовании как
орудия, позволяющего обрубать ненужные ветви дерева
вариантов, а заодно и в предложенной Дж. Данцигом
вспомогательной идее, еще более упрощающей дело.
А в том, что дерево вариантов склонно к угрожающему
разрастанию, нетрудно убедиться на простых примерах.
Пусть схема возможных путей к границе имеет симметрич-
симметричный вид, показанный на рис. 13.8, и допустимы только пути
без поворотов назад. Тогда на каждом шаге число вариантов
удваивается. Если число пунктов — узлов, расположенных
на катетах, равно N, то число вариантов путей выхода
в точки границы (гипотенузы) из вершины равно 2N. Чита-
Читатель, наверное, помнит, что прямой перебор 2100 вари-
вариантов — безнадежное дело. Применение же принципа
*) Если бы лучшим теперь оказался один из одношаговых вариан-
вариантов, то мы бы развили именно его, пополнив тем самым набор двухша-
говых.
**) Сравнивать нужно все сохранившиеся варианты, в том числе
и ие обеспечившие еще выхода на границу. В данной задаче таких про-
просто случайно не оказалось.
205
оптимальности позволит расправиться с этой задачей без
особого труда.
Но, может быть, труда вообще не стоит вкладывать,
поскольку область приложения таких методов — разгадка
элементарных детективных анекдотов? В действительности
дело обстоит совсем не так.
Задача о поиске наилучшего
'Граница пути — одна из самых важных
для самых разнообразных
приложений, и прежде всего
для создания систем управле-
управления самолетами, ракетами,
спутниками.
Первая задача истребите-
истребителя-перехватчика — возможно
скорее набрать высоту и ско-
скорость.
Два этих фактора опреде-
определяют во многом боевые возмож-
возможности машины. Превосходство
в высоте и скорости над против-
противником — это, как правило, за-
залог успеха атаки. Поэтому,
стартуя навстречу битве, лет-
летчик стремится за минимальное
время выйти на заданную достаточно большую высоту
и притом с заданной очень большой скоростью. Для совре-
современных боевых машин это — высоты 20—30 километров,
т. е. стратосфера, и скорости, в два-три раза превышающие
скорость звука, т. е. две-три тысячи км в час. Задача о
выборе пути, траектории, быстрейшим образом выводящей
на режим,— это, несомненно, важная задача и, несомненно,
задача поиска оптимального пути, упрощенный вариант
которой был описан в детективной истории.
Все возможные пути можно изобразить как кривые на
плоскости с координатами «скорость-высота», соединяющие
точку старта и конечную точку, соответствующую заданным
значениям скорости и высоты (рис. 13.9).
Летчик, управляя с помощью рулей высоты и тягой дви-
двигателей, может выбирать самые разнообразные кривые —
траектории. В принципе он в каждый момент времени мо-
может с помощью рулей высоты и сектора газа двигателей
задавать разнообразные значения угла наклона траектории
Рис. 13.8.
206
к поверхности земли, а следовательно, и менять вид всей
остальной части пути.
Функция цели — время полета по траектории — оказы-
оказывается зависящей от бесконечного числа переменных, зна-
значений угла наклона траектории в каждый момент времени.
Ужасную задачу поиска оптимума такой функции можно,
конечно, упростить, считая, что изменения могут произво-
производиться только в конечном числе точек на траектории. Чем
Высота,
Заданиях
высота
Снорость
пашете
Заданная
страсть
Снорость
Рис. 13.9.
больше этих точек рассмотришь, тем ближе подойдешь
к решению исходной проблемы *). Упростим нашу задачу
дважды. Во-первых, предположим, что изменения в управ-
управление самолетом летчик может вводить только в фиксиро-
фиксированных точках на плоскости «скорость — высота», напри-
например, лежащих в узлах сетки 10x10, равномерно разбиваю-
разбивающей диапазоны изменения высот и скоростей от начальных
до конечных (рис. 13.10). Во-вторых, будем рассматривать
только траектории, проходящие через эти точки, и притом
без «сбрасывания» уже набранной скорости или высоты **).
Тем самым бесконечное число моментов, где летчик может
изменять направление полета, сведено к конечному, точнее,
*) Здесь-то и таится один из главных источников возникновения
чудовищных задач оптимизации в многомерном пространстве, о которых
говорилось еще в § 3!
**) Последнее условие не позволяет проводить сравнение траекто-
траекторий, включающих маневры типа «горки», т е. разгона путем набора
лишней высоты и соскальзывания вниз, и маневры типа «взмывания свеч-
свечкой» с торможением за счет того, что тяга меньше суммы веса самолета
и аэродинамического сопротивления.
207
к 20. При этом выбор вариантов в каждый из этих моментов
также упрощен до предела: в любой точке (кроме крайних)
можно либо A) увеличить скорость, сохраняя постоянной
высоту, либо B) увеличить высоту, оставляя неизменной
скорость. Но и при таком упрощении число вариантов раз-
различных траекторий, идущих из точки старта к точке фи-
финиша, остается громадным. Можно подсчитать, что оно
Высота
\! \Г\
Финиш
Старт /234
Рис. 13.10.
Скорость
приблизительно равно 185 тысячам! Таким образом, путь
прямого перебора и здесь мало приемлем.
Но ведь задача теперь приобрела совершенно тот же вид,
который имела проблема поиска оптимального пути в «де-
«детективной истории»! Только вместо возможных промежу-
промежуточных пунктов на пути к границе фигурируют узлы на
сетке, а сама граница свелась к единственной желанной
точке финиша. Затраты времени, необходимые для прохож-
прохождения каждого из промежуточных участков пути, могут
быть подсчитаны по характеристикам самолета: его весу,
силе тяги, зависимости сопротивления воздуха и подъемной
силы от высоты и скорости полета.
Если такие расчеты произведены специалистами-аэро-
специалистами-аэродинамиками, то мы получаем полную схему возможных пу-
путей и можем применить уже известную методику последо-
последовательного отсечения непригодных вариантов. Стоит отме-
208
тить, что в определенном смысле эта задача о наборе высоты
даже проще «детективной». В силу симметрии схемы и
принятого предположения о недопустимости движений
«вниз и налево» точки на схеме естественно распадаются на
ярусы.
В каждый ярус (рис. 13.10) попадают точки, в которые
можно попасть за одно и то же число шагов, например за
4 шага, причем ярусы не пересекаются: если в точку можно
попасть за N шагов, то в нее нельзя попасть за меньшее
или большее число шагов *). Тем самым в задаче о наборе
высоты множества одношаговых, двухшаговых и т. д. ва-
вариантов легко выделяются, что упрощает и упорядочивает
вычисления.
Приведем некоторые формулы для расчета оптимального пути на
сетке с числом N участков по каждой координате. Общее число участков
(шагов) на любой траектории, ведущей из исходной в конечную точку,
равно 2N. Соответственно, все узлы сетки можно разбить на 2N+1
ярусов, в каждый из которых входят узлы, достижимые из начала за
к шагов (k=0, 1, . • ., 2/V). Перенумеруем также точки в каждом ярусе,
обозначим через t\i — известные времена, затрачиваемые на одношаго-
вый переход из г-й точки &-го яруса в /-ю точку (fe-)-l)-ro яруса. Опреде-
Определим Tj (k) как наименьшее время, необходимое для прихода из начала
в ;-ю точку k-ro яруса. Тогда
77@) = 0, /=1
(в нулевом ярусе — единственная точка, и она же является исходной).
Далее ясно, что
'{°\ /=1,2.
(В каждую ;-ю точку первого яруса можно попасть единственным одно-
шаговым путем из единственной точки нулевого яруса, затратив извест-
известное время.)
Развивая варианты в двухшаговые, трехшаговые и т. д., можем оце-
оценить времена Г,-(й) для любой точки k-то яруса, в том числе и для ко-
конечной точки, единственной в последнем ярусе (k=2N). Но при этом,
конечно, надо отбрасывать заведомо непригодные варианты, используя
принцип оптимальности. Можно убедиться, что для любого номера k
верна формула
fr k)] (* = 0, 1, 2 2W-1),
где минимум вычисляется перебором по всем точкам ?-го яруса. Действи-
Действительно, путь в /-ю точку (й+1)-го яруса состоит из k-\-\ шагов. Но в эту
точку можно попасть только из какой-либо точки предшествующего,
А-го," яруса.
*) В «детективной» же схеме в пункт «4» можно было попасть и
за 2, и за 3, и за 4 шага.
209
Следовательно, любой (й-)-1)-шаговый путь должен состоять из
двух частей: ^-шаговой части, приводящей из начала в какую-либо
г-ю точку k-ro яруса, и одношаговой части, перехода из этой г-й точки в
;-ю т>чку (k-\-l)-ro яруса. Но если этот путь оптимальный, то и его
первая часть должна быть оптимальной, а тогда на нее приходится
время Tj(k).
Записанная выше формула отражает только необходимость опти-
оптимального выбора остающейся одношаговой части. Вместе с тем ов^ поз-
позволяет сосчитать по оптимальным временам перехода в k-й ярус опти-
оптимальные времена перехода в (й-|-1)-й, а поскольку для /г=1 величины
Tj(k) заданы, то тем самым выявлена возможность последовательно до-
добраться до Tj B/V), т. е. оптимальное время перехода в конечную точ-
ну, с отсечением непригодных вариантов.
В качестве примера рассмотрим расчет оптимального
времени набора высоты, если задача предварительно упро-
упрощена с помощью сетки 3x3. На рис. 13.11 представлена эта
/
/
Z
3
4
1
Tj@
60
40
к=2
Ф)
/
г*
z
W
160
80
110
к=3
1
2*
Z
3
Ш
280
/40
190
к=4
Ф)
2
Z*
3
W
2W
ISO
200
к=5
??2i
2
Z*
Ш
260
240
к=6
Ш)
г*
ЪF)
300
сетка, причем для каждого участка указано время его
прохождения. Для каждого узла указаны номер яруса и
порядковый номер внутри яруса.
За вычислениями легко проследить по таблице. Для
каждого этапа с номером k в ней приведены величины опти-
оптимальных времен Tj (k) достижения каждой /-й точки k-vo
яруса и номер точки i (/) предшествующего яруса, из ко-
которой лучше всего попадать в данную /-ю.
210
Рассмотрим подробнее, как проводится, например, этап 4.
Сначала смотрится 1-я точка (/=1) 4-го яруса. В нее можно
попасть двумя путями: 1) либо из 1-й точки 3-го яруса, за-
затратив 30 сек на этот переход, что вместе с ранее затрачен-
затраченным временем 7\ C)=280 сек даст 310 сек; 2) либо из 2-й
точки 3-го яруса с затратами 100 сек, но при прошлых затра-
затратах Га C)—140 сек. Совокупные затраты во втором случае
равны 240 сек, что меньше 280 сек, а следовательно, и есть
наименьшее возможное время перехода из начала в точку
/= 1 4-го яруса. Так что можно записать в таблицу, что
7\ D)=240, а получить такое время можно, придя в эту
точку из точки с номером i=2 предшествующего яруса.
Точно так же (и притом значительно быстрее, чем об этом
можно рассказать словами) ведется заполнение и других
клеточек таблицы.
Оптимальное время набора высоты оказывается равным
300 сек. Заодно по таблице можно легко указать и опти-
оптимальный путь. Для этого придется двигаться от конца.
Мы Обнаруживаем, что в конечную точку лучше всего было
прийти из 2-й точки 5-го яруса. В свою очередь в эту точку
лучше всего попасть из 2-й точки 4-го яруса и т. д. Двигаясь
назад и используя данные из столбцов, где помещены но-
номера i (/), находим все точки на оптимальной траектории
(на рис. 13.11 она выделена жирной линией, а соответствую-
соответствующие точки в каждом ярусе отмечены звездочкой). Вот и вся
технология расчетов *)!
Теперь пора вновь поговорить об их «идеологии». Вни-
Внимательный читатель, очевидно, заметил, что в нашем при-
примере наилучшую траекторию можно было бы получить и
другим, куда более простым путем. Будем решать задачу
выбора наилучшего пути самым «близоруким» способом,
интересуясь не оптимальностью траектории в целом, а лишь
затратами на ближайший участок пути. Из точки @; 1) —
два пути. Пойдем по пути, требующему меньшего времени,
т. е. в точку A; 2). В ней вновь выбор из двух возможных
*) Поскольку цифры в примере были хотя и условными, но более
или менее осмысленными, то и результат получился похожим на реаль-
реальный: самолет сначала идет по пологой траектории, увеличивая скорость.
Затем, не доходя до скорости звука, круто набирает высоту. Набрав вы-
высоту, разгоняется, пробиваясь через звуковой барьер. Далее снова идет
набор высоты вплоть до заданной. В книге [2] можно найти более под-
подробное описание методики решения этой задачи с помощью принципа
оптимальности.
211
Путей сделаем по принципу «ближайшая выгода» и попадем
в B; 2). Из нее — два равноправных пути. Для отбора
между ними посмотрим на два шага вперед. Придем через
C; 2) в D; 2), а оттуда все тот же «близорукий» принцип без
всяких осложнений приведет к конечной цели.
И, как это ни удивительно, будет выбран именно тот
путь, который уже был опознан как наилучший среди всех
возможных.
Более того, оказывается, что такое совпадение не слу-
случайно и характерно для многих, хотя, конечно, и не дая
всех задач об оптимальных траекториях полета. Это прият-
приятное обстоятельство намного облегчает проблему оптимиза-
оптимизации. Даже если «близоруко» оптимальная *) траектория и
не является наилучшей, ее можно принять за хорошее пер-
первое приближение, а затем попытаться улучшать, оценивая
Рис 13.12.
значение функции цели на близких траекториях, отличаю-
отличающихся от исходной только на малых участках пути.
На рис. 13.12, а показана схема путей, связывающих
пункты А и В. Если руководствоваться «близорукой»
политикой, то будет выбран путь, показанный жирной
линией, занимающий 17 часов. Его можно попытаться
улучшить, заменяя отдельные участки пути примыкающими
к нему боковыми путями. Почти все измененные пути хуже.
*) Ее научное название — «квазистатически оптимальная».
Удачным оказывается лишь «объезд» двух участков (с общим
временем 8 часов) одним, требующим только пяти, так что
общий путь из А в В займет только 14 часов. Большего
локальные изменения не дадут. Вместе с тем нетрудно
заметить, что из Л в В можно добраться и за 12 часов
(рис. 13.12, б). Такой действительно оптимальный путь
мы проморгали только из-за одношаговой «близорукости».
Если бы сравнивались хотя бы двухшаговые комбинации,
то он сразу бы выдвинулся на первый план. Но чем длин-
длиннее комбинации, тем труднее их все просмотреть, тем больше
потребуется работы, которая в конечном счете может ока-
оказаться и бесполезной.
Читатель, наверное, заметил, что мы начали говорить
почти шахматным языком. Просматривать исходы всех
возможных многошаговых комбинаций практически невоз-
невозможно. Ограничиваясь же только короткими, «близору-
«близорукими», комбинациями (как это делается во многих прими-
примитивных программах для «машинной» игры в шахматы),
обычно теряешь правильную перспективу.
Представляется, что введенное Дж. Данцигом усо-
усовершенствование способа выбора оптимального пути —
преимущественное развитие «подозрительных на оптималь-
оптимальность» вариантов, с шахматных .позиций вполне логично.
Вместе с тем автор, будучи очень плохим шахматистом,
не решается давать советы многоопытным составителям
шахматных программ.
Шахматные проблемы, конечно, резко отличаются от
проблем выбора оптимального пути и тем, что в них трудно
оценить пользу от отдельного хода, и прежде всего тем,
что шахматы — игра, в которой участвуют две стороны,
преследующие противоположные цели.
Впрочем, в своей неустанной борьбе с Природой, под-
подсовывающей для поиска худшие варианты, мы уже в какой-
то мере научились действовать, применяя принцип обеспе-
обеспечения гарантированного выигрыша. Именно этот принцип
лежит в основе математической теории игр — дисциплины,
использующей многие общие идеи поиска и очень интерес-
интересной *).
*) После этого было бы естественно рассмотреть проблемы выбора
оптимальных решений именно для ситуаций игрового противоборства.
Но объем этой книги ограничен, а об играх уже рассказано во многих
очень хороших и даже очень простых книжках, например, [6, 9], к ко-
которым и может обратиться любознательный читатель.
213
§ 14
СЕКРЕТ
ПРОИЗВОДСТВА
(Метод наименьших
квадратов)
Вот то-то и оно:
как часто смотрим мы,
куда тянется дым,
вместо того,
чтобы поинтересоваться,
откуда дует ветер.
К. Чапек, «О вещах»
В поиске, как и во всяком
старинном и почтенном ремесле,
есть свои внутренние секреты,
цеховые тайны, которые опреде-
определяют успех дела, но остаются
незаметными для тех, кто лишь
пользуется плодами трудов, а не
пытается заглянуть на саму
кухню.
Пожалуй, главным произ-
производственным секретом поиска,
который мы сохраняли для тех
читателей, которые доберутся до
конца книги, являются методы
приближения функций.
Проблема приближения
функций совершенно уникальна
в истории науки. Она оказала
решающее влияние на формиро-
формирование самых абстрактных и фун-
фундаментальных представлений ма-
математики в целом. Ею занима-
занимались почти все великие мате-
математики прошлого — Ньютон и
Лагранж, Гаусс и Вейерштрасс,
Чебышев и Абель, и крупней-
крупнейшие математики современно-
современности — Колмогоров и Винер,
Бернштейн и Канторович. С дру-
другой стороны, ни одна из общема-
общематематических проблем с момента
своего рождения и по настоящее
время не была так тесно и двусто-
ронне связана с практикой.
В чем же она состоит?
Задана функция — формулой,
графиком или значениями в от-
отдельных точках. Требуется най-
найти другую функцию, например
полином, которая бы наимень-
наименьшим образом отличалась от
заданной, была бы наиболее
сходна с ней.
214
С точки зрения чистой, абстрактной математики — это
проблема выяснения возможности представления функций
из одного класса функциями из другого, а следовательно,
и выяснение различий между классами.
С точки зрения прикладной математики проблема приб-
приближения — это проблема нахождения эффективного спо-
способа описания одних функций че-
через другие.
Наконец, с позиций техники
и естествознания — это десятки
разнообразных старых и новых
проблем от обработки эксперимен-
экспериментальных данных до распознавания
образов. р
Рассмотрим простейшую элек-
электрическую цепь (рис. 14.1). Изме-
Изменяя напряжение, приложенное к цепи, мы изменяем
и ток, текущий в ней. Будем измерять напряжение вольт-
вольтметром, а силу тока, как и положено,— амперметром.
Каждому школьнику известен закон Ома: напряжение и
пропорционально силе тока г, а коэффициент пропорциональ-
пропорциональности называется сопротивлением R, т. е. u—Ri или, нао-
наоборот, i—pu, где р=^ 1/R — проводимость. Иначе говоря,
закон Ома утверждает, что сила тока, текущего по цепи,
есть функция от напряжения, и притом линейная функция,
вид которой полностью определяется заданием единствен-
единственной величины — проводимости.
Цель нашего опыта и состоит в определении неизвестной
проводимости цепи. Для этого в принципе достаточно изме-
измерить силу тока, соответствующего одному значению напря-
напряжения. Пусть, например, источник дает напряжение, рав-
равное 15 вольт, а измеренный ток равен 0,6 ампера. Тогда
без труда сосчитаем, что
#=у|=25 ом, или р = 0,04 \/ом.
Рассмотрим еще один классический опыт. Будем наблю-
наблюдать падение тяжелого тела в хорошо откачанном (почти
пустом) сосуде. Если тело падает без начальной скорости
(просто отпускается из зажимов), то за время t оно должно
упасть на
H=±gt2 см,
215
где g — постоянное ускорение свободного падения, вызван-
вызванное притяжением тела к Земле.
Закон равноускоренного движения, выражаемый этой
формулой, гласит, что путь, пройденный телом, есть функ-
функция затраченного времени, и притом квадратичная, пол-
полностью определяемая заданием единственной величины —
ускорения g. Этот факт, наверное, тоже хорошо известен.
Более того, наверное, известна и величина g, равная приб-
приблизительно 981 сантиметр в секунду за секунду (см/сек2).
Но в том-то и дело, что приблизительно. В действительно-
действительности величина g различна для разных точек земного щара,
отличаясь примерно на ±3 см]сек*. Знать же, каковы эти
различия, существенно и для точного прогноза движения
спутников, и для чисто земных дел. Если в каждой точке
Земли величина g различна, то, составив предварительно
карту распределения этих величин по результатам точных
измерений, можно, во-первых, ориентироваться по этим
картам, а во-вторых, предполагать, что существенные изме-
изменения величины g свидетельствуют о резких изменениях
в распределении горных пород, а это уже может стать важ-
важной подсказкой геологам.
Поэтому измерение ускорения свободного падения не
потеряло актуальности со времени Галилея, а требования
к точности резко возросли. Итак, рассмотрим итоги одного
из таких опытов. Было измерено время, за которое тело
прошло заданный путь в 100 см. Время оказалось равным
0,45150 сек. Теперь без труда сосчитаем, что
? =981'2
Мы установили очень важный, хотя и элементарный
факт: если характер зависимости между двумя величинами
заранее известен, но не полностью — входящая в нее
постоянная осталась неопределенной,— то ее можно опре-
определить, произведя единственный эксперимент. При этом
несущественным является вид самой зависимости (линей-
(линейная, квадратичная и т. п.).
В общем, это можно записать так: если y=f (с, х), где
вид функции / известен, то, измерив значение функции
г/A) при одном конкретном значении аргумента х=хш,
мы получим уравнение
216
Разрешив его относительно неизвестной постоянной с, мы
определим эту постоянную, а следовательно, сможем вычис-
вычислять значение функции при любом значении аргумента.
Так, в нашем первом примере после определения про-
проводимости р—0,04 1/oju мы можем в принципе без всяких
измерений предсказать, каково будет значение силы тока
при любом напряжении. Если, в частности, ы=5 вольт, то
сила тока i будет равна 0,2 ампера.
Заметим теперь, что вычисление неизвестных постоянных
в обоих примерах было очень простым, потому что зависи-
зависимость от этой постоянной была линейной. Обе зависимости
принадлежали к такому типу:
где ср (х) — заранее известная функция (в первом случае
мы имели ф (х)=х, во втором — ср (х)=х*/2; то, что аргу-
аргументы и функции обозначались другими буквами, конечно,
несущественно). Для зависимостей такого типа определе-
определение постоянной по результатам измерения г/A) при заданном
хп) элементарно:
?
A)
или с=
Нетрудно теперь догадаться, что если зависимость у от х
определена с точностью до нескольких, т, неизвестных по-
постоянных, то для их определения, а следовательно, для
полного установления этой зависимости, вообще говоря,
достаточно только т измерений. Для простоты рассмотрим
только случай, когда постоянные входят линейно
y=clq1 (х) + с2ф2 (х)+ ... + стцт (х),
причем функции ф1 (х), ф2 (х) фт (х) полностью известны.
Пусть произведено т измерений, т. е. заполнена табличка
вида
X
У
уШ
X™
У{2)
...
...
ХШ)
у(ГП)
где в каждом столбце стоит сверху конкретное значение
аргумента, а внизу — результат измерения функции при
этом значении аргумента. Но поскольку вид общей зави-
217
симости у от х задан, то должны выполняться т. условий:
При этом напомним, что функции cpi,...,cpa полностью
известны, так что при определенном значении аргумента
можно без труда сосчитать и значение функции, как опре-
определенное число. Следовательно, выписанный набор условий
можно рассматривать как систему линейных уравнений
относительно неизвестных постоянных Си ..., Ст. Решив
ее, например, методом последовательного исключения
неизвестных, мы и найдем эти постоянные *).
Чтобы не быть голословными и лучше понять суть дела,
приведем еще один пример. Пусть тело бросается вниз
с неизвестной начальной скоростью vQ. Тогда за время /
оно упадет на
Необходимо по измерениям пройденного пути и времени
определить обе величины, vu и g. Поскольку неизвестных
постоянных две, то потребуется по крайней мере два изме-
измерения. В эксперименте оказалось, что груз пролетел Яш =
=50 см за *<»=0,19102 сек, а Я»>=100см за*и>=0,31025 сек.
В силу известного характера зависимости устанавливаем,
что должны выполняться два условия:
Подставляя числа, получаем
50 = у0- 0,19102 +g- 0,018053,
Исключая из второго уравнения и„, находим
ий = 322,026—g- 0,15506.
*) Конечно, для этого необходимо, чтобы система имела решение,
и притом вполне определенное. В том, что такие условия важны, чита-
читатель легко может убедиться, если попытается определить с помощью
уже описанного опыта проводимости двух параллельно включенных це-
цепей, измеряя только суммарный ток.
218
Подставляя результат в первое
уравнение, получим
50=61,423—g. 0,11672,
откуда окончательно имеем
g = 0,9806 см/сек2,
ио= 170,05 см/сек.
«Все это, конечно, любопытно
и даже важно,— скажет нетер- '
пеливый читатель,— но какое отношение имеет к этому
поиск?»
Оказывается, что самое прямое. Вид функции цели мы
всегда предполагали неизвестным, однако во многих реаль-
реальных задачах сам характер зависимости можно предсказать
из общих физических, химических или экономических зако-
закономерностей, подобно тому как мы предсказали характер
зависимости высоты падения от времени на основе про-
простейших законов механики.
Пусть, например, требуется установить, какова макси-
максимальная высота, которой может достичь снаряд, вылетаю-
вылетающий из пушки. Механика подсказывает, что закон изме-
изменения высоты таков:
Здесь Но — начальная высота, v0 — составляющая на-
начальной скорости снаряда, направленная вверх, a g — по-
прежнему ускорение свободного падения, которое, конечно,
замедляет движение снаряда вверх. (Сопротивлением воз-
воздуха для простоты пренебрежем.)
Если величины Но, v0 и g известны, то для отыскания
максимума никаких измерений не требуется: можно просто
вести подсчет значений функции Н (/) при любом заданном
/, а следовательно, действуя любым методом поиска, найти
максимум. Более того, наше небольшое знакомство с таким
понятием, как производная, позволит вообще обойтись без
поиска. Действительно, производную от полинома мы счи-
считать научились и без труда получаем
dH ,
Но в экстремуме производная обращается в нуль. Следо-
Следовательно, из условия
vo-gt=0
219
мы сразу находим значение времени /, соответствующее
экстремуму
причем
Этот экстремум единственный. По здравому смыслу ясно,
что он и есть максимум. Ну, а если постоянные неизвестны,
то, как мы уже знаем, достаточно произвести три измере-
измерения, и все будет в порядке. В нашей «артиллерийской» задаче
особых требований к точности не ставится, так что можно
считать величину g известной и равной 981 см/сек*, или
даже округленно 10 м/сек2.
Для оценки остальных величин достаточно иметь два
измерения, и притом совсем не обязательно вблизи макси-
максимума, который может быть скрыт за облаками.
Пусть измерено Н (^A))=100 м при /A)=0 и Н (^B))=
=600 м при /B)=2 сек. Тогда мы получаем два условия:
100=Я0, 600 = Я0 + у0-2-10 Ц-,
что сразу дает и #0, и vo—2&) м/сек. Легко подсчитать,
что наибольшая высота достигается при /—26 сек и равна
приблизительно 3,5 км.
Если функция цели вообще имеет вид
то ее производная, т. е. крутизна, линейная функция:
? = сх + 2с2х,
а вторая производная, крутизна крутизны, просто постоянна
и равна 2с2.
Координата экстремума задается условием
с1 + 2с2х = 0,
т. е.
х =— -Sl
Вспомним теперь, что в случае постоянства крутизны метод
Ньютона сразу, за один шаг, приводил в экстремум. Теперь
мы это легко можем понять: ведь применение метода тре-
220
бовало знания в исходной точке х{0) значений самой функции,
первой и второй производной. Но, зная эти величины, без
труда можно сосчитать и постоянные сх и с2. Действительно,
из формул следует, что
с = 1(Щ
2 2 ^ dx»
H
А раз так, то сразу находится координата экстремума:
Если читатель еще помнит формулу метода Ньютона, он
немедленно убедится, что выражение в правой части есть ре-
рекомендуемая координата следующей точки х[1); таким обра-
образом, оказывается, что х{1)=х3, если, конечно, функция
цели действительно имеет вид полинома 2-й степени.
С другой стороны, можно вспомнить, что оценка зна-
значений функции и ее производных в точке xw давалась по
трем измерениям функции цели в самой х[0) и двух близких
точках. Отсюда можно сделать два вывода:
а) если функция цели действительно описывается поли-
полиномом 2-й степени, то можно с тем же успехом проводить
измерения не в близких, а в любых трех точках в области
поиска;
б) сам метод Ньютона основывается на гипотезе, что
полином 2-й степени, выбранный так, чтобы он хорошо
описывал функцию цели в малой окрестности исходной
точки, дает приемлемое описание этой функции и вдали,
в районе экстремума. А раз так, то найденная в силу этого
приближенного описания координата экстремума должна
лежать близко к истинному, а если и не совпадает с ней,
то может быть взята в качестве хорошего следующего при-
приближения.
Ну, а как с этих позиций трактуется обычный метод
пропорционального поиска?
Если функция цели имеет вид
то ее производная, крутизна, постоянная и равна
dx x
221
Но чтобы определить с1у нет необходимости вычислять
производную. Достаточно найти значения функции в двух
точках, например в x{s) и xti)JrA, и получить два условия:
откуда сразу найдется, что
Значит, если функция линейна по х, то для оценки крутизны
можно производить измерения в любых двух точках, не
обязательно близких.
Метод же пропорционального поиска основывается на
гипотезе, что функция цели может быть описана как ли-
линейная лишь в малой окрестности точки x{i), а следова-
следовательно, и оценку постоянной d можно делать лишь по из-
измерениям в близких точках. Результат же оценки следует
использовать как указатель направления и темпа движения.
Те же рассуждения лежат в основе и градиентного метода
поиска для многомерных задач. Выдвигается гипотеза, что
в малой окрестности точки с координатами x[s), х$\...,
*{?' целевая функция может быть представлена как линей-
линейная функция координат
/(х1( хг, ... , хп)=с0 + с1х1 + с2х2+ .. . +спхп.
Частные производные этой функции по каждой из коорди-
координат равны *)
df д[__ а/ _
дх^' дх.2-С* дхп~С"'
т. е. самим неизвестным постоянным.
Перепишем выражение для функции в равносильной
форме:
/(хи *„..., *„) = с0 + c,x
...+cn(xn-x<ns>).
При этом более ясно видна зависимость непосредственно
от смещений координат из исходной точки.
*) Напомним, что при вычислении частной производной по какой-
либо координате все остальные считаются постоянными.
222
Ясно теперь, что для определения постоянных нет необ-
необходимости в непосредственном дифференцировании функции
цели. Достаточно измерить значение целевой функции
в исходной точке и в любых п других точках, чтобы по-
получить п линейных уравнений для нахождения неизвест-
неизвестных сг, си ..., сп. Конечно, стоит так задать эти точки,
чтобы такая система уравнений решалась полегче.
Простейший способ состоит в том, чтобы в каждой до-
дополнительной точке все координаты совпадали с исходными,
за исключением одной. Действительно, пусть координаты
первой из этих точек
Но тогда в результате измерения в этой и в исходной точке
приходим к условию
Дг(«) _1_ Л y<s> r(S)\ _ */v(S) v(S) v(S)~l4_^ A
Xl_ "T ^11 -*2 ХП ) — I \X1 > X1 > • • • , Xtl IT t-Liif
Из этого условия, независимо от всех других, сразу нахо-
находится постоянная
r Jfffv<
Но именно этой формулой мы и пользовались для оценки
крутизны функции цели в направлении координаты хи
когда описывали градиентный метод *).
Становится понятным и естественным ранее замеченное
нами явление: если Aj взято малым, но не настолько, чтобы
в пределах такой окрестности функция цели оказывалась
линейной (линии уровня резко искривляются), то и полу-
получаемые оценки оказываются неудачными, непохожими на
истинные крутизны. А неправильные оценки могут вызвать
и преждевременную остановку процесса поиска.
Наконец, читатель, наверное, еще помнит, какую важную
роль играла идея построения интерполирующей, прибли-
приближающей функции даже в самой простой схеме поиска —
переборе по точкам на сетке.
Итак, мы уяснили, что задача обработки результатов
измерений для оценки неизвестных постоянных, входящих
в гипотетическую функциональную зависимость, является
*) Ясно, что если точки выбраны и каким-либо другим способом,
определить постоянные с1( с2 с„, т. е. частные производные,
также возможно, но, вообще говоря, решая систему п уравнений.
223
центральной в методах поиска. Поэтому стоит еще раз
вернуться к описанным ранее классическим экспериментам.
От взора внимательного читателя не ускользнула раз-
разница между величинами постоянных g, полученная в двух
различных экспериментах. Конечно, читатель мог поду-
подумать, что данные просто касались двух различных пунктов
земной поверхности. Но, увы, автор может заверить чита-
читателя, что опыты проходили в одном и том же месте. В чем
же причина?
Ответ на этот вопрос, конечно, совершенно ясен: при той
высокой точности, с которой требуется определять ускоре-
ускорение свободного падения *),
неизбежно должны прояв-
проявляться ошибки. Причин их
возникновения множество:
и изменения плотности воз-
воздуха в сосуде (хоть он и
откачан, но не идеально),
и внешние сотрясения, и4
при особо точных измере-
измерениях даже изменение раз-
размеров груза под действием
<р<» а® а(з)9в) 9(Я ~9 собственного веса. Часть
Г Т г г 7 Т этих ошибок носит систе-
систематический характер, и
их можно учесть соответ-
соответствующими поправками, а
часть — случайна и меняется от опыта к опыту. Так что
если бы мы проделали ряд измерений, изменяя высоту
падения, а следовательно, и время пролета, то получили
бы нечто вроде такой картинки (рис. 14.2).
Исход каждого опыта на ней изображается точкой, абс-
абсцисса которой — половина квадрата времени падения,
измеренного в эксперименте, т. е. <р= t2/2, а ордината —
пройденный за это время путь (высота падения Н). По-
Поскольку опыты были поставлены так, чтобы тело падало
без начальной скорости, то эти величины должны быть
связаны линейной зависимостью
Рис. 14.2.
*) Реальные измерения проводятся и со значительно большей, до
8—9 значащих цифр, точностью. На рисунках же мы, напротив, будем
для наглядности изображать ошибки в преувеличенном виде.
224
График такой линейной зависимости, как мы уже хорошо
знаем,—• прямая, исходящая из начала координат. Следо-
Следовательно, все полученные точки должны лежать на одной
и той же прямой, тангенс угла наклона которой (с учетом
масштаба) и даст нам искомое значение постоянной g. Но,
как, впрочем, можно было предвидеть, точки измерений
никак не хотят размещаться на одной прямой. Каждая
из них претендует на то, чтобы прямая прошла именно
через нее, и притом все предложения равноправны, так как
в каждом измерении могут проявиться случайные ошибки,
а где больше и где меньше — сказать заранее невозможно.
Единственно, что действительно можно сделать,— это
провести прямую где-нибудь посередине, приняв некоторое
компромиссное решение. Но все же хочется осуществить
наиболее разумный компромисс. Естественно попытаться
провести прямую так, чтобы отклонения всех точек от этой
прямой были наименьшими, чтобы все точки лежали воз-
возможно ближе к прямой. Но как измерять эти отклонения
и как соизмерять между собой отклонения каждой из точек?
Здесь уже допустимы различные постановки, различные
формы выбора функции цели в рассматриваемой задаче
наилучшего приближения.
Классическими являются две. Первая такова: выбрать
прямую так, чтобы сделать возможно меньшим отклонение
от нее даже наиболее удаленной точки. При второй форму-
формулировке требуется найти такую прямую, чтобы сумма квадра-
квадратов отклонений от нее всех точек была наименьшей.
Первая формулировка принадлежит П. Л. Чебышеву,
очень важна практически, но, к сожалению, приводит
к достаточно трудным вычислениям *). Вторая, изученная
еще в самом начале прошлого века А. М. Лежандром
и К. Ф. Гауссом, приводит к вычислительно простой схеме
метода наименьших квадратов. К тому же с позиций теории
вероятностей, разъяснять которые мы не будем пытаться,
именно метод наименьших квадратов является наиболее
разумным, если отклонения вызваны случайными факто-
факторами. После этой краткой рекламы классических достиже-
достижений попытаемся разобраться в том, как же их практически
применять.
*) Вдумчивый читатель должен осознать родство между критерием
Чебышева и существенно более поздней исторически постановкой зада-
задачи об оптимальном поиске в § 13: желательно получить наилучший ре-
результат даже для наихудшего варианта.
225
Пусть было проведено всего пять измерений, результаты
которых указаны в таблице:
t
<р=
я
2
0
0
1
,1992
,01980
20
0
0
2
,2833
,04022
40
0
0
3
,3442
,05981
60
0
0
4
,3993
,07993
80
0
0
5
,4515
,1021
100
Если мы выберем какой-нибудь произвольный наклон с
зависимости Я от ф, т. е. предположим, что
Я = сф,
то разница между вычисленными по этой зависимости и из-
измеренными значениями высоты
при t = t^ = 0,\992 окажется равной 20—с-0,1980,
при f = /B> = 0,2833 » » 40 —с-0,4022
и т. д.
Суммируя квадраты этих разностей *), получаем выраже-
выражение, представляющее собой функцию от с:
F (с) = [ЯA>—сф(tA»)]2 f [ЯB>-сФ (гB>)]2 + ...
... + [ЯE> — сф(^>)]2 = [20—с-0,О1980]2 +
4_[40-с.О,04022]2+...+[100 —с-0,1021]а.
Выберем теперь постоянную с так, чтобы это выражение
стало минимальным. Предварительно раскроем выражения
квадратов разностей и сгруппируем слагаемые, содержа-
содержащие с в одинаковой степени:
F (с) = [(ЯA>J + (ЯB)J + • • • + (ЯE>J] —
— 2с[ЯA)ф (/A)) + ЯB>Ф (/B>) + • • • + # (В)ф СE))] +
+ с2 [ф2(гA)) + ср2 (tB)) + ... + ф<2) (t(В))] •
Минимум такой функции мы уже не раз находили. Ведь
она имеет вид
*) Возведение в квадрат приходится делать, чтобы не позволять
разностям, противоположным по знаку, компенсировать друг друга.
226
где величины а0, аи а2 полностью определяются результа-
результатами измерений. Минимум достигается при значении
Эта величина и представляет собой наилучшую оценку
постоянной ускорения свободного падения g, найденную по
результатам пяти измерений с помощью метода наимень-
наименьших квадратов. Ясно, что основная формула могла бы быть
без труда записана, если бы в нашем распоряжении было
произвольное число N измерений *):
ЯA'
С
Замечательная простота метода наименьших квадратов
сказывается еще больше, если функция, с помощью которой
мы хотим описать результаты измерений, зависит не от
одного, а от многих параметров и является функцией не
одной, а многих переменных.
Чтобы не загромождать изложение выкладками, огра-
ограничимся случаем двух неизвестных постоянных. Пусть
в результате N измерений в различных точках получено N
значений функции п переменных / (хи xit ..., хп). Коорди-
Координаты точек измерения будем, чтобы не путать их с номерами
самих координат, обозначать, как всегда, номерами сверху,
так что координаты, например, первой точки измерения
будутх[ь, х?\..., х1п>. Результаты измерений функции будем
нумеровать также /A), /B), ..., flN)). Из-за ошибок измерений
*) В том, что понятие «наилучшее приближение» условно и могут
быть выдвинуты различные разумные способы оценки степени «лучше-
сти», читатель может убедиться на том же примере. Не менее естествен-
естественно было бы определить неизвестную постоянную, вычислив наклон пря-
прямой, проходящей через такую точку, а потом приняв за оценку среднее
из этих наклонов:
• * * ~\
Читатель без труда убедится в том, что такое значение минимизирует
сумму квадратов относительных ошибок:
ГЯ"> —Сф(;Ц>Iг , ГЯ(г>—
L J+L
Преимущества того или другого способа могут быть выяснены, только
если ясна природа самих ошибок.
227
возможно, что
/AW«, х<1\ . . . , *«>)> /B)^/W2). Av -42>) и т. д.
Предположим, что из общих законов физики, химии
или другой науки, которая ответственна за изучаемое
в нашем эксперименте явление, известно, что функция
/ {хи х2 Хп) должна иметь вид
f = c1(f1 (xt, хг, ... , *„) + с2ф2 (х„ х„ ... , х„),
причем входящие в это выражение функции фх и фа пол-
полностью известны, т. е. их значения могут быть вычислены
для точки измерения с любыми координатами. Неизвестны
лишь постоянные с, и с2, которые и следует подобрать так,
чтобы наилучшим образом приблизиться к результатам
экспериментов*).
Подставим сначала в известные функции ipt и ф, значе-
значения координат точек измерения. Обозначим:
ф!1' = фЛ*!1' О, ф?} = ф.М11, • • •, 4").
Тем самым получим 2N чисел, соответствующих значениям
двух функций ф! и ф2 в iV точках измерения. При произволь-
произвольных значениях сх и с2 функция / будет отличаться в точках
измерения от полученных результатов измерений на вели-
величины:
Возводя каждую из разностей в квадрат и суммируя эти
квадраты, получим следующую функцию от пока произ-
произвольных сг и с3:
U{N) -
*) Собственно говоря, мы могли бы и не ссылаться ни на какие за-
законы природы, а рассуждать чисто формально: даны результаты измере-
измерений, следует выбрать постоянные так, чтобы наилучшим образом «по-
«подогнать» функцию заданного вида к полученным результатам Однако
при таком подходе уже не следует апеллировать к случайному харак-
характеру отклонений.
228
Следуя общей идее метода, мы должны теперь взять в ка-
качестве наилучших оценок постоянных сх и с2 те, которые
доставляют минимум F (сь с2), т. е. сумме квадратов от-
отклонений.
Вычислим сначала частные производные этой функции
по Ci и по с2. Не приводя промежуточных выкладок, запи-
запишем окончательные выражения:
§- = - 2 [/»>ф«» + ... + ГУЛ + 2сх [(ф«>J + ...
g = -2
Теперь остается либо применить градиентный метод поиска,
либо последовательно использовать аналитический способ.
Ведь если удастся найти такие сх и с2, чтобы удовлетвори-
удовлетворились условия
dct ' дс2 '
то при этих си с2 функция F (ci, c2) будет достигать экстре-
экстремального значения, которое, по смыслу дела, может быть
только минимумом. Но условия равенства нулю частных
производных, несмотря на их громоздкий вид, представляют
собой всего-навсего систему двух уравнений с двумя неиз-
неизвестными:
где коэффициенты an, a12, ааа, bu b2 выражаются через
известные числа:
а следовательно, и сами могут быть заранее подсчитаны.
Систему же двух уравнений с двумя неизвестными мы уж
как-нибудь решить сумеем и тем самым доведем дело до
логического конца.
229
Чтобы окончательно уверить читателя в том, что это
совсем несложно, приведем пример расчета, проведенного
первоначально еще Д. И. Менделеевым в 1881 г. и с тех
пор кочующий из одной книги по методу наименьших квад-
квадратов в другую. Проводились измерения растворимости
NaNO8 в воде при различных температурах. Результаты
измерений (N—9) приведены в первых двух столбцах таб-
таблицы (через i обозначен номер точки, i=l, 2,..., 9).
i
1
2
3
4
5
6
7
8
9
x(t)
0
4
10
15
21
29
36
51
68
66,7
71,0
76,3
80,6
85,7
92,9
99,4
113,6
125,1
Ф-
1
1
1
1
1
1
1
1
1
Ф</>
0
4
10
15
21
29
36
51
68
1
1
1
1
1
1
1
1
1
«11 = 9
0
i6
100
225
421
841
1296
2601
4624
= 10 124
0
4
10
15
21
29
36
51
68
fll2 = 234
f*> ф<"
66,7
71,0
76,3
80,6
85,7
92,9
99,4
113,6
125,1
&1 = 811,3
0
284
763
1210
1800
2690
3570
5800
8520
= 224 677
В ней через х обозначена температура в градусах Цельсия,
а через /— число условных частей NaNO3, растворившихся
в 100 частях воды.
Законы химии позволяют предположить, что зависи-
зависимость должна быть линейной:
f (х) — ct + с2х
Это — частный случай описанной выше теории, когда
переменная всего одна, а функции фх и фа имеют очень про-
простой вид:
Хотя для этого случая можно вывести и более простые
формулы, проведем выкладки по общей схеме. Все они
показаны в таблице, и читатель без труда может и просле-
проследить за ними, и при желании повторить их. Коэффициенты
Оц, а22, а12, Ьг, Ь2 получаются просто суммированием чи-
чисел, стоящих в соответствующих столбцах, так что система
230
уравнений имеет вид
9^ +234с, = 811,3,
234с1 + 10 124са = 24 677.
Решая ее, находим окончательно
с, = 67,5; са = 0,87,
что и приводит к указанной Д. И. Менделеевым зависимости
/ = 67,5 +0,87л:.
Читатель, конечно, уже понял, что сложность вычислений
в методе наименьших квадратов определяется прежде всего
числом постоянных, наилучшие значения которых требует-
требуется найти. Если бы таких постоянных было т, то и приш-
пришлось бы решать систему т уравнений с т неизвестными.
А это уже совсем непросто, если т, например, равно десяти.
Пришлось бы прибегнуть к помощи вычислительных машин.
Машинам же, да будет это известно читателю, более всего
удобно считать методом последовательных приближений.
С другой стороны, мы знаем, что метод последователь-
последовательных приближений и градиентный метод, примененный для
поиска минимума исходной функции F (си с2,..., ст),—
это одно и то же. Тем самым оказывается, что задача приб-
приближения по методу наименьших квадратов — типичная
задача поиска.
Напомним еще, что во всех предшествующих формулах
мы считали приближающую функцию линейно зависящей
от неизвестных постоянных. Квадраты отклонений содер-
содержали эти постоянные только в 1-й и 2-й степени или их
произведения, так что и сама функция цели, определяющая
степень близости, была очень проста. Это проявилось в том,
что ее частные производные оказывались снова линейно
зависящими от неизвестных постоянных, а аналитическое
условие экстремума — требование равенства нулю всех
производных — сводилось к системе линейных уравнений.
Если же неизвестные постоянные входят нелинейно,
например, f (х) должна иметь вид
то дело оказывается намного хуже. Сумма квадратов откло-
отклонений может оказаться очень скверной функцией от ct и са.
В § 9, где говорилось о всяческих неприятностях, упомина-
упоминалась и задача о расшифровке лауэграмм, решение которой
231
потребовало вмешательства «овражного метода». Эта за-
задача — типичная задача приближения функций. Суть ее
(в самом примитивном изложении!) такова. Кристалл про-
просвечивается проникающим, например рентгеновским, излу-
излучением. Лучи, проходя через кристалл, взаимодействуют
с его атомами, так что прошедший поток лучей теряет свою
равномерную структуру. На поставленной за кристаллом
фотопластинке одни места оказываются засвеченными силь-
сильнее, другие — слабее. Получается своеобразная фотогра-
фотография, отражающая результаты взаимодействия потока лучей
с атомами кристалла, называемая лауэграммой, по имени
физика Лауэ, который объяснил появление таких картинок
при облучении кристаллов рентгеновскими лучами. Физики
давно научились рассчитывать лауэграммы, если, конечно,
им были известны свойства кристалла — взаимное распо-
расположение атомов, расстояние между ними и свойства излу-
излучения. А если эти величины неизвестны? Тогда можно попы-
попытаться использовать сами лауэграммы для их оценки. При
произвольных значениях постоянных картина рассеяния
лучей рассчитывается по известным формулам, а значит,
целесообразно искать такие значения, чтобы расчетная кар-
картина совпала с наблюдаемой, или по крайней мере наимень-
наименьшим возможным образом от нее отличалась. Налицо — ти-
типичная задача теории приближений. Сложной и неприят-
неприятной ее делает именно то, что неизвестные постоянные входят
в расчетные формулы нелинейно. Это-то и заставляет изобре-
изобретать изощренные приемы поиска, да и эти приемы работают
только "тогда, когда в самой организации поиска учтена
специфика физической задачи, выделены «существенные»
и «несущественные» аргументы, о чем уже было сказано
раньше.
Итак, задача приближения функций — один из важ-
важнейших работодателей для процессов поиска. Но, с другой
стороны, методы приближения во многом определяют и ор-
организацию самих методов поиска. Мы уже убедились в этом,
анализируя идеальный случай, когда измерения произво-
производились без ошибок. Необходимость же борьбы со случай-
случайными ошибками делает такое содружество еще более по-
полезным.
Как уже говорилось, в основе градиентных методов лежит
гипотеза о возможности приближенно описать поведение
функции цели в малой окрестности текущей, «подозревае-
«подозреваемой на экстремум» точки с помощью линейной функции.
232
Если число координат равно п, то эта функция задается
(п-\-1)-и постоянной, которые требуется оценить по резуль-
результатам измерений. Для этого оказывается достаточным ровно
(я-Н)-го безошибочного измерения. А если измерения —
с ошибками? Тогда либо придется смириться с плохим
качеством оценок, либо потребуется провести побольше
измерений. Обе эти возможности обсуждались в § 10, но
в основном для одномерных задач. Ясно теперь, что методы
приближения функций существенно помогают разобраться
в том, как получить наилучшую оценку неизвестных по-
постоянных при наличии многих и не согласованных между
собой {из-за случайных ошибок) измерений. Если число
измерений т много больше числа д+1 неизвестных по-
постоянных, то разумно оценивать эти постоянные, прибли-
приближаясь к результатам измерений с помощью линейной функ-
функции и используя для этой цели метод наименьших квад-
квадратов *).
*) Раздел теории поиска, в котором основное внимание уделяется
способам оценки параметров функции цели при известной ее структуре,
называется «.планированием эксперимента». В рамках этого раздела
предложены, в частности, правила наилучшей расстановки точек изме-
измерений, в ряде случаев позволяющие получить оценки с наибольшей
точностью. Читатель может познакомиться со схемами планирования,
например, по книге [19], однако надо иметь в виду, что в работах по пла-
планированию эксперимента используется специфическая терминология:
результаты измерения называются репликами, аргументы целевой функ-
функции — факторами, область поиска — факторным пространством и
х. д.
§ 15
СХОДСТВО
И РАЗЛИЧИЕ
(Распознавание
образов)
Если вы сможете сказать, где
кончается обезьяна, и где
начинается человек, вы
окажете нам огромнейшую
услугу...
...Не одни только законы
природы дают человеку право
называться человеком: право
это должно быть признано
другими людьми, для чего
он должен пройти через
своеобразное испытание.
В е р к о р, «Люди или
животные?»
Расскажем сначала об одной
вполне реальной задаче. Врача
вызывают к больному. Жалобы:
тошнота, иногда даже рвота,
плохой аппетит, общая слабость.
Осмотр показывает, что у боль-
больного сильно увеличены печень
и селезенка.
Опытный врач, конечно,
сразу понимает, в чем дело —
болезнь очень серьезная: это
или рак, или инфекционная жел-
желтуха (болезнь Боткина). Или то,
или другое — сомневаться не
приходится, симптомы слиш-
слишком наглядны. Но что опреде-
определенно? Ведь две подозреваемые
болезни — это, как говорится,
две большие разницы. Если
рак — злокачественная опухоль
печени, поджелудочной железы
или желчного пузыря,— надо
срочно отправлять больного за
сотни километров в крупный
город, срочно делать операцию.
В этом — единственная надежда
на спасение человека. А если
желтуха, то достаточно изоли-
изолировать больного, поместить
в местную больницу и через
две-три недели можно надеяться
на полное выздоровление. Согла-
Согласитесь, что перед врачом —
нелегкая проблема диагноза.
Он еще и еще раз осматри-
осматривает больного. Желтизна кожи
бывает в обоих случаях. По-
Поверхностное прощупывание не
позволяет обнаружить увели-
увеличение желчного пузыря: если бы
этот симптом определился, по-
подозрения на рак сильно возрос-
возросли, но и его отсутствие не
234
позволяет быть уверенным в отсутствии раковой опу-
опухоли.
Врач сомневается, но, в конце концов, надо принимать
решение. И диагноз устанавливается, устанавливается на
основе почерпнутых из книг знаний, а главным образом
на основе интуиции, опыта врача, который имел дело со
многими подобными случаями и знает, к какому исходу они
привели.
Приходится опираться на интуицию, потому что диаг-
диагностические справочники не дают четкого правила разли-
различения этих болезней, и ни один врач до последнего времени
не мог утверждать, что он, хотя бы для себя, составил такое
правило. Тем не менее диагноз устанавливается, и увы,
иногда, и не так уж редко, устанавливается ошибочно.
Чтобы повысить достоверность диагноза, ученые-медики
используют традиционный метод — собирают и изучают
истории болезней. Ведь полная история болезни содержит
и описание наблюдавшихся клинических симптомов, и вы-
вынесенное врачом решение — диагноз, и результат — исход
болезни. Зачастую это бывают совсем не веселые истории,
но только их изучение позволяет судить, какому набору
симптомов какая в действительности соответствовала бо-
болезнь и насколько часто диагноз был ошибочен. К сожале-
сожалению, дело приходится иметь именно с набором симпто-
симптомов, признаков, ибо, как быстро выясняется, присутствие
или отсутствие любого отдельного признака, например
тошноты, решительно ни о чем не свидетельствует.
Серьезный врач-исследователь*) систематизирует матери-
материалы историй болезни в виде таблицы, например, такого вида:
12
...
1
13
2
37,5
3
0
4
0
5
1
6
1
7
1
8
0
9
0
10
1
11
0
12
1
13
1
14
1
Заклю-
Заключение
1
*) С проблемой диагностики рака и болезни Боткина автор позна-
познакомился по материалам, собранными изученным д-ром О. А.Дунаевским.
235
В каждую строчку помещаются сведения из- истории
одной болезни, точнее, ее начало, выявленные клинические
симптомы, и конец — заключение о том, какова была бо-
болезнь в действительности. Симптомы-признаки бывают раз-
различной природы. Одни можно непосредственно определить
числом, например, признак № 1 означает «продолжитель-
«продолжительность периода от начала заболевания до появления жел-
желтизны» и определяется числом дней, а признак № 2 озна-
означает «температура больного в день осмотра» и измеряется,
как обычно, в градусах. О других признаках можно сказать
только, наблюдаются они или нет. Например, признак № 4
означает «жалобы на боли в суставах». Они либо есть, либо
их нет. Можно было бы обозначить наличие знаком «+»,
а отсутствие — знаком «—», но можно обозначить и числом:
если есть, то поставить 1, а если нет, то 0. Именно так и
сделано в показанной таблице. Точно так же можно обозна-
обозначать и исход: если в конечном счете оказался рак, то поста-
поставить 1; если инфекционная желтуха — то 0. Впрочем, это
дело условное — можно поставить, например, вместо нуля
«—1». Важно одно: каждому признаку можно сопоставить
определенное число, каждому заключению — результату —
тоже определенное число.
В чем же состоит задача исследования после того, как
материал таким образом систематизирован? Необходимо
указать правило, по которому врач, наблюдая болезнь,
характеризующуюся конкретным набором симптомов-
признаков, мог бы предсказать, какова эта болезнь, болезнь
+ 1 или —1.
Для ответа на этот вопрос можно попытаться исполь-
использовать главный «секрет производства» — методы прибли-
приближения функций.
Действительно, считать, что рассмотрение набора при-
признаков позволит дать заключение о характере болезни, это
означает — считать, что заключение есть функция от зна-
значений этих признаков. Сколько признаков — столько и ар-
аргументов, их количество определяет размерность задачи.
В приведенном примере 14 признаков. Значит, заключение
есть функция от 14 аргументов, / (хи х2,..., хы). Эта функ-
функция своеобразна лишь тем, что может принимать только
два значения, +1 и —1, рак или желтуха, а в остальном —
функция как функция, не хуже других, с которыми при-
приходилось иметь дело в этой книжке. Беда только в том,
что какова она, каким сочетаниям хи х2,..., хы, каким точ-
236
кам в 14-мерном пространстве соответствует + 1 и каким
—1, мы не знаем.
Но в нашем распоряжении таблица с историями болез-
болезней. Каждая из них задается вполне определенным набором
значений, например,
xv = 13; х2 = 37,5; ... ; х14 = 1,
т. е. каждая строка таблицы определяет точку с известными
координатами, причем значение функции / в ней тоже из-
известно. Итак, каждая строка таблицы, каждая обработанная
история болезни имеет совершенно тот же смысл, что и ре-
результат измерения функции в определенной точке. Если
строк-историй 300, то и располагаемых точек измерения
тоже 300. Теперь задача стала яснее: необходимо выбрать
такую функцию f {хи х2,..., хы), чтобы вычисленные по
ней в указанных 300 точках значения были возможно
ближе к известным результатам измерений.
Честно говоря, мы хотим и большего. Ведь наша под-
подлинная задача — не только обобщить имеющийся материал
«историй-измерений», но и дать правило, позволяющее вра-
врачу при наличии любого сочетания симптомов при появле-
появлении любой точки в пространстве признаков дать правильное
заключение, т. е. установить истинное значение функции /.
Но так как мы заранее знаем только значения в ограни-
ограниченном числе точек, то значения во всех других можно
только предсказывать, экстраполировать. Именно эту за-
задачу экстраполяции и надо было бы решать. Но, не зная
свойств функции /, нельзя и экстраполировать. Поэтому
мы можем поступать так: сначала найти функцию, которая
бы хорошо описывала уже известные результаты, а потом
предположить, что она будет достаточно хорошо описывать
истинную функцию в точках, о которых мы пока не имеем
сведений. Напомним, что такой путь — обычный в задачах
поиска: мы проводили несколько измерений, по ним строили
функцию, хорошо описывающую результаты измерений,
а потом по этой приближающей функции пытались прогно-
прогнозировать поведение истинной функции цели.
Проблема теперь заключается в том, как выбрать вид
приближающей функции. Прежде всего она должна быть
не слишком сложной, потому что врач должен без особых
затруднений и без использования вычислительных машин
применить ее для постановки диагноза. Попытаемся вос-
воспользоваться классической идеей и искать приближающую
237
функцию f в виде комбинации известных функций ер1( ф2)...
..., фт с неизвестными, подбираемыми из условия наилуч-
наилучшего приближения, постоянными коэффициентами:
/ =с1ф1(л;11 .... xj+c^^, . .. , х„)+ ...
•••+сяфя(л1, ... , хп),
где п — число координат (в примере n=14), a m — число
постоянных.
Основная неприятность выявляется сразу: ведь истин-
истинная функция — негладкая, во всех точках, соответствую-
соответствующих симптомам рака, она
f
+/
равна 1, во всех точках,
..,__—___ соответствующих жел-
j тухе, равна —1.
j Если бы был только
?-*-х один признак, одна ко-
I ордината, то график ис-
J тинной функции можно
было бы представить в
виде, показанном на
Рис- •5-1,. рис. 15.1. Значит, и
ФУНКЦИИ фь..., фт, ДЛЯ
того чтобы было хорошее приближение, должны браться
ступенчатые, негладкие. И все равно, для хорошего при-
бл ижения таких ступенек потребуется достаточно много.
Есть и другая неприятность: пусть все же вычисления
привели к некоторой функции /, достаточно хорошо, с ма-
малыми отклонениями, приближающейся к результатам изме-
измерений. Но, вообще говоря, нельзя гарантировать, чтобы
функция / всюду имела значения либо +1, либо —1. А если
этого нет, то не совсем понятно, как воспользоваться подоб-
подобной функцией для предсказания истинного характера бо-
болезни. Ведь мы условились, что рак соответствует +1, а жел-
желтуха задается —1. Какой же смысл имеют любые другие
значения функции? Можно, конечно, дополнить условие
так: если />0, то предсказывается 1-я болезнь, если /<0,
то 2-я. Но при этом все ранее принятые способы оценки
близости в значительной мере теряют свое лицо: ведь нет
необходимости различать между собой все положительные
и все отрицательные значения. Ef ли истинная функция была
равна 1, а приближающая в той же точке покажет 0,1, то
формально отклонение равно 0,9, а по существу при приня-
238
той интерпретации никакого различия нет: в обоих случаях
указывается на 1-ю болезнь. Поэтому оценка близости по
методу наименьших квадратов здесь хотя и возможна, но
все-таки более чем условна.
Попытаемся избежать этих неприятностей, используя
приближающие функции другого вида. Для того чтобы
сообразить, какого именно, обратимся к гипотетическому
одномерному случаю, когда в нашем распоряжении есть
только один признак.
Стоит только взглянуть на рис. 15.1, как сразу возникает
мысль: для того чтобы определить искомую функцию, доста-
достаточно найти точку, в которой эта функция меняет знак
с плюса на минус. Если координата этой точки х~с, то
можно сразу сказать: либо при х>с f (х) — \ (и рак), а при
х<.с f (л:)=—1 (и желтуха), либо наоборот. Чтобы опреде-
определить функцию полностью, достаточно будет проверить ее
в одной известной точке. Итак, достаточно искать прибли-
приближающую функцию в виде
\— 1, если х — с<0,
а еще лучше, чтобы не путаться с проверкой — что справа,
что слева, искать ее сразу в виде
1( если ci
f(X\-
( — 1, если с^х —с0 < 0.
Здесь уже само собой получится, что либо сх положительно,
и тогда условия окажутся равносильны прежним, стоит
только разделить на сг и принять с=—; либо сх отрицатель-
но, тогда снова на него можно разделить, но при делении
на отрицательное число знак неравенства должен поменяться
на обратный, так что мы автоматически придем к противо-
противоположном/ варианту. Казалось бы, все прекрасно. Мы нашли
простую функцию, зависящую только от двух неизвестных
постоянных и притом позволяющую дать идеальное приб-
приближение к истинной. Стоит только подобрать с0 и сх так,
чтобы эта величина равнялась координате точки, отделяю-
отделяющей все значения признака, соответствующие одной болез-
болезни, от значений, соответствующих другой.
Например, можно было бы указать, что если продолжи-
продолжительность преджелтушного периода больше 20 дней, то это —
рак, а меньше — желтуха.
239
К сожалению, дело, как мы уже говорили, так просто
не решается. По одному признаку ставить диагноз не удает-
удается. В действительной картине (рис. 15.2) точки, соответст-
соответствующие раку и желтухе, перемешаны.
f
+/
i 1
< > i
il
XI i
i i
i !
i
Рис. 15.2.
Но ведь идею можно перенести и на многомерный слу-
случай, попытаться искать уже не граничную точку, а гранич-
граничную линию, граничную поверхность, отделяющую точки,
относящиеся к разным бо-
болезням, друг от друга.
Попытаемся представить
все это наглядно в двумер-
двумерном случае, когда при-
признаков только два. На
рис. 15.3 изображены кре-
крестиками условные точки,
соответствующие раку, а
> ноликами — желтухе, а ко-
*' ординатами их, естественно,
являются числовые значе-
значения двух признаков. Ясно,
что эти точки можно отделить друг от друга гладкой грани-
границей, например прямой линией. Если это — прямая, то, разы-
разыскивая приближающую функцию в виде
- | 1, если сд+сд- с0 >0,
/ (*i. *2)^ \ , , ^ 0
мы сможем подобрать постоянные с„, си с2 так, чтобы она
точно совпадала с истинной во всех точках измерения.
Действительно, приближающая функция меняет знак только
при условии, что
Рис. 15.3.
240
или
*2 - са с2 **'
а ведь таким образом связаны, как мы знаем, координаты
точек, лежащих на прямой (рис. 15.3).
Подбирая Со, съ с2, мы можем подобрать любую прямую,
в том числе, конечно, и ту, которая задает истинную гра-
границу. Значит, дело сводится только к поиску значений
постоянных, и, разумно организовав поиск, мы сможем до-
добиться, чтобы 7 (*ь хг)= f (xu хг) на всех измеренных
точках.
С другой стороны, если с помощью прямой разделить
области невозможно? Тогда у нас два пути. Можно все-таки
выбирать / в уже описанном виде, т. е. пытаться отделять
точки, соответствующие разным болезням, прямой, но уже
стремиться не к полному совпадению истинной и прибли-
приближающей функции во всех известных точках, а лишь к их
наибольшей близости при всех возможных вариантах вы-
выбора постоянных. Но можно попытаться использовать
и более общий закон:
fix х)=1 1' еСЛИ Cl(Pl (*]> Хг) + '' ¦ + с-ф" (jq> x*> > 0>
1( 2 \ — 1, если c1(pl (*!. *,)+•••+ стц>т (*!, x%) < 0.
Здесь снова сръ фа,..., фП1 — произвольные, но заранее из-
известные функции, например,
а си с2,..., ст—подбираемые постоянные. Это означает,
что уравнение границы мы уже ищем в форме
• • • + стцт = 0.
Конечно, возможностей здесь больше, но, правда, неясно,
какие функции ф брать за основу *). Впрочем, одно на пер-
первый взгляд хорошо: их явно можно брать гладкими и в не
слишком большом количестве, потому что ведь точки, соот-
*) Существуют задачи различения двух возможных вариантов ис-
исходов, где выбор функций фь . ., ц>,„ подсказывается самим существом
дела, но это редко бывает в медицинской диагностике. Можно отметить
и одно формальное обстоятельство: если рассматривать фь . . .. ф,л как
новые переменные, то относительно этих переменных уравнение грани-
границы — простое, линейное.
241
ветствующие различным болезням, не стоят вплотную друг
к другу и между ними можно провести множество вариантов
границ, в том числе и достаточно гладких. Увы, если точки
сильно перемешаны, как на рис. 15.4, то и никакой разум-
разумной границей их друг от друга не отделишь. Более того,
в этом и нет особого смысла: ведь приближающая функция
нужна нам для экстраполяции, а экстраполяция основана
на гипотезе относительно гладкого поведения функции.
Приближающая функция
действительно достаточно
гладкая всюду, кроме гра-
границы, где она изменяется
скачком. Если же попытать-
попытаться отделить друг от дру-
друга точки измерений на
рис. 15.4, то граница ока-
жется поблизости почти от
любой возможной точки и
^ шансы на хорошую экстр а-
Xf поляцию в большинстве
Рис 154 случаев исчезают.
Можно лишь надеяться,
что если признаков достаточ-
достаточно много и они выбраны разумно (ведь врачи выбирали их по
возможности со смыслом, не пытаясь различать болезни по
длине волос пациентов!),. то таких безобразий не будет,
и удастся провести не слишком извилистую границу, полу-
получая если и не полное разделение (полное совпадение истин-
истинной и приближающей функций), то по крайней мере хорошее.
Остается теперь разобраться в том, как же организовать
поиск наилучших значений постоянных. Если применять
первый подход, где в приближающую функцию постоянные
си с2,..., ст входили линейно, то формально, как уже гово-
говорилось, возможно применение обычного метода наименьших
квадратов, сводящегося к решению систем линейных урав-
уравнений. А вот при втором, более привлекательном по смыслу,
подходе дело с поиском обстоит куда хуже, ведь здесь-то
постоянные входят нелинейно, да еще при их изменении
функция f может изменяться резко, скачком с +1 на —1
или наоборот. Тут вообще применение стандартного анали-
аналитического метода — найти производные и приравнять их
нулю — не проходит, ибо и самих производных из-за нали-
наличия скачков не найдешь: для вычисления производных
242
требуется гладкость в некоторой окрестности. Поэтому при-
приходится прибегать к специальным приемам поиска. В настоя-
настоящее время таковых придумано великое множество, но рас-
рассказать о них просто — не слишком простое дело. Все же
попытаемся, но, чтобы несколько облегчить себе жизнь,
вспомним старый принцип — «два» — это уже «много», и
ограничимся задачами, где всего два признака, а граница
ищется в виде прямой. Будем снова исходить из метода
наименьших квадратов. Составим сначала функцию цели —
оценку близости истинной и приближающей функции
F(c0, clt c2) =
= [fa)-/W", 41')]2 + • • • + [f{N)-l(x[N), x[N))]\
Эта функция F равна сумме квадратов отклонений во всех
точках измерения 1, 2,...,N при произвольном выборе
Со, си с2' Поскольку и истинная функция f, и прибли-
приближающая / могут принимать только значения +1 или —1,
то значение величин в каждой из скобок может быть равно
либо 0 (если / и J в этой точке совпадают), либо ±2 (если
значения / и / различны; например, /(S)=1, т. е. в дейст-
действительности в случае 3 был рак, a J(xf\ *BS))=—1, т. е. по
построенному правилу — ошибочно ставится диагноз «жел-
«желтуха»). Следовательно, значение F равно учетверенному
(ибо (±2J=4) числу случаев, когда использование приб-
приближающей функции с постоянными с0. си с2 приводит
к ошибкам. Ну, а поскольку от деления на 4 форма функции
и расположение минимума не изменится, то минимизация
записанной функции равносильна минимизации числа оши-
ошибок при выбранном правиле диагноза на всех известных нам
случаях.
Поскольку функция / может меняться скачком при из-
изменении постоянных, то и F (со, си с2) обладает таким же
свойством. Впрочем, это понятно: ведь F (с0, си с2) — учет-
учетверенное число ошибок, а число ошибок может быть только
целым. Если постоянные чуть изменятся, то и граница
сдвинется. Если же при изменении границы все точки, кото-
которые были справа, справа и останутся, равно как и все, что
были слева, то число ошибок, естественно, не изменится.
Если же одна точка «перекочует» через границу, то число
ошибок скачком изменится на 1, a F — на 4.
243
"Of
Чтобы дальнейшее было совсем просто, рассмотрим опять-
таки гипотетический случай, когда при поиске границы мы
ограничиваемся прямыми, проходящими через начало коор-
координат, и предполагаем, что заведомо лучше располагать
область, относящуюся к 1-му классу (рак!), выше прямой,
а область, относящуюся ко 2-му классу (желтуха), ниже
прямой. (Конечно, расположение «крестиков» и «ноликов»
на рис. 15.5 подсказывает такое решение, но надо помнить,
что в действительно многомерном случае никакими картин-
картинками мы не располага-
располагаем.) Если такое упроще-
упрощение принято, то прибли-
приближающая функция оказы-
оказывается зависящей только
от одной неизвестной по-
постоянной С наклона гра-
граничной прямой:
1 (х х ) =
| 1, если хг > Схг,
Xf \ — 1, если хг < Cxlt
Рис. 15.5.
а следовательно, и число
ошибок зависит только
от С. Применим теперь стандартную идею локального про-
пропорционального поиска.
Зададимся некоторым произвольным значением С=СШ
и подсчитаем число ошибок на всех случаях (оно равно
74 F (С)), но читатель, конечно, понимает, что его можно
подсчитать и без всякой функции F, которая была введена
только для того, чтобы показать связь такого подхода с ме-
методом наименьших квадратов). Изменим далее С(о) на поло-
положительную величину А, т. е. чуть повернем прямую и снова
сосчитаем число ошибок. Тогда возможны три ситуации:
а) число ошибок уменьшилось, б) оно увеличилось, в) оно
осталось неизменным. В случаях (а), (б) стоит перейти от
С(о) к новому значению Сш, измененному по сравнению с С(о>
на величину, пропорциональную изменению числа ошибок
(в случае (а) СA)>С@\ в случае (б) СШ<С1О>). Если же
число ошибок не изменилось, то придется увеличить размер
пробного шага А и снова произвести сравнение, пока не воз-
возникнет случай (а) или (б), и тем самым выяснится, в каком
244
направлении надо изменять наклон прямой, чтобы перейти
к лучшему значению СA). Отталкиваясь от него, можно,
как обычно, повторить процедуру.
Описанный метод, конечно, может быть формально пере-
перенесен и на общий, многомерный случай. Придется лишь
изменять каждую из величин Со, Си С2,..., Ст в соответст-
соответствии с изменением числа ошибок при «пробном шаге» А
по каждой из этих величин и неизменных остальных. Од-
Однако возникает много реальных неприятностей. Прежде
всего, зависимость числа ошибок от коэффициентов обычно
не только имеет горизонтальные участки, но и, более того,
может иметь несколько локально низших уровней. В этом
можно убедиться, взглянув на рис. 15.6, а, где представлен
ч
го
18
16
14
12
10
8
6
2
-
\ /~
Ч, п П П—Г
\rlhj
V Ь-1
-
Ofi 0,8 1Я 1,6 2,0 с
1 2 3 4 5 х,
б)
Рис. 15.6.
график зависимости F (С), соответствующий расположению
«крестиков» и «ноликов» на рис. 15.6, б. Поэтому локальные
методы, даже использующие сглаживание неровностей за
счет большой величины пробного шага (увеличения А),
могут застрять на одном из промежуточных уровней, не
дойдя до истинного, глобального минимума. Средства лече-
лечения от глобальных «неприятностей» мы уже обсуждали
в § 11. Впрочем, в этих задачах придуманы и некоторые
специфические приемы, хотя ни один из них, конечно, не
может дать гарантии «объять необъятное».
В частности, замечательные успехи достигнуты в том
случае, когда заведомо известно, что существует возмож-
возможность точного разделения. Например, известно, что
245
существует такая прямая, по одну сторону которой ока-
окажутся все «крестики», а по другую — «нолики».
Идея одного из предложенных методов очень проста, и
ее стоит продемонстрировать на нашей двумерной картинке.
Пусть «истории болезней» используются не сразу, а по-
постепенно. Рассмотрим первый случай, когда обнаружился
рак, а симптомы имели значения, соответствующие коор-
координате точки 1 на рис. 15.7, а. Проведем граничную прямую
Рис. 15.7.
через эту точку, т. е. выберем начальное приближение для
коэффициента С~СA) так, чтобы
Л
——
Л1
Затем рассмотрим второй случай, тоже определенный как
рак (рис. 15.7, б). Оказалось, что первоначальное прибли-
приближение ошибается: вторая точка попала в область, перво-
первоначально отведенную желтухе. Ну что ж, введем исправле-
исправление, изменим коэффициент С так, чтобы прямая проходила
через новую точку, возьмем
и тем расширим область, отведенную для точек, соответст-
соответствующих раку. Если на следующей точке так построенное
правило не ошибается, то и не надо его менять. Если же
ошибка есть, то снова происходит уточнение.
246
Процедура совершенно элементарная и четко работаю-
работающая, в чем читатель может убедиться и сам. Эффективность
ее действия в многомерном случае (когда постоянных не-
несколько и нет предварительной ориентации) обосновывается
сложнее. Оказывается, что, вообще говоря, точки приходит-
приходится использовать несколько раз (дойти до 300-й, а потом
снова вернуться к 1-й), однако все же гарантировано пол-
полное отделение за конечное число приближений, если оно
действительно возможно.
Если же точки расположены так, что при данном типе
приближающей функции достичь полного отсутствия оши-
ошибок вообще нельзя, то описанный простой метод, к сожале-
сожалению, к минимуму ошибок не приводит. Как же все-таки
поступать в этих случаях? Есть путь первый: усложнять
правило, надеясь, что более хитрой границей все-таки
удастся добиться полного разделения, а потому и окажется
возможным пользоваться простыми итеративными проце-
процедурами вроде только что описанной. Но сколько взять
постоянных, насколько сложным должно быть правило —
сказать тоже сложно. Путь второй заключается в том,
чтобы ограничиться достижением локального минимума
или вообще приемлемо малого числа ошибок.
Есть возможность сочетать оба эти пути, беря сначала
простое правило, добиваясь выбором постоянных уменьше-
уменьшения числа ошибок до возможного уровня, а потом усложняя
это правило с использованием прежних результатов. Так,
например, практически решалась и наша исходная задача
о диагностике рака и инфекционной желтухи. Получившееся
правило *) выглядело очень просто: если у больного увели-
увеличен желчный пузырь и он жалуется на сильный зуд, то
почти наверняка у него рак**). Если же нет, то из этого не
следует обратного заключения: возможен и рак, и желтуха.
В этом случае применяется более тонкое правило: если
у больного суставные боли, а зуд умеренный, то почти на-
наверняка просто желтуха. Если же нет, то опять-таки сохра-
сохраняется неопределенность и приходится применять допол-
дополнительное правило. Таким образом, общее правило диагноза
*) Описываемое правило было построено Р. М. Малкиной.
**) Надеюсь, что среди читателей не найдется очень мнительных и
никто не будет заниматься самодиагностикой на основе этих правил.
Напоминаю, что прежде, чем их применять, врач должен установить
предварительный диагноз, выяснив, что у больного либо рак, либо
желтуха и нет никакой другой болезни.
247
распалось на ряд последовательно применяемых простых
правил, каждое из которых совершенно элементарно. При-
Причина такого распадения заключается в том, что граница
строилась не в виде отдельной прямой, а точнее, плоскости,
а в виде последовательности кусков плоскостей, наращи-
наращиваемых по мере того, как принимались во внимание все
более и более сложные для диагноза случаи.
Возможно, найдется никогда ничем, кроме насморка,
не болевший читатель, который давно уже возмущается,
почему столь много внимания уделено одной, весьма частной
медицинской задаче. Но вдумчивый (этот признак не отри-
отрицает-физического здоровья) читатель наверняка понял, что
проблема «рак или желтуха» — лишь одна из множества
подобных же медицинских проблем. Более того, он, навер-
наверное, понял, что и медициной дело не ограничивается.
Проблема технической диагностики (как судить по внеш-
внешним признакам, исправна или неисправна машина), интер-
интерпретации геофизических данных (как по косвенным дан-
данным определить, принесет будущая скважина нефть
или только воду), наконец, проблемы общения с вычис-
вычислительной машиной (как вводить в машину данные с ру-
рукописных документов, если каждый человек пишет одну
и ту же букву «б» по-своему, да так, что ее не отличишь
от «д») — все это задачи одного типа, задачи поиска сход-
сходства и различия, внутренне родственные описанной меди-
медицинской задаче *).
Во всех проблемах, объединяемых наименованием «рас-
«распознавание образов», мы первоначально располагаем лишь
образцами правильной классификации. Например, был из-
известен перечень случаев, когда болезнь определенно являет-
является раком (класс 1) и определенно является желтухой (класс
2), или перечень случаев, когда после окончания бурения
скважины из нее определенно начала фонтанировать нефть
или столь же определенно простая вода. Кроме того,
оказалось, что каждый из этих случаев можно было
характеризовать набором чисел — признаков, которые
удовлетворяют двум условиям. Во-первых, измерить
значения этих признаков можно проще или рань-
раньше, чем может быть достигнута прямая классификация.
Выяснить, какова температура у больного, конечно,
*) О том, как возникают такие проблемы, очень живо и интересно
написано в книге Я. И. Хургина [20] Сведения об основных методах их
решения можно пополнить по книге [21].
248
проще и быстрее, чем вспарывать ему живот и разыскивать
опухоль, которой, может быть, вовсе и нет. Равным обра-
образом, прозондировать электрическое сопротивление пласта
легче, дешевле, чем полностью подготовить скважину, не
имея уверенности, что из нее пойдет что-нибудь стоящее.
Во-вторых, и это очень важно, сам набор признаков не
должен быть «взят с потолка», его должны установить
опытные специалисты в данной, конкретной области —
медики, геофизики, инженеры.
Устанавливать исправность или неисправность двига-
двигателя самолета в полете по цвету глаз бортпроводницы заве-
заведомо нелепо, но только специалист может сказать, что
хорошим признаком является интенсивность колебаний
корпуса, и притом в некоторых диапазонах частот.
Таким образом, каждый случай должен задаваться набо-
набором признаков, и таким, что хотя по любому, отдельно
взятому признаку произвести точную классификацию не-
невозможно, но все же каждый из них, будучи доступным для
измерения, несет в себе какие-то полезные сведения.
Задача поиска правила классификации есть задача обра-
обработки этих сведений, выявления их сути и представления
этой сути в удобной компактной форме. Кстати, о компакт-
компактности: ясно, что никакая формальная математическая об-
обработка в принципе не может увеличить объем сведений,
который заключается в исходном материале, в исходных
образцах. Переходя от перечня из трехсот историй болезни
к правилу построения приближающей функции, содержащей
5—10 постоянных, мы заведомо теряем часть сведений, со-
содержащихся в этих историях. Поэтому, может быть, было
бы разумно вовсе не проводить никакой обработки, а просто
дать каждому врачу таблицу с классифицированными исто-
историями болезней и пусть он, выяснив клинические симптомы
у своего очередного больного, посмотрит в эту таблицу,
найдет самый сходный случай (ближайший по совокупности
признаков) и установит диагноз по этому прецеденту *).
*) Такой юридический термин использован не случайно. Ведь анг-
англо-саксонское судопроизводство, в отличие от нашего или французского,
основывается именно на этом принципе. Там нет уголовного кодекса,
т. е. системы правил, определяющих характер наказания за каждый тип
преступления. При обсуждении и вынесении приговора юристы должны
обращаться к историям ранее принятых решений в аналогичных или
близких случаях, изучению прецедентов. Многочисленные тома с опи-
описанием прецедентов — обязательная и неотъемлемая принадлежность
реей судебной деятельности в Англии и США.
249
Этот метод может быть научно обоснован и описан
формально математически (надо ведь договориться, что
такое самый сходный, самый близкий случай), более того,
иногда он оказывается единственно эффективным методом.
Однако, увы, он очень неудобен для практического приме-
применения.
Трудно и подыскивать самый сходный случай из сотен
известных, да и хранить все эти списки.
Ведь, например, врач сталкивается со множеством раз-
различных проблем диагностики; так не копить же ему коллек-
коллекции таблиц по всем болезням.
Вместе с тем, как уже говорилось, в самой идее непосред-
непосредственного подбора сходных случаев, несомненно, есть глу-
глубокий смысл. Чтобы примирить противоречия, ученые
пошли на компромисс и предложили такой способ.
Выберем среди множества образцов из каждого класса
по одному или небольшому числу наиболее ярких, четко
выраженных случаев и будем сохранять только их. Потом
же, когда возникнет необходимость классифицировать
новый случай, просто проверим, к какому из сохраненных
«образцовых образцов», эталонов, этот случай ближе.
Если ближе к эталону из 1-го класса, значит, отнесем новый
случай именно к классу 1. В противном случае, естественно,
и вывод противоположный.
Наверное, не стоит рассказывать, по каким принципам
отбираются эталоны. Эти принципы тесно связаны с особен-
особенностями каждой отдельной задачи и обычно базируются
на некоторый вероятностных представлениях. Скажем
только, что наиболее часто используется следующая идея:
существует, хотя нам заранее не известен, некоторый истин-
истинный эталон, например некоторая образцовая буква а. Все же
встречающиеся случаи другого написания этой буквы
являются лишь искажением этого эталона, случайно от
него отклоняющимся. Тогда, беря, например, средние
значения признаков, которыми характеризуется каждый
образец написания, можно надеяться установить признаки
эталона.
Вместе с тем читатель должен понимать, что и классифи-
классификация по сходству с эталоном или эталонами является также
способом построения приближающей функции. В этом
можно убедиться по двумерной картинке (рис. 15.8). На ней
представлены «крестиками» и «ноликами» точки, соответст-
соответствующие исходным образцам из двух классов (координаты
250
точек — это, как обычно, значения признаков в каждом
случае). Из «крестиков» и «ноликов» выберем по одному
эталонному, лежащему, например, в самой гуще однотипных
точек. Тогда правило классификации по сходству (в смысле
близости по расстоянию)
разделит плоскость на две
части. Слева от прямой
Л — А все точки ближе к
эталону 1-го класса, спра-
справа— к эталону из 2-го*).
Поскольку мы услови-
условились относить.любой но-
новый случай к классу 1
или 2, основываясь на
условии близости, то пря-
прямая А — А задает гра-
границу классификации. Она
описывается уравнением
*в — Xi — 3. Очевидно,
такой способ классифика-
«г
2
0
-2
-
X
1
2
-А
*
X
X
/
X X
"я
4
X
X
0
i 0
1
yt
X
0
'о)
6
/
0
'ооо
0 О
/
/
1
о
»1
8
/А
г
Рис-
ции равносилен построению приближающей функции в виде
fix,, *,) =
| 1, если дг2 > х1 — 3,
\ — 1, если хг<х1 — 3,
и классификации по знаку этой функции.
Итак, мы убедились, что задачи распознавания образов
по своему математическому характеру являются задачами
приближения функций, и притом очень тяжелыми задачами.
Решение каждой из них, хотя и использует общие идеи
поиска, но требует и специфических приемов, которые
обычно удается придумать, только разобравшись во внут-
внутренних особенностях каждой задачи.
Если же этих особенностей, проявляющихся в поведении
функции, не учитывать, то дело сведется к очередной по-
попытке «объять необъятное». Бывает, конечно, что такие
попытки оказываются удачными, но гарантировать успех
невозможно.
В заключение можно заметить, что проблеме распозна-
распознавания образов многие ученые придают биологическую и
*) Прямая А — А проводится перпендикулярно отрезку, соеди-
соединяющему эталоны через середину этого отрезка.
251
даже психологическую окраску, и зто сказалось в самом
названии. Действительно, задачи распознавания обычно
таковы, что их решение до последнего времени основыва-
основывалось только на интуиции человека, нажитой им в резуль-
результате длительного опыта.
Построение схем поиска, которые могут быть реализо-
реализованы на универсальных или специализированных машинах,
отвоевывает у интуиции еще один важный плацдарм (при
условии, конечно, что схемы хорошо работают!). Это факт
несомненный и очень интересный. Однако некоторые ученые
пытаются идти дальше и рассуждают примерно так. В ре-
результате поиска удается прийти к решению тех же проблем,
что и на базе человеческой интуиции. Тогда, не представ-
представляют ли формулы поиска математической модели тех таин-
таинственных процессов, которые происходят в человеческом
мозгу при формировании обобщенных представлений о том,
что такое «рак» и «буква а» и чем они отличаются от желтухи
во всех ее проявлениях и буквы «б» во всех ее написаниях?
С другой стороны, нельзя ли, изучая то, как рассуждает
человек, пытаясь провести классификацию, построить хо-
хорошие схемы поиска, удобные для вычислительных машин?
Эти гипотезы крайне заманчивы и имеют много сторон-
сторонников. Однако автор уже высказывал свое скептическое
отношение к подобным «бионическим» или «психоническим»
концепциям, хотя они, несомненно, играют полезную
роль при популяризации новых идей и даже, возможно,
в начальный период их становления, когда еще не удается
дать четкой и ясной формальной постановки задачи.
Не пытаясь судить о пользе для психологии таких мате-
математических моделей, автор склонен отрицательно относиться
к попыткам второго рода, попыткам извлекать из психоло-
психологических представлений
схемы поиска для вычисли-
вычислительных машин. Дело в том,
что машина — устройство
специализированное, удел
которого — работа с числа-
числами, но уж это-то дело она
умеет совершать куда луч-
лучше и быстрее, чем человек,
и притом по-своему, пред-
предпочитая всему на свете тупо
повторяющиеся итератив-
252
ные .процедуры. Быстрота действия в ней превалирует над
памятью, знаниями, и это отличие предопределяет успех
или неуспех схем. Процедуры, удобные для человека, мо-
могут быть совсем не удобны для машины.
Как специализированное устройство для счета, машина
в этой узкой области, несомненно, превосходит универсаль-
универсальный гений человека. Узкая специализация — это, конечно,
недостаток, но это и достоинство. Если вы хотите слушать
только центральное радиовещание, не покупайте радио-
радиоприемник, а тем более телерадиомагнитолу, купите репро-
репродуктор — и дешевле, и надежней, и помехи не беспокоят.
Задача человека — не конкуренция с машиной в ее
специализированной сфере действия, а эксплуатация ма-
машины. Подсовывая ей задачи, бывшие ранее «чисто челове-
человеческими», необходимо обеспечить их преобразование в удо-
удобоваримую числовую форму и заготовить схему решения,
приспособленную к способностям машины, ее симпатиям
к повторяющимся операциям.
Если это удается сделать, то человек может и должен
уступить само решение машине.
В этом нет ничего унизительного для человеческого
гения, как нет ничего дурного в вымирании профессии
землекопов с появлением экскаватора.
§ 16
ПОСЛЕДНИЙ
О капитан, мой капитан!
Сквозь бурю мы прошли.
Изведан каждый ураган,
и клад мы обрели.
У. Уитмен
Автор надеется, что название
этого параграфа понравится
даже самому усердному чита-
читателю. Ведь несмотря на все ав-
авторские усилия придать по-
повествованию развлекательный
характер, читатель, конечно,
осознал, что поиск — это наука,
а наука — это не цирк: никакие
юмористические отступления не
избавляют от необходимости
активно шевелить мозговыми из-
извилинами, а следовательно, за-
затрачивать достаточномного энер-
энергии.
Естественно подвести итоги,
с толком ли были произведены
затраты.
Итак, мы узнали, что:
1. Множество важных практи-
практических задач упирается в не-
необходимость поиска наилучших
решений. Среди них — настрой-
настройка режима работы машин, вы-
выбор траекторий самолетов и ра-
ракет, обнаружение неисправ-
неисправностей, обработка эксперимен-
экспериментальных данных и организация
эксперимента, распознавание об-
образов.
2. Задача поиска наилучшего
решения может быть поставлена
как математическая проблема
поиска экстремума функции
цели.
3. Если число возможных ва-
вариантов конечно, то в принципе
осуществимы их последователь-
последовательное опробование и выбор наилуч-
наилучшего. Более того, полный пере-
перебор — единственный способ
обнаружения наилучшего ва-
варианта, если между значениями
254
функции, соответствующими различным вариантам, нет
никакой связи или эта связь до конца решения задачи
остается неизвестной исследователю.
4. Связь между вариантами позволяет объединять их
в группы, уменьшая объем перебора.
5. Если множество вариантов бесконечно, но каждый
из них задается конечным набором чисел-координат, от
которых функция цели зависит непрерывно, то возможно
объединение вариантов по принципу «близкие варианты
дают близкие результаты» и допустимо решение исходной
задачи перебором на сетке.
6. Перебор на сетке обычно приводит-к необходимости
сравнения хотя и конечного, но зачастую практически
необъятногЪ числа вариантов. Единственной реальной
возможностью остается поиск локально оптимального («луч-
(«лучшего из соседей») варианта.
7. Идея локального поиска вместе с идеей экстраполя-
экстраполяции (прогноза) позволяет построить ряд эффективных ме-
методов:
а) градиентный (пропорциональный) поиск,
б) постоянно-шаговыйг поиск,
в) релаксационный поиск,
г) поиск со случайным выбором направления.
Сравнительная эффективность этих методов не может быть
установлена без дополнительных предположений о харак-
характере поведения функции цели.
8. Применение локальных методов сталкивается с труд-
трудностями при наличии
а) «оврагов» и «гребней» в рельефе целевой функ-
функции,
б) ограничений на диапазон изменения перемен-
переменных.
Первые могут преодолеваться за счет введения случай-
случайного большого шага. Вторые могут потребовать изменения
правила выбора направления при выходе на границу
(использования одного из подходящих "возможных направ-
направлений).
9. Существенная трудность при организации поиска —
случайные ошибки измерений. Основной способ борьбы —
усреднение результатов измерений. Имеется возможность
точного выхода к экстремуму путем постепенного снижения
темпа движения, приводящего к усреднению в ходе самого
движения.
255
10. Если отыскания локального экстремума недоста-
недостаточно, то, кроме регулярного перебора на сетке, возможен
случайный выбор вариантов с выделением лучшего из выб-
выбранных. Поиск может быть эффективен, если в нем соче-
сочетается возможность выбора любого варианта с преимущест-
преимущественным выбором вариантов, близких к лучшим из ранее
найденных. Однако по-прежнему справедливо утверждение
«нельзя объять необъятного», если в необъятном количестве
вариантов нет внутренних связей.
11. Если, напротив, функция цели хорошо организована
и характер этой организации известен, то и сам поиск можно
организовать так, что он потребует малого числа измерений.
Для любых одногорбых функций одной переменной можно
гарантировать убывание размера области, где.может на-
находиться экстремум, в геометрической прогрессии.
12. Уметь правильно построить процесс поиска означает
уметь использовать исходные знания о свойствах функции
цели, зная набор типовых приемов преодоления типовых
неприятностей.
Наряду с этими двенадцатью заповедями мы освоили ряд
формул, по которым можно вести подсчеты как вручную,
так и с помощью вычислительных машин. Большая часть
этих формул удобна для машинного счета. На их базе может
быть организована либо полуавтоматическая система по-
поиска, либо полностью автоматизированная.
В первом случае за человеком остаются постановка эк-
эксперимента и измерение значения целевой функции для
данного выбранного варианта. Вычислительная машина же
на основе результата измерения укажет, какой следующий
вариант должен быть опробован.
Во втором случае вычислительная машина связывается
непосредственно с автоматическим исполнительным меха-
механизмом, изменяющим режим работы оптимизируемого объек-
объекта, а результаты измерения нового значения целевой функ-
функции вводятся вновь в вычислительную машину.
Конечно, когда функция цели задана хоть и сложной,
но математически формализованной зависимостью, процесс
поиска может протекать внутри самой вычислительной
машины.
Главное во всем сказанном то, что непосредственные
действия по поиску лучшего варианта могут быть заданы
совершенно формальным образом, а следовательно, и отданы
на откуп машине.
256
За человеком же в принципе остается лишь роль «верхов-
«верховного божества», назначающего общую структуру, логику
процесса поиска *).
Для столкновения человека с вычислительной машиной
вовсе не характерна трагическая атмосфера конфликта,
которую столь любят описывать фантасты. Человек еще
более очеловечивается, избавляясь от необходимости про-
проделывать утомительные однообразные действия или вычис-
вычисления, а заодно и очеловечивает машину, передавая ей
эти, хотя и однообразные, но осмысленные функции.
Таковы итоги. Они должны вдохновить усердного чита-
читателя и заставить его поверить, что постановка в эпиграф
к этому параграфу знаменитых уитменовских строк — не
пустая бравада.
Но — в последний раз произнесем слово «но» — все
же стоит честно признаться читателю, что в действи-
действительности до «изведанности» глубин поиска он еще очень
далек.
Книга эта — маленькая, да и значительную ее часть
пришлось затратить на разъяснение впомогательных мате-
математических понятий. Поэтому в ней рассказано о многом
понемногу, а о многом и совсем ничего.
Ничего не удалось сказать о процессах поиска, где дви-
движение к экстремуму идет не шаг за шагом, а непрерывно.
Тем самым читатель лишился возможности узнать о замеча-
замечательных свойствах ряда специальных автоматических систем
поиска.
Был обойден могучий аналитический метод борьбы с огра-
ограничениями, придуманный еще великим Лагранжем и обоб-
обобщенный нашим современником Канторовичем, а потому
трудно было говорить и о многочисленных проблемах по-
поиска оптимальных решений в экономике.
Лишь слабые намеки были сделаны по поводу задач
поиска, в которых функция цели зависит от бесконечного
числа переменных. Тем самым отпал разговор об оптималь-
оптимальных системах автоматического управления и многих инте-
интересных задачах физики.
Наконец, мы лишь косвенно использовали идею о наи-
наилучших действиях в условиях конфликта, когда две (или
*) Поскольку эта логика, в особенности в итеративных схемах ло-
локального поиска, очень проста, то зачастую целесообразно использо-
использовать не универсальные, а простые специализированные вычислительные
устройства.
257
более) стороны участвуют в поиске и притом каждая по-
своему понимает, что такое хорошо и что такое плохо.
Следствие — невозможность рассказать об удивительно
интересных игровых задачах и хотя бы намекнуть на их
практическую значимость.
Таких пробелов можно было бы указать куда больше,
не говоря уже о том, что мы старательно огрубили все мате-
математически тонкие вопросы и не дали возможности читателю
получить удовольствие от изящных доказательств сходи-
сходимости и оценок точности поиска.
Словом, цитадель оптимальности далеко не полностью
завоевана. В ней еще много великолепных сокровищниц,
охраняемых высокими стенами и глубокими рвами. В неко-
некоторые из них вообще не удается проникнуть, не вооружив-
вооружившись до зубов современной математикой, однако к боль-
большинству вполне можно нащупать пути и с помощью доста-
достаточно элементарного здравого смысла. Одна из причин,
в силу которых многие из этих путей не были здесь указаны,
кроется в нежелании (да и в неспособности) автора конку-
конкурировать с целым рядом уже созданных и притом блестяще
написанных книг.
Вместе с тем автор надеется, что ознакомление с его
книгой вызовет у любопытного читателя еще большее лю-
любопытство. Для того чтобы облегчить поиск хороших книг
о поиске, дальше дается их список.
ЛИТЕРАТУРА *) 1°. Б е л л м а н Р., Процессы регу-
регулирования с адаптацией, перев.
с англ., изд-во «Наука», М.,
1964.
2°°. БеллманР.,ДрейфусС,
Прикладные задачи динамиче-
динамического программирования, перев.
с англ., изд-во «Наука», М.,
1966.
3. Бнрман И. Я-, Оптимальное
программирование, изд-во «Эко-
«Экономика», М., 1968.
4. Б о р е л ь Э., Вероятность и
достоверность, перев. с франц.,
изд-во «Наука», М., 1969.
5. Вилеикин Н. Я, Метод
последовательных приближений,
серия «Популярные лекции по
математике», вып. 35, нзд-во
«Наука», М., 1968.
6. Вильяме Дж. Д., Совершен-
Совершенный стратег, или Букварь по
теории стратегических игр, пе-
перев. с англ., изд-во «Советское
радио», М., 1960.
7. Воробьев Н. Н., Числа
Фибоначчи, серия «Популярные
лекции по математике», вып. 6,
изд-во «Наука», М., 1969.
8°°. Гурии Л. С, Дымар-
ский Я. С, Меркулов
Д. А., Задачи и методы опти-
оптимального распределения ресур-
ресурсов, изд-во «Советское радио»,
М., 1968.
9°. Кофман А., Фор Р. Зай-
Займемся исследованием операций,
перев. с англ., изд-во «Мир»,
М., 1966.
10. Л е р н е р А. Я-, Начала кибер-
кибернетики, изд-во «Наука», М.,
1967.
П. Мостеллер Ф., Р у р-
к е Р., Т о м а с Ж., Вводный
*) Книги, около номеров которых не стоит никаких пометок, до-
доступны при школьных математических познаниях. Книги, помеченные
знаком °, требуют предварительного знания основ математического ана-
анализа, например, в объеме стандартной программы технического вуза.
Если у номера книги стоит знак °°, то это свидетельствует о больших
математических требованиях. Список таких, более сложных книг мог
бы быть, конечно, существенно расширен. Здесь даны только три ссыл-
ссылки на книги [2, 8, 211, поскольку как раз в них содержится наиболее
полная библиография о методах поиска и их приложениях.
259
курс теории вероятностей, перев. с англ., изд-во «Мир», М.,
1969.
12. Н а г и б и н Ф. Ф., Экстремумы, изд-во «Просвещение», М., 1966.
13. Натансон И. П., Простейшие задачи на максимум и ми-
минимум, серия «Популярные лекции по математике», вып. 2, Гос-
техиздат, 1950.
14°. Оптимальные задачи надежности, Сб. статей под редакцией
М. А. Ушакова, Комитет стандартов, М., 1968.
15°. Р а с т р и г и н Л. А., Случайный поиск, изд-во «Зинатне»,
Рига, 1965.
16°. У а й л д Д. Дж., Методы поиска экстремума, перев. с англ.,
изд-во «Наука», М., 1967.
17°. Ф е л л е р В., Введение в теорию вероятностей и ее приложения,
перев. с англ., изд. 2-е, изд-во «Мир», М., 1964.
18°. Ф е л ь д б а у м А. А., Вычислительные устройства в автомати-
автоматических системах, Физматгиз, М., 1959.
19°. X и к с Ч., Основные принципы планирования эксперимента,
перев. с англ., изд-во «Мир», 1967.
20. X у р г и н Я- И., Ну и что?, изд-во «Молодая гвардия», М., 1967.
21°°. Ц ы п к и и Я- 3., Адатация и обучение в автоматических систе-
системах, изд-во «Наука», М., 1968,
22. Я г л о м А. М., Яглом И. М., Вероятность и информация,
Физматгиз, 1960.
ИМЕННОЙ УКАЗАТЕЛЬ Абель н. х. гн
Беллман Р. 199, 200, 259
Бернштейн С Н. 214
Бирман И. Я. 259
Борель Э. 259
Вейерштрасс 214
Виленкин Н Я- 259
Вильяме Дж. Д. 259
Винер Н. 214
Вольфовиц Дж. 158
Воробьев Н. Н. 177, 259
Гайдуков А. Л. 128
Гаусс К.-Ф. 38, 98, 214, 225
Гельфанд И. М. 143
Герасимов Н. И. 16
Гурин Л. С. 259
Данциг Дж. 199, 205, 213
Дрейфус С. 259
Дунаевский О. А. 235
Дымарский Я- С. 259
Канторович Л. В. 214, 257
Кифер Е. 158, 176
Колмогоров А. Н. 214
Кофман А. 259
Лагранж 214, 257
Лауэ М. 232
Лежандр 225
Лернер А. Я. 259
Липшиц 27
Малкина Р. М. 247
Мандельштам Л. О. 152
Менделеев Д. И. 230
Меркулов Д. А. 259
Монро С. 158
Мостеллер Ф. 259
Нагибин Ф. Ф. 260
Натансон И. П. 260
Ньютон И. 38, 54, 103, 214
Растригин Л. А. 260
Роббинс Г. 158
Рурке Р. 259
Томас Ж. 259
Уайлд Д. Дж. 260
Ушаков М. А. 260
Феллер В. 260
Фельдбаум А. А. 6, 152, 2&0
Фибоначчи 177
Фор Р. 259
Фриш Р. 167
Хикс Ч. 260
Хургин Я. И. 248, 260
Цетлин М. Л. 143
Цыпкин Я. 3. 260
Чебышев П. Л. 214, 225
Яглом А. М. 260
Яглом И. М. 260
261
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ
Алгоритм поиска 8
Антш радиент 78
Аппроксимация стохастическая 158
Блуждание случайное 152
Величина безразмерная 74
Вероятность 109, 112
Выбор пути поиска 8
— равномерный 123
— случайный с предпочтением по рас-
расстоянию 167
— н направлению 169
с промежуточными спусками 166
— с управлением плотностью из-
измерений 172
— совершенно случайный 165
Градиент 78
Дерево вариантов 200
Диагностика 234
Дисперсия 121, 155
Дифференцирование 58
Дрейф экстремума 163
Дробь двоичная 113
Задание дискретное функции цели 14
Задача двумерная 17
— многомерная 17
— многоэкстремальная 164
— одномерная 16
— экстремальная 13
Закон больших чисел 116, 149
Интерполяция линейная 21
Итерация простая 64
Критерий оптимальности 175
Лауэграмма 144, 231
Линия равного уровня 68
Метод возможных направлений 138
— градиентный 140
— золотого сечения 187
— математической индукции 58, 177
— наименьших квадратов 214, 225
— Ньютона 54, 65, 103
— параллельных касательных 102
— постоянно-шаговый 95
— проектирования градиента на гра-
границу 135
— релаксации 98, 137
— случайного поиска 106
Множество 13
Направление подходящее 79
Область определенна 13
— поиска 13
Овраги 139
Ограниченность области поиска 131
Ожидание математическое 120
Оптимизация 13, 206
Отказ прибора 194
Отклонение среднеквадратичное 121
Оценка апостериорной плотности
вероятностей 172
Ошибка непостоянная 146
— систематическая 145
— случайная 145
Перебор на сетке 19
Планирование эксперимента 233
Поиск корней уравнения 158
— локальный 29
— оптимальный одномерный 174
— пропорциональный 39
— случайный 138
— — локальный 104
Приближение функций 214
Принцип оптимальности 200
Прогноз поведения функции 39
Программирование динамическое 190
Производная 57
— вторая 65
— частная 78
Пространство факторное 233
— функциональное 13
Процедура итерационная 34
Процесс детерминированный 152
Развертка спиральная 30
— строчная 30
Разложение двоичное 113
Размерность 91
— задачи 25
Распознавание образов 234, 248
Релаксация 98
Реплика 233
Симметрия выражения 83
«Слой овражный» 143
Спуск наискорейший 67, 132
Схема поиска основная 7
— пропорциональная 42
— релаксационная 88, 139
— шаговая 95
Теория вероятностей 108
— игр 213, 259
Тест-программя 9, 197
Точка перегиба 62
— седлова я 84
— стационарная 62
Точность измерений 145
Траектория квазистатически опти-
оптимальная 212
Узел сетки 20
Условие Липшица 27
Фактор 233
функция 13
— кусочно-постоянная 21
—унимодальная 176
— цели 11, 13, 14
Цель поиска 7, 11
Число случайное 119
— Фибоначчи 177
Шаг «овражный» 143
— сетки 20
— случайный 143, 165
Шум дробовой 149
— теплоьой 148
Экстремум 13
— глобальный 36
— экстреморум 36
262
От автора 3
О Г ДАВЛЕНИЕ '
§ 1. Интуиция и логика (Основная схе-
схема поиска) 7
§ 2. К чему мы стремимся' (Понятие о
функции цели) 11
§ 3. Ловись рыбка, большая и малень-
маленькая (Поиск путем перебора на сет-
сетке) 19
§ 4. Ближний бой (Локальный поиск на
сетке) 29
§ 5. Мысль и действие (Пропорциональ-
(Пропорциональный поиск) 39
§ 6. Пути в пространстве (Наиско-
(Наискорейшей спуск) 67
§ 7 Генеалогия поиска (Релаксацион-
(Релаксационные схемы. Сравнение методов) . . 88
§ 8. Рыцари удачи и Закон (Локаль-
(Локальный случайный поиск) 104
§ 9. Всяческие мелкие неприятности
(Локальные методы в условиях
ограниченности области поиска и
наличия оврагов) 131
§ 10. Обман, везде обман (Случайные
ошибки) 145
§11. Пять способов объять необъятное
(Многоэкстремальные задачи) ... 164
§ 12. Наилучший поиск наилучшего
(Оптимальный одномерный поиск) 174
§ 13. Дороги, которые мы выбираем
' (Динамическое программирование) 190
§ 14. Секрет производства (Метод наи-
наименьших квадратов) 214
§ 15. Сходство и различие (Распозна-
(Распознавание образов) 234
§16 Последний 254
Литература 259
Именной указатель 261
Предметный указатель 262