Муравьи открыли интернет-алгоритмы задолго до людей
Исследователи из Стэнфордского университета обнаружили, что красный американский муравей-жнец (Pogonomyrmex barbatus) выбирает, сколько особей следует отправить за едой, во многом таким же образом, как интернет-протокол TCP узнаёт, сколько трафика доступно для передачи данных.
Исследователи называют это "энтернет" (anternet, от слова ant, что значит "муравей").
За насекомыми наблюдала биолог Дебора Гордон, а мысль о файлах пришла в голову профессору компьютерных наук по имени Баладжи Прабхакар.
Transmission Control Protocol (TCP) представляет собой алгоритм, выполняющий обязанности регулировщика на "перекрёстках" интернет-потоков. Благодаря ему Сеть за считанные годы выросла с нескольких десятков до миллиардов узлов. Работает он вот как: источник (А) передаёт файл в пункт назначения (Б), причём файл разбит на несколько пакетов. С получением каждого пакета Б отправляет соответствующее уведомление (ack) в адрес А.
Обратная связь необходима для предотвращения перегрузки: если уведомления приходят медленнее, чем отправлялись данные, значит, пропускная способность снизилась, и отправлять данные следует более постепенно. В противном случае источник повышает скорость передачи.
Оказывается, Pogonomyrmex barbatus ведут себя почти аналогичным образом. Скорость, с которой муравьи отправляются за пропитанием, соответствует скорости поступления продовольствия. Фуражир не вернётся в гнездо, пока не найдет корм. Если в окрестностях семян очень много, жнецы возвращаются быстрее, и в этом случае к ним присоединяется всё больше муравьёв. Если же разведчики начинают возвращаться с пустыми руками, конвейер замедляется и даже останавливается.
Г-н Прабхакар написал алгоритм для прогнозирования поведения муравьёв в зависимости от количества пищи (то есть пропускной способности), и он оправдал себя. "Муравьи обнаружили этот алгоритм миллионы лет назад", — резюмирует специалист.
Любопытно, что насекомые знают и о двух других фазах TCP. Одна из них известна как медленный старт: первым делом источник отправляет большую порцию пакетов, дабы измерить пропускную способность. Точно так же муравьи поначалу отправляются на поиск пищи большой группой.
Другой протокол ("тайм-аут") задействуется, когда связь нарушается, и источник прекращает передачу пакетов. Если фуражиры не возвращаются в гнездо в течение 20 минут, отправка новых разведчиков приостанавливается.
Г-н Прабхакар отмечает, что это открытие относительно муравьёв было сделано ещё в 1970-х годах и, чем чёрт не не шутит, могло повлиять на создателей Интернета. Возможно, у муравьёв ещё много секретов, которые помогут нам усовершенствовать нашу Сеть. При этом муравьиные алгоритмы должны быть простыми, распределёнными и масштабируемыми — как раз то, что нам сейчас очень надо.
Результаты исследования опубликованы в журнале PLoS Computational Biology.