решение задачки
Sep. 3rd, 2009 08:10 pmРешение вчерашней задачи про муравьев на многограннике.
На поверхности многогранника можно "нарисовать" граф следующим образом. В центре каждой грани ставим вершину графа. Если у двух граней есть общая сторона, соединяем их центры ребром графа; можно представить себе для наглядности, как это ребро идет из центра одной грани в середину общей стороны, и оттуда по второй грани в ее центр. Например, если наш многогранник - тетраэдр, то из каждой вершины графа (центра грани) будет выходить три ребра; если куб, то четыре.
(чтобы дальше не путаться, я буду ребра исходного многогранника называть "сторонами", а ребра только что описанного графа - "ребрами").
Без ограничения общности можно предположить, что все муравьи находятся в начальный момент не в вершинах многогранника, а внутри сторон своих граней, так что у каждого муравья есть определенная сторона, на которой он в начальный момент находится. Если ребро графа пересекает сторону, на которой есть муравей, покрасим это ребро в красный цвет.
Далее, мы можем предположить, что вначале ни на одной стороне нет более одного муравья. Почему? Если они есть и идут навстречу, то задача уже решена; если они есть и расходятся друг от друга, то подождем какое-то время, пока во всех таких случаях они не сойдут с общей стороны. На другую сторону за это время два муравья одновременно не зайдут (если зайдут, опять-таки задача решена).
Теперь докажем, что в графе, соответствующем многограннику с описанными выше условиями (на каждой стороне не больше одного муравья, и все муравьи внутри сторон, а не в вершинах) есть красный цикл. Начиная с любой вершины, т.е. с центра любой грани, будем двигаться от вершины к вершине по красным ребрам следующим образом. Поскольку "наш" муравей, муравей нашей текущей грани, находится внутри какой-то стороны, ребро, пересекающее ее - красное, и мы выйдем именно через него. У следующей грани будет "свой" муравей, и мы выйдем по красному ребру, пересекающему его сторону, и так далее. Таким образом, мы никогда не выйдем по тому ребру, через которое зашли, потому что это соответствует двум муравьям на одной стороне многогранника. Т.к. кол-во граней конечно, рано или поздно мы замкнем цикл.
Наконец, запустим время вперед, муравьи начинают двигаться. Пока все муравьи, связанные с ребрами нашего красного цикла, не пересекают вершин многогранника, а только двигаются по своим сторонам, все красные ребра остаются красными и цикл не изменяется. Теперь представьте, что какой-то муравей пересекает вершину многогранника. Ребро графа, пересекаюшее сторону, с которой он ушел, перестало теперь быть красным, и цикл разомкнулся. Но образовалось новое красное ребро, пересекающее сторону многогранника, на которую он перешел - и оно ведет "внутрь" поверхности многогранника, которую отделял исходный цикл. Если мы остановим на секунду муравьев, и продолжим, как раньше, идти по красным ребрам начиная с нового, мы опять замкнем красный цикл, и все его ребра будут лежать внутри площади, которую отделял прошлый цикл. Поэтому со временем площадь, которую отделяет на поверхности многогранника красный цикл, уменьшается, пока не дойдет до нуля - цикл превратится в петлю из двух идентичных ребер, т.е. два муравья будут на одном ребре многогранника, и встретятся.
Зрительная аналогия: первоначальный красный цикл похож на ломаное лассо, которое набросили на многогранник, и по мере того, как муравьи переходят со стороны на сторону, это лассо сжимается, пока не доходит до нуля.
Статья, в которой был доказан этот результат, и использован в теории групп:
Klyachko Ant. A funny property of a sphere and equations over groups. Comm. Algebra 1993 V.21 P.2555-2575
За наводку на эту статью и соответственно решение задачи выражаю благодарность
falcao.
На поверхности многогранника можно "нарисовать" граф следующим образом. В центре каждой грани ставим вершину графа. Если у двух граней есть общая сторона, соединяем их центры ребром графа; можно представить себе для наглядности, как это ребро идет из центра одной грани в середину общей стороны, и оттуда по второй грани в ее центр. Например, если наш многогранник - тетраэдр, то из каждой вершины графа (центра грани) будет выходить три ребра; если куб, то четыре.
(чтобы дальше не путаться, я буду ребра исходного многогранника называть "сторонами", а ребра только что описанного графа - "ребрами").
Без ограничения общности можно предположить, что все муравьи находятся в начальный момент не в вершинах многогранника, а внутри сторон своих граней, так что у каждого муравья есть определенная сторона, на которой он в начальный момент находится. Если ребро графа пересекает сторону, на которой есть муравей, покрасим это ребро в красный цвет.
Далее, мы можем предположить, что вначале ни на одной стороне нет более одного муравья. Почему? Если они есть и идут навстречу, то задача уже решена; если они есть и расходятся друг от друга, то подождем какое-то время, пока во всех таких случаях они не сойдут с общей стороны. На другую сторону за это время два муравья одновременно не зайдут (если зайдут, опять-таки задача решена).
Теперь докажем, что в графе, соответствующем многограннику с описанными выше условиями (на каждой стороне не больше одного муравья, и все муравьи внутри сторон, а не в вершинах) есть красный цикл. Начиная с любой вершины, т.е. с центра любой грани, будем двигаться от вершины к вершине по красным ребрам следующим образом. Поскольку "наш" муравей, муравей нашей текущей грани, находится внутри какой-то стороны, ребро, пересекающее ее - красное, и мы выйдем именно через него. У следующей грани будет "свой" муравей, и мы выйдем по красному ребру, пересекающему его сторону, и так далее. Таким образом, мы никогда не выйдем по тому ребру, через которое зашли, потому что это соответствует двум муравьям на одной стороне многогранника. Т.к. кол-во граней конечно, рано или поздно мы замкнем цикл.
Наконец, запустим время вперед, муравьи начинают двигаться. Пока все муравьи, связанные с ребрами нашего красного цикла, не пересекают вершин многогранника, а только двигаются по своим сторонам, все красные ребра остаются красными и цикл не изменяется. Теперь представьте, что какой-то муравей пересекает вершину многогранника. Ребро графа, пересекаюшее сторону, с которой он ушел, перестало теперь быть красным, и цикл разомкнулся. Но образовалось новое красное ребро, пересекающее сторону многогранника, на которую он перешел - и оно ведет "внутрь" поверхности многогранника, которую отделял исходный цикл. Если мы остановим на секунду муравьев, и продолжим, как раньше, идти по красным ребрам начиная с нового, мы опять замкнем красный цикл, и все его ребра будут лежать внутри площади, которую отделял прошлый цикл. Поэтому со временем площадь, которую отделяет на поверхности многогранника красный цикл, уменьшается, пока не дойдет до нуля - цикл превратится в петлю из двух идентичных ребер, т.е. два муравья будут на одном ребре многогранника, и встретятся.
Зрительная аналогия: первоначальный красный цикл похож на ломаное лассо, которое набросили на многогранник, и по мере того, как муравьи переходят со стороны на сторону, это лассо сжимается, пока не доходит до нуля.
Статья, в которой был доказан этот результат, и использован в теории групп:
Klyachko Ant. A funny property of a sphere and equations over groups. Comm. Algebra 1993 V.21 P.2555-2575
За наводку на эту статью и соответственно решение задачи выражаю благодарность
no subject
Date: 2009-09-03 05:55 pm (UTC)Тут что-то не так. Если на ребрах многогранника, принадлежащих грани N, находится только муравей-хозяин, то к центру грани N ведет только одно красное ребро графа. Тогда, если мы придем в эту вершину, мы вынуждены будем выйти по тому же красному ребру.
Или я что-то путаю?
no subject
Date: 2009-09-03 06:02 pm (UTC)no subject
Date: 2009-09-03 06:07 pm (UTC)Спасибо!
no subject
Date: 2009-09-03 06:21 pm (UTC)no subject
Date: 2009-09-03 08:46 pm (UTC)no subject
Date: 2009-09-03 08:49 pm (UTC)no subject
Date: 2009-09-03 09:30 pm (UTC)Эту небольшую техническую неприятность можно решить разными способами. Например, мы можем притвориться, будто муравьи вообще не проползают через вершины: давайте поставим очень-очень близко к каждой вершине на пути каждого муравья пару гипотетических нуль-транспортировщиков, так, что муравей "перепрыгивает" через вершину, потом ждет немножко - то время, за которое он бы обычно там прополз - и ползет дальше. Если мы выберем "очень-очень близко" так, что у другого муравья не будет шанса как раз случайно оказаться рядом на соседней стороне, так что мы через него "нуль-перепрыгнем", то в расписании возможных встреч ничего не изменится, и все остальное доказательство будет работать. А выбрать такое малое "очень-очень близко" можно, предполагая, что муравьи движутся каждый по определенному маршруту, просто взяв минимум всех расстояний между всеми парами муравьев за весь период общего движения. Кажется, примерно это я имел в виду, когда сказал без ограничения общности, можно считать, что муравьев в вершинах нет.
Но потом я понял, что можно легче, ведь нет на самом деле проблемы именно в нахождении в вершине - можно считать это за нахождение в любой из двух подходящих сторон, надо только выбрать, в какой. Поэтому давайте заранее для каждой грани решим, к какой из двух соседних сторон принадлежит каждая вершина (например - к предыдущей по движению против часовой стрелки), и будем из этого исходить в определении "красных ребер". Кажется, все работает без проблем. Соблюдать соответствие между разными гранями необязательно - т.е. если вершина A стороны AB приписана к этой стороне по одной грани, и к соседней стороне AC по другой, ничего страшного, все равно доказательство проходит.
no subject
Date: 2009-09-03 10:58 pm (UTC)no subject
Date: 2009-09-04 12:07 am (UTC)Если мы запустим всех муравьев по часовой, то значения "внутри" и "снаружи" для того же самого начального цикла поменяются местами, и теперь уже то, что раньше было "снаружи", будет постепенно уменьшаться. То же самое случится, если мы запустим время в обратном направлении.
no subject
Date: 2009-09-03 09:28 pm (UTC)no subject
Date: 2009-09-04 09:44 am (UTC)no subject
Date: 2009-09-12 06:46 am (UTC)От Капитана Очевидность: есть двое алгебраистов, которых зовут A.A.Klyachko. Александр, который работает в Турции, и Антон, который работает в Москве на мехмате.
no subject
Date: 2009-09-06 05:46 am (UTC)То же -- про одинаковую скорость муравьев. Ну, понятно, что если, скажем, один едва ползет, то его всегда успеют встретить. А с другой стороны, замри они все -- все испортится. Любые ненулевые скорости, что ли -- так и постоянства не надо, достаточно чего-то типа "не слишком бессовестно тормозя" в смысле "путь со временем не ограничен"...
no subject
Date: 2009-09-07 05:04 am (UTC)no subject
Date: 2009-09-09 11:35 am (UTC)no subject
Date: 2009-09-09 11:50 am (UTC)Пример смены ориентации и окончательное решение задачи можно найти здесь http://www.sciteclibrary.ru/cgi-bin/yabb2/YaBB.pl?num=1063636174/20 (http://www.sciteclibrary.ru/cgi-bin/yabb2/YaBB.pl?num=1063636174/20)
оффтоп
Date: 2009-09-17 03:09 am (UTC)http://falcao.livejournal.com/180432.html