В ноябре журнал Quanta озадачил своих читателей вопросами, касающимися составления фигур из одинаковых плоских предметов (таких, как монеты или костяшки домино). В этой статье даны как вопросы, так и подробные ответы на них.
Вопрос 1
В классической задаче построения нависающей фигуры все блоки должны быть однородными, одинаковыми по размеру и форме, и их длина принимается за единицу. На каждом уровне фигуры может быть только один блок. Блоки нельзя соединять или склеивать. Если у вас есть пять таких блоков, на какую максимальную длину может высунуться конец верхнего блока за край стола, на котором они лежат? Можете ли вы вывести формулу для максимального нависания при использовании n блоков?
Физически задача требует сбалансировать крутящий момент фигуры с двух сторон края стола. Крутящий момент каждой стороны находится произведением массы этой стороны и расстояния от центра масс до края. Когда центр масс всей фигуры находится над краем, на обе её стороны действует одинаковый момент, и общий крутящий момент системы равен нулю. Для составного объекта общий крутящий момент для любой грани можно найти, сложив крутящие момент всех составных частей. Поэтому мы можем разделить и властвовать над изначальной задачей, рассматривая только изменения, происходящие при добавлении нового блока к существующей стопке, нечто вроде математической индукции (назовём это физической индукцией).
Рассмотрим стопку из n-1 блоков, каждый из которых весит одну единицу веса и имеет длину в одну единицу длины. Стопка сбалансирована на краю стола. Представьте, что линия взгляда направлена вдоль края стола, и стол слева – то есть, свисающие концы блоков высовываются вправо. Поскольку стопка сбалансирована на краю, центр масс находится прямо над краем, и её крутящий момент равен нулю. Теперь представим, что мы подняли всю стопку вертикально, и расположили ещё один блок под ней так, чтобы его правый край был вровень с краем стола. На практике это может оказаться сложным, но в мысленном эксперименте это просто.
Мы добавили немного стабильности стопке, добавив n-ный блок снизу, поскольку центр масс всей стопки немного сместился влево. Обозначим это смещение х. n блоков весят n единиц, и у них появился общий крутящий момент x*n вокруг края стола, направленный влево. Вспомним, что у стопки из n-1 блоков общий момент нулевой. Мы добавили только момент нового блока – массой в одну единицу массы и с расстоянием до центра масс от края стола в половину единицы длины.
Получается, что x*n = 1/2, а значит, x = 1/2n, где x – расстояние до нового центра масс от края стола.
Это значит, что если вы сдвинете всю стопку из n блоков вправо на 1/2n длины, она будет идеально сбалансирована на краю – и это максимально возможный сдвиг. Для завершения построения индукции отметим, что максимальный свес первого блока с края стола составляет 1/2 единицы длины.
Поэтому, для пяти блоков мы подставляем в формулу n для каждого уровня от 1 до пяти, чтобы получить максимальный свес:
x=1/2+1/4+1/6+1/8+1/10=137/120=1,141(6)
Видно, что если начать сверху и затем добавлять блоки вниз, каждый сдвиг составит половину от обратного количества имеющихся блоков. Такие последовательности из обратных чисел известны, как гармонические ряды. Такой ряд медленно расходится, и при устремлении n к бесконечности тоже стремится к бесконечности.
Общая формула суммы для n блоков получается суммированием всех членов ряда. Получается половина n-ного гармонического члена, который можно записать, как:
Вопрос 2
Представьте, что у вас есть те же пять блоков, и вы хотите поставить на самый верхний из них некое украшение, в точке, удалённой на четверть длины блока от свисающего конца. Все блоки весят по одной единице веса, а украшение весит одну пятую от блока. Какая теперь длина максимального нависания? Как это меняет основную формулу?
Сначала рассмотрим первый блок с украшением, стоящим на нём, и лежащий так, что его правый край находится на одном уровне с краем стола. Центр масс блока без украшения находится в половине единицы длины от края стола. Украшение сдвинет его вправо, допустим, на x. Масса украшения 1/5, а его расстояние от нового центра масс будет 1/4-х. Приравняем моменты и получим х = 1/5*(1/4-х), следовательно, х = 1/24. Из-за украшения необходимо подвинуть первый блок влево на 1/24 длины, поэтому максимальный свес составляет теперь 11/24 вместо 1/2.
Для последующих блоков можно применить ту же индукцию, что и в первом вопросе. Получаем уравнение х(n+1/5) = 1/2, которое для n блоков упрощается до 1/2(n+1/5). Это даёт нам последовательность 1/24 + 5/12 + 5/22 + 5/32 + 5/42…, что приводит к максимальному нависанию в 1,057 для пятиуровневой фигуры. Отметим, что нависание первого блока не укладывается в общую схему благодаря дополнительному весу украшения. Тем не менее, появляется простая гармоническая последовательность, через которую легко можно высчитать окончательную сумму.
Вопрос 3
Представьте, что вы соревнуетесь с другом в игре, в которой необходимо создавать нависающие структуры. Сначала у вас есть по одному блоку. Вы ставите свои блоки с любым нависанием от края стола. Затем вам выдают случайное, но одинаковое количество дополнительных блоков от одного до четырёх. Каждый ход начинается с изначального блока в качестве основы, положение которого потом менять нельзя, и с дополнительного набора от одного до четырёх блоков. Как сильно вам нужно вынести изначальный блок за край стола, чтобы у вас оказался максимально возможный свес после большого количества ходов?
Поскольку вероятность наличия от двух до пяти блоков одинакова, вам нужно максимизировать сумму, обозначающую максимальный свес для этих четырёх случаев. Для стопки из 2-5 блоков есть оптимальная позиция первого блока, дающая максимальный свес всей стопки. Если построить на графике наибольший свес для каждого из четырёх возможных размеров следующей стопки, получится два линейных графика и два графика в виде перевёрнутой V. Их вершины указывают оптимальную начальную позицию изначального блока для стопок из 3-4 блоков. Просуммировав графики, получим общий график свеса, резко меняющий направление в каждой из четырёх оптимальных позиций. Оказывается, что наилучший общий свес достигается в оптимальной позиции для трёх блоков, после которой график идёт вниз. Поэтому нужно располагать изначальный блок в предположении, что вам дадут три дополнительных блока, и свес составит 1/6 единицы длины.
Читатели указали несколько ограничений, запрещающих этому гипотетическому математическому мосту уходить в бесконечность: ветер, неравномерность, отсутствие бесконечной точности, эластичность или недостаточная твёрдость блоков и стола, и т.д. Это, конечно, правильно. К этому можно добавить кривизну Земли и отсутствие бесконечного пространства. Какое из этих ограничений быстрее всего обвалит нашу стопку? Для ответа на этот вопрос полезно изучить смежный с ним: если забыть о свесах с края и просто складывать блоки Jenga один на другой, математически ограничения на высоту башни нет. Но развалят её небольшие несовершенства в блоках и неточность в их построении, а роль последней соломинки сыграет вибрация или ветер. То же верно и для нашей свешивающейся фигуры. Если скорректировать все эти факторы, в какой-то момент сыграет и жёсткость блоков, когда нижние блоки немного искривятся и отойдут от горизонтали из-за общего крутящего момента всех блоков выше, что приведёт к соскальзыванию верхних блоков.
Я упоминал, что достичь наибольшего свеса можно, если допустить использование нескольких блоков на одном уровне. Как отметило несколько читателей, оптимальное решение этой задачи описано в работе 2009 года «Максимальный свес» [Maximum Overhang, by Paterson, Peres, Thorup, Winker and Zwick]. Мне небольшие конструкции, сделанные по методике Патерсона-Цвика, напоминают зимородка. Большие выглядят как волшебные лампы. Для свеса в две единицы длины эти схемы в 2-3 раза эффективнее классических гармонических свесов, и достигают такого свеса при помощи 14 блоков вместо 32. К сожалению, их математика слишком сложна для данной статьи.
Поделиться с друзьями
SilverHorse
Насчет гармонической башни попозже попытаюсь ради интереса посчитать распределение результирующих моментов сил с учетом толщины блоков, но вот для первой конструкции, показанной в конце статьи, очевидно даже при беглом взгляде, что она будет устойчива только если элементы конструкции жестко соединены между собой. Потому что как минимум два-три крайних правых блока «птички» образуют систему, проекция центра масс которой лежит далеко вне точки опоры, и они тут же опрокинутся. Если, конечно, под «brick wall» не понимается именно это — связная кирпичная кладка.
steel_ne
В том-то и дело, что блоки не связаны. Центр тяжести верхнего блока лежит точно на краю второго. Не опрокинется? Не опрокинется. Центр тяжести двух верхних — на краю третьего и т.д.
SilverHorse
Это для башни. Я про Genie Lamp в конце.
steel_ne
чуть ниже ответил
Juma
Здесь кажется картинка не совсем правильная. Если учитывать, что блоки однородные, а их размеры и масса одинаковые, то для крайних верхних блоков общий центр тяжести будет за краем третьего ряда.
steel_ne
На картинке изображены только поддерживающие блоки (support set). На следующей картинке они светло-серые. Вертикальные стрелки показывают дополнительные силы, которые нужно приложить, чтобы все не развалилось. Это делают темно-серые блоки (balancing set).
Эта картинка выдернута из слайдов, где сравнивались разные конфигурации support set
Mulin
Есть хорошая книга, называется "Простая одержимость". В ней рассказывается подробно о том, что такое и какой смысл несёт число "е". В самом начале книги как раз и рассказывают о экспоненциальной кривой, образованной свисающей стопкой карт. Для лучшего понимания, там предлагают рассматривать всю колоду не как набор отдельных карт, а как один объект.
rPman
я один внимательно вчитывался в условие задачи, с целью понять, а где же запрет на читы:
* третье измерение, в статье предположение что предметы двухмерны или равнозначны по ширине
если разрешить третье измерение, то центр тяжести каждого можно сдвинуть за сет разной ширины (или высоты, о чем тем более речи не шло) — итого, длинная игла (расплющенная) с тяжелым шариком на конце
* плотность — предметы могут быть пористые, точно так же меняя центр тяжести
* форма — частный случай пористости, предметы могут быть с одной стороны выше чем с другой
* что за условие запрета сцепления? т.е. нельзя поставить некоторые блоки под углом? сделать их сложной формы в виде замка и зацеплять им за отверстия в других?
lizarge
>.е. нельзя поставить некоторые блоки под углом? сделать их сложной формы в виде замка и зацеплять им за отверстия в других?
Разве это не очевидно? Абсолютно глупо использовать читы в абстрактных задачах, тут не сарай строят люди.
koldyr
Для тех, кто пытается манипулировать условием с целью «чита» есть замечательная статья на хабре Условие как компромис.
sharaev
центр тяжести у однородной детали будет всегда лежать на одной линии вне зависимости от ширины блока.
mrPrestonJ
Примерно такая же картинка как kingfisher появилась у меня в голове когда прочитал суть задачи, только подумал что это своего рода читерство использовать противовесы.
shadovv76
почему не использовать симметричные варианты и ничего считать не надо?
клади поровну по обе стороны до пределов прочности блоков и все.
black_semargl
Потому что не более одного блока на уровне.