У нас тут на курсе есть физик, который никак не мог решить одну задачу с синхротроном. В итоге…
У нас тут на курсе есть физик, который никак не мог решить одну задачу с синхротроном. В итоге он-таки применил знания курса и получил 4 ответа от моделей в агентских средах. Последний был решением периодизации через принцип цикады. И дальше он охренел, как в физику сверхкритических флюидов переносится это с биологии.
“Мало того, что он понял вопрос (в мире наверное порядка человек 100 разбираются в этом) - так еще и предложил рабочие варианты решения! Из четырех предложенных один был не реализуем (честно говоря у клода не хватало об этом информации), два я рассматривал как варианты, но они требовали времени и сил. Но четвертый! Легкое и элегантное решение, которое решило все проблемы. Близкое к гениальности. Мне хочется верить, что я до него додумался… Но это не точно…”
Собственно, если у вас нет синхротрона для материи в экстремальных квантовых и термодинамических состояниях, про цикаду всё равно может быть интересно знать, это прям один из самых крутых примеров ультрадешёвых и суперэффективных алгоритмов.
Итак, периодические цикады Magicicada спят под землёй ровно 13 или 17 лет — один вид 13, второй 17. Зачем и нафига? Почему простые числа? Почему такие периоды?
Биологическая гипотеза — цикады так спасаются от хищников. Если бы цикада появлялась каждые 12 лет, то ею могли бы питаться хищники с жизненным циклом в 2, 3, 4 или 6 лет — они бы постоянно пересекались во времени. Простой жизненный цикл сводит шанс встречи с хищником к минимуму.
Математики решили проверить это свойство эволюции и сделали матмодель.
Представьте, что вы ходите в магазин каждый 12-й день. Ваш враг может приходить туда каждый 2-й, 3-й, 4-й или 6-й день, и он рано или поздно вас подкараулит. Но если вы ходите туда каждый 13-й день, вашему врагу придется ходить туда либо каждый день (что утомительно), либо ровно каждые 13 дней. С точки зрения выживания видов, выбор простых чисел — это отличная стратегия пряток, при которой вас невозможно просчитать алгоритмами коротких циклов. И реализуется он очень-очень дёшево.
Идеальная сферическая цикада в матмодели зафиксировалась на простом числе Эйлера — 2147483647 (из чего можно сделать вывод, что это были 32-битные int-сферические цикады). И они там заодно обновили пару моделей криптографических алгоритмов через мутации.
Потом в модели сделали виртуальный лес, накидали туда случайных животных с разными сроками спячки (от 2 до 50 лет) и посмотрели, что случится. Выжили только те, кто спал простое количество лет. Чаще всего выживали те, кто спал именно 13 и 17 лет.
Так что доказательство красивое, но, возможно, цикадам это не от хищников, а чтобы не скрещиваться с другими видами цикад для предотвращения гибридизации. Но математиков было уже не остановить, и они всячески применяли этот принцип много где. Например, для синхротронов.
А тут уже моделировали 50 тысяч лет гибритизации цикад. Снова запилили виртуальный лес, поселили туда цикад с разными таймерами взросления, добавили голодных птиц как хищников.
В первом опыте выиграли цикады моделей 11, 13, 17 и 19. Не-простые циклы слишком часто пересекались друг с другом, рожали гибридов, те вылезали не вовремя и съедались.
Во втором опыте стартовали всех цикад не одновременно, а в разные годы. Если циклы сдвинуты друг относительно друга, простые числа математически пересекаются с соседями часто. Никакого преимущества простые цикады не получили.
А что могло синхронизировать всех цикад? Ввели в модель фактор сурового климата — долгую спячку. Наступает ледниковый период, становится адски холодно, и развитие цикад ставится на паузу на 20 лет. Если такие 20-летние задержки происходят раз в 10 тысяч лет, то да, всё сводится к первой модели.
Так что они спасаются так от случайных половых связей, а не от хищников!
А в целом — похоже, нас дальше ждёт всё больше таких открытий с переносом знаний и принципов из разных областей науки. Например, недавно астрономия пригодилась искать скрытые камеры.
— Вступайте в ряды Фурье! | Лучшие посты Генерация случайных чисел слишком важна, чтобы оставлять её на волю случая.