При анализе целей и средств задачи Ханойской башни определяется одна из очевидных подцелей — положить самую большую по диаметру монету в 5 рублей на третий лист бумаги. Этого нельзя сделать сразу, так как на ней лежат монеты в 2 рубля и 1 рубль — следовательно, надо рассмотреть вторую подцель. Она заключается в создании ситуации, когда двухрублевая монета лежит на пятирублевой. Эта подцель будет достигнута, если монета в 1 рубль будет лежать на втором листе бумаги, а монета в 5 рублей на третьем. Эта подцель не может быть достигнута, поскольку первым можно перемещать только рубль. Таким образом, последовательно рассматриваются подцели, определяющие конец каждого этапа, и действия, направленные на их достижение. Окончательное решение со всеми необходимыми ходами показано на рис. 9.12. Если вы попробуете решить эту задачу не с тремя монетами, а с четырьмя или пятью, то убедитесь, что она значительно усложнится, хотя стратегия решения останется прежней.
Рис. 9.12. Решение задачи Ханойской башни.
Обратите внимание, как достижение поставленных подцелей обеспечивает продвижение к основной цели.
Решение с конца
Анализ целей и средств является примером прямой стратегии — все планируемые действия ориентированы на приближение к подцели и, в конечном итоге, к основной цели. Иногда полезнее оказывается стратегия планирования операций решения с конца, которые обеспечивают движение от конечной цели назад — к текущему или исходному положению. Простейшим примером такой стратегии может служить игра в обожаемые детьми лабиринты, нарисованные на бумаге, которые нужно проходить с помощью карандаша.
Многие из этих лабиринтов содержат несколько возможных путей, отходящих от начальной точки, и среди них только один верный путь, который приведет в конец лабиринта к заветной цели. Даже маленькие дети понимают, что они смогут ускорить решение такой задачки-лабиринта, если пойдут в обратном направлении, начав движение с конечной точки и прорисовывая путь к началу лабиринта. Пример такого лабиринта приведен на рис. 9.13.
Стратегия решения с конца очень удобна, если от конечной цели ведет меньше путей, чем из исходного положения. Разумеется, эта стратегия может быть применена не только для прохождения лабиринтов. Рассмотрим такую задачу: «Площадь, которую покрывают водяные лилии на одном из озер, удваивается каждые двадцать четыре часа. С того момента, как появилась первая лилия, до того, когда лилии полностью покрыли поверхность озера, прошло шестьдесят дней. Когда озеро было покрыто наполовину?» (Fixx, 1978, р. 50).
Единственным путем решения этой задачи является применение стратегии решения с конца. Можете ли вы решить ее, пользуясь этой подсказкой? Если озеро полностью было покрыто лилиями на 60-й день, а площадь, которую покрывают лилии, удваивалась каждые сутки, какая часть озера была закрыта в 59-й день? Ответ: половина. Таким образом, пользуясь обратным ходом, мы легко решили эту задачу. Прямая стратегия решения этой задачи наверняка завела бы нас в тупик.
Иногда оказывается эффективной комбинация прямой стратегии и стратегии решения с конца. Если вы столкнулись с геометрической или тригонометрической задачей на доказательство, то, вполне вероятно, прибегнув к комбинации этих двух стратегий, вы успешно с ней справитесь. Вы можете начать с конечного выражения, преобразуя его до какой-то определенной стадии, затем последовательно переходить от преобразования этого выражения к преобразованию исходного выражения и наоборот — до тех пор, пока они не совпадут на каком-то промежуточном этапе.
Рис. 9.13. Стратегия решения с конца удобна, когда из конечной точки ведет меньше путей, чем из исходного положения.
Упрощение
Вы все обдумываете и обдумываете свою задачу; попробуйте упростить ее… Довели ли вы ее до максимально возможного упрощения, до той ясности, которая наталкивает на мысли?
Полья (Роlуа, 1962)
Задачи, вызывающие затруднения при решении чаще всего сложны по структуре. Хороший способ справиться с такой задачей — это упростить ее настолько, насколько возможно. Нередко удачно выбранная форма наглядного представления задачи сама способствует ее упрощению, поскольку позволяет «увидеть» эффективный путь решения.
Предположим, вы столкнулись с классической задачей «кошка на дереве». Согласно устоявшемуся мнению, кошки могут карабкаться вверх по деревьям, но не могут спускаться. (На самом деле в этом утверждении не больше правды, чем в том, что слоны боятся мышей.) Предположим, вам надо снять кошку с ветки, расположенной на высоте 10 футов. В вашем распоряжении имеется единственная лестница длиной 6 футов. Для того чтобы лестница была надежно установлена, ее основание должно находиться на расстоянии трех футов от ствола. Дотянетесь ли вы до кошки?