Муравьи в поисках пищи используют протокол Интернета

Сотрудничество между учеными биологического и компьютерного департаментов Стэнфордского университета при изучении поведения муравьев позволило сделать интересное открытие. Оказывается, поведение и перемещения муравьев в поисках и при транспортировке пищи подчиняются таким же законам, что и перемещение пакетов данных по сети Интернет, то есть могут быть описаны протоколом TCP.

На первый взгляд муравьи и Интернет не имеют ничего общего. Но два исследователя из Стэнфорда обнаружили, что некоторые виды муравьев, а точнее - "добытчики", те, которые обеспечивают поставки продовольственных запасов в муравейник, способны определять, сколько муравьев и в каком направлении необходимо отправить за добычей таким же образом, как и сетевые протоколы узнают, какой объем трафика необходим для передачи нужного количества данных. Исследователи даже дали этому название "anternet" (ant - муравей в переводе с английского).

Дебора Гордон (Deborah Gordon), профессор биологии Стэнфордского университета, изучала муравьев на протяжении более двух десятилетий. Во время наблюдения за колониями муравьев в Аризоне она обнаружила, что муравьи способны принимать решения о количестве "грузчиков", которых необходимо направить для пополнения запасов еды в том или ином направлении. Дебора сразу же позвонила в родной университет, чтобы связаться со своим знакомым, Баладжи Прабхакаром (Balaji Prabhakar), профессором компьютерных наук Стэнфорда, ведь он лучше всех должен знать, как файлы и данные передаются внутри компьютерной сети. Сначала он не заметил никакого сходства между его работой и тем, чем занималась Дебора Гордон, но в скором времени и к нему пришло озарение.

"На следующий день мне пришло в голову: ой, подождите, это почти то же самое, что происходит в компьютерной сети. Интернет-протоколы так же позволяют определять, какая полоса пропускания доступна для передачи файла! - сказал Прабхакар. - Алгоритм, который используют муравьи, чтобы узнать, как много насекомых необходимо для транспортировки обнаруженных запасов еды, по существу не отличается от того, который используется в протоколе управления передачей данных по сети".

Transmission Control Protocol, или TCP, представляет собой алгоритм, который управляет передачей данных в сети Интернет, является неотъемлемой частью Всемирной сети, которая успела вырасти за несколько десятилетий от нескольких десятков до миллиардов компьютеров на сегодняшний день. Вот как это работает: при передаче файла по сети от источника (пункт А) до места назначения (пункт B) этот файл разбивается на определенное количество пакетов данных одинакового размера. Когда пункт В получает каждый из пакетов, он посылает источнику А подтверждение о том, что пакет прибыл.

Эта форма обратной связи TCP обеспечивает надежную передачу информации и предохраняет сеть от перегрузок. Если подтверждения о получении пакетов поступают более медленными темпами, чем данные передавались, это означает, что пропускной способности сетевого канала связи недостаточно, и источник соответственно регулирует скорость передачи данных, понижает ее. Если подтверждения приходят быстро, источник повышает скорость передачи. Этот процесс определяет широту полосы пропускания доступных каналов связи и, соответственно, регулирует скорость передачи данных.

Оказывается, что представители по крайней мере одного вида насекомых, за которым вела свои наблюдения Дебора Гордон, - Красный американский муравей-жнец, или Бородатый муравей-жнец (Pogonomyrmex barbatus) ведут себя практически аналогичным образом в поисках пищи. Гордон обнаружила, что интенсивность потока муравьев, которые покидают муравейник для того, чтобы доставить туда пищу, находится в непосредственной зависимости от количества запасов продовольствия вблизи муравейника. Муравей-добытчик не вернется в гнездо, пока не найдет пищи. Если поблизости очень много провизии, например семян, муравьи с грузом возвращаются быстрее и новые отряды муравьев активнее покидают гнездо для доставки корма. Однако, если муравьи начинают возвращаться "с пустыми руками", поиск замедляется и даже может быть прекращен на какое-то время.

Прабхакар записал алгоритм для прогнозирования поведения муравьев в зависимости от количества пищи. В своих экспериментах Гордон смогла манипулировать активностью муравьев-собирателей, изменяя объем и место расположения подкормки вблизи муравейника. Проведенные исследования подтвердили, что поведение муравьев, обнаруженное в экспериментах Гордон, практически точно соответствует алгоритму управления протоколом TCP. "Муравьи используют алгоритм, который мы хорошо знаем, а ведь они делают это уже на протяжении миллионов лет," - сказал Прабхакар.

Ученые также обнаружили, что муравьи отрабатывают две фазы TCP. Одна известна как "медленный старт", когда источник посылает множество пакетов в самом начале передачи, чтобы измерить и оценить пропускную способность канала связи. Когда муравьи начинают поиск пищи, они тоже отправляют много разведчиков во все стороны в поисках запасов продовольствия. Другая фаза протокола, "тайм-аут", происходит, когда связь нарушается и источник прекращает передачу пакетов. Аналогичным образом, когда муравьи не могут вернуться в муравейник более 20 минут, новые разведчики не покидают его.

Прабхакар сказал, что если бы это открытие было сделано в 1970-х, прежде чем появился TCP, можно было бы утверждать, что муравьи создали Интернет. Гордон считает, что ученые лишь заметили определенное сходство, но дальнейшее наблюдение за поведением муравьев может помочь в разработке сетевых компьютерных систем.

На нашей планете существует 11 тысяч видов муравьев, которые живут в разных средах обитания и даже в условиях экологических проблем, сказала Гордон. Муравьи существовали и развивались на протяжении миллионов лет, они способны делать вещи, до которых мы еще не додумались, но могли бы применять в компьютерных системах. Каждый муравей имеет ограниченные возможности, но их коллективу по силам выполнение очень сложных задач. Муравьиные алгоритмы должны быть простыми, распределенными и масштабируемыми - а ведь все эти качества нам нужны для создания больших компьютерных распределенных систем. Как только мы начнем понимать, каким образом некоторые виды насекомых регулируют свое поведение, мы найдем много других полезных применений этим открытиям.

Игорь Грень


Компьютерная газета. Статья была опубликована в номере 37 за 2012 год в рубрике интернет

©1997-2024 Компьютерная газета