Шрифт:
3. Алгоритм жадности
Вторая сила плато,
или Стремясь заинтересовать учащихся, преподаватель обсуждает с ними, каким образом деление в столбик помогает развивать твердость характера, поскольку требует времени, терпения и решимости довести работу до конца
Эта сцена – одна из наиболее запоминающихся за всю историю кино, однако многие люди помнят ее не совсем точно. Мы имеем в виду монолог Гордона Гекко из фильма «Уолл-стрит», известный словами «Жадность – это хорошо». Вам кажется, что персонаж Майкла Дугласа говорит ужасные и недопустимые с точки зрения морали вещи? На самом же деле в его словах имеется довольно много нюансов:
«Жадность, за неимением лучшего слова, – это хорошо. Это правильно. Это работает. Жадность все проясняет, позволяет пробиться через препятствия и содержит в себе саму суть эволюционного духа. Жадность во всех своих формах – будь то к жизни, деньгам, любви, знаниям – символизирует движение человечества вверх…»
Эти нюансы, которые часто упускают из виду, невероятно важны. Ряд исследований, проведенных в течение прошлого столетия, показали, что в так называемой долгосрочной жадности нет ничего плохого – однако краткосрочная жадность, работающая на «здесь и сейчас», поначалу приносит свои плоды, однако почти всегда ведет к плато.
Итак, жадность хороша… и плоха. Как же провести границу? Мы хотим подарить Гордону Гекко – и вам – лучшее словосочетание для описания происходящего, которое он просто не смог вовремя найти. Все зависит от вашего горизонта вознаграждения.
Короткий горизонт вознаграждения (представьте себе двухлетнего ребенка, который хочет все и сейчас) побуждает вас принимать решение, правильное с позиций сегодняшнего дня, пусть даже оно делает ваше будущее менее определенным. Короткий горизонт закрывает ваши глаза шорами, заставляя видеть лишь следующий, а не последний шаг. В итоге ваши решения почти всегда ухудшают ваше положение в будущем. В то время как долгосрочная жадность, заставляющая вас подавлять свои насущные потребности и желания в интересах долгосрочного исхода, представляет собой один из самых прямых путей к успеху.
У математиков есть свой термин для описания такой краткосрочной жадности и процесса постоянного выбора варианта, обеспечивающего мгновенное вознаграждение, – «алгоритм жадности». Следование ему почти всегда приводит к плато {47} .
Чтобы понять, как работает алгоритм жадности, представьте себе, что вы стоите на углу двух улиц на Манхэттене. Вам нужно быстро добраться до здания, находящегося в 20 кварталах к северу, и вы не ограничены в денежных средствах.
47
Алгоритмы жадности всегда направлены на поиск локально оптимального решения. Ученые-компьютерщики постоянно используют эти алгоритмы для случаев, когда у них нет возможности посмотреть в будущее и понять, что ждет их впереди. Техническое описание алгоритмов жадности приведено в книге: Thomas Cormen et al., «Introduction to Algorithms», 3 ed. Cambridge, MA: MIT Press, 2009.
Представим себе трех путешественников: уроженца Нью-Йорка, туриста и третьего человека, руководствующегося в жизни исключительно алгоритмом жадности, – назовем его жадиной. Для простоты давайте предположим, что один квартал можно пройти пешком за одну минуту.
Первый вариант состоит в том, чтобы пройти два квартала на юг, добраться до станции метро, а затем подождать еще три минуты поезда, движущегося на север. Поезд едет со скоростью четыре квартала в минуту.
Второй вариант заключается в том, чтобы потратить две минуты на поиск такси, способного проехать (по пробкам) два квартала в минуту.
Третий вариант состоит в том, чтобы просто пойти пешком на север.
Уроженец Нью-Йорка знает, что метро – самый быстрый способ перемещения по городу. Метро позволяет преодолеть пробки, аварии и не отклоняется от маршрута, в отличие от недобросовестных водителей такси. В данном случае речь идет о так называемом ретроградном прогрессе, при котором текущие потери компенсируются ожиданиями будущих преимуществ. Житель Нью-Йорка решает пройти два квартала в неверном направлении (что отдаляет его от точки назначения на 22 квартала), а затем подождать поезда метро еще три минуты.
Турист же видит перед собой океан желтых такси, пытается остановить их в течение пары минут, а затем садится на заднее сиденье одного из них и пускается в путь.
Жадине кажется, что другие путешественники сошли с ума. Ни один из них не совершает моментального прогресса при движении в намеченную сторону. Он же видит такую возможность и направляется на север.
Если мы будем делать моментальные снимки происходящего во время этого путешествия, то увидим, что в краткосрочной перспективе жадина сделал наилучший выбор. Через две минуты после начала путешествия он уже продвигается вперед. Турист только садится в машину, а житель Нью-Йорка терпеливо ждет поезда в 22 кварталах от точки назначения.
Через пять минут ситуация начинает меняться. Турист проносится мимо жадины в такси, однако житель Нью-Йорка так и ждет своего поезда.
Через восемь минут после начала путешествия картинка начинает выглядеть совершенно иначе. Жадина остался далеко позади, а поскольку поезд метро едет в два раза быстрее такси, в котором сидит турист, то житель Нью-Йорка смог быстро наверстать отставание.