Como aplicar a experiência das formigas na solução de problemas complexos de engenharia
A Internet é conhecida como a rede por sua configuração de múltiplos pontos e múltiplas conexões. Esta diversidade de conexões leva a diversas opções para se chegar de um lugar até outro. Assim uma mensagem ou um arquivo que você envia de uma máquina na Prodabel em Belo Horizonte para a minha máquina na Pensilvania nos Estados Unidos pode passar por vários lugares antes de chegar aqui. O método usado é (1) quebrar a mensagem ou arquivo em mínimos pedacinhos, (2) colocar o endereço do remetente e do destinatário em cada pedacinho, (3) numerar estes pedacinhos seqüencialmente, e finalmente (4) enviar cada pedacinho pela rota que estiver disponível. Veja bem, estes pedacinhos podem seguir por rotas diferentes e sua montagem final e coerente é uma tarefa do computador que está recebendo estes pedacinhos.
Este sistema, embora não esteja baseado em uma abordagem de caminho mais curto ou de rotas otimizadas, tem funcionado razoavelmente. É claro que isto varia um pouco e nas horas de muito tráfego ou de problemas localizados na rede estes pacotes podem demorar um bocadinho para chegar a seu destino final. A medida que a Internet vai se expandindo, o tráfego aumenta como conseqüência, mas também as opções de rota vão aumentando. Mas, com o volume de informações disponíveis aumentando e o número de usuários associados a cada novo ponto também aumentando, a tendência passa a ser de congestionamentos cada vez mais freqüentes. A disponibilidade de melhores conexões alivia um pouco este gargalo, mas, ao mesmo tempo, quando o serviço melhora a tendência é de que os usuários usem a Internet cada vez mais e para mais coisas. Desta forma o estudo de como melhorar a distribuição destes pacotinhos é uma área cada vez mais ativa em pesquisas. Este problema – vocês já devem estar reconhecendo – é nosso velho problema de geoprocessamento, o roteamento automático. Como chegar daqui até ali da maneira mais rápida ou pelo caminho mais curto? No caso dos pacotinhos da Internet, o caminho mais curto não é necessariamente o mais rápido. Se no meio do caminho mais curto existir um computador lento ou um ponto congestionado, alguns de seus pacotinhos vão ficar encalhados e demorar um bocado a chegar à sua destinação final, atrasando assim toda a mensagem.
Nesta área uma das linhas mais interessantes de pesquisa é baseada no comportamento das formigas. No recente congresso sobre inteligência artificial em Seattle (http://www.ijcai-01.org/) este foi um dos assuntos que mais chamou a atenção. Também o recente livro de Steven Johnson, "Emergence: The Connected Lives of Ants, Brains, Cities and Software" trata sobre este assunto: como aplicar a experiência das formigas na solução de problemas complexos de engenharia.
As formigas têm um tipo de inteligência chamada de "swarm intelligence", ou seja, a inteligência do enxame, a inteligência coletiva, do grupo. O trabalho deste tipo de inseto é descentralizado. Individualmente, a inteligência da formiga é primitiva, mas quando os resultados são considerados coletivamente, eles apresentam soluções eficientes para problemas complexos como "qual é o caminho mais curto entre o ninho e a fonte de comida"? Como elas conseguem isto?
A chave para este comportamento intrigante e seus resultados surpreendentes é uma substância química chamada ferormônio. Enquanto andam, as formigam segregam esta substância. Com o tempo, e com uma grande quantidade de formigas, é claro, começa a se formar uma trilha, ou várias, que as outras formigas são capazes de seguir. A ordem é: siga o ferormônio! Mas como aplicar este tipo de conhecimento ou tecnologia à Internet e a sua troca de pacotinhos?
A idéia básica é criar formiguinhas eletrônicas. Estas formiguinhas ficariam andando pela Internet e marcando com um ferormônio eletrônico as melhores rotas para envio de pacotinhos. Num dos modelos usados neste tipo de pesquisa, o ferormônio eletrônico se dissipa com o passar do tempo deixando assim as rotas mais longas com menos ferormônio. As rotas mais curtas, as mais usadas, ao contrário recebem ferormônio de mais de uma formiga e ficam com uma camada maior da substância eletrônica. Quando seu pacotinho estiver procurando seu caminho, ele vai tentar seguir as trilhas com mais ferormônio. Mas um grande problema é como aplicar de imediato esta tecnologia. Na prática, quem distribui estes pacotinhos são computadores chamados roteadores. Eles recebem milhões de pacotinhos por minutos e os colocam na direção certa. Implantar a teoria das formigas na distribuição de pacotes na internet significa alterar a programação destes computadores. A programação que roda neles hoje já é bastante complexa e está atualmente estabilizada. Então a tarefa é convencer os fabricantes de roteadores a implementar estas alterações. Isto não é uma tarefa fácil em um mercado tão instável como o de telecomunicações. A opção por uma tecnologia errada ou o não comprometimento com a tecnologia certa pode acabar com uma grande companhia em poucos meses. Estas companhias têm sido geralmente lentas em suas decisões e não se tem notícia de tendências de mudanças nesta direção.
A lógica das formigas pode e está sendo aplicada na tentativa de solução de outros problemas, como o problema clássico do caixeiro viajante. Um vendedor tem de passar por uma série de cidades, usando a rota mais econômica. Este é um problema de altíssima complexidade. Este tipo de problema se aplica não apenas a vendas mas a qualquer tipo de distribuição de pacotes seja na Internet, seja na distribuição de pacotes de verdade em uma cidade grande.
Isto me lembra de algumas das soluções que implantamos quando estávamos atualizando a base de 400.000 endereços de Belo Horizonte no trabalho de Geo da Prodabel. Para se manter atualizada uma base como esta é preciso de uma rede de formigas. A nossa pergunta era: quem percorre a cidade de forma organizada, constante e diária? A resposta veio em dose dupla: os carteiros e a polícia militar. Nós trabalhamos na época com um convênio com os Correios e os carteiros nos ajudaram a levantar milhares de endereços.
Nós já discutimos aqui nesta coluna há alguns meses atrás a possibilidade de carros levarem câmeras digitais miniaturizadas ligadas a um GPS e informar a uma central sobre o estado do tráfego em cada região. Imagine a teoria das formigas aplicadas a este tipo de problema. Os carros estariam com receptores GPS coletando informações sobre as diversas rotas da cidade. Pessoas diferentes tomam decisões diferentes com relação a qual caminho seguir. Estas diferentes rotas poderiam ser analisadas e teríamos constantemente informações sobre quais rotas estariam mais desimpedidas e deixariam o usuário complementar o caminho no menor tempo.
Mas o que é visto com mais interesse é como este tipo de pensamento com relação às redes pode levar a novos caminhos. A Internet se presta bem a este tipo de colocação. A ênfase da Internet está em muitos pontos e todos conectados entre si. É um modelo altamente democrático. Muita gente não percebe isto e continua vendo a Internet como uma mente centralizadora. O Napster é um bom exemplo de como a Internet pode ser usada: uma rede de usuários individuais colocados em contato entre si por um programa central. A abordagem das formigas de uma certa forma abole este controle central. A rádio-peão onde as notícias correm boca a boca é outro bom exemplo de redes descentralizadas. O potencial da Internet é uma coisa apenas vislumbrada atualmente. O poder da conexão global a nível individual tem ainda muito chão pela frente. E com muito chão pela frente é melhor usar a solução de nossas amigas, as formiguinhas.
Frederico Fonseca é doutor em Ciência da Informação Espacial pela Universidade do Maine e atualmente é professor na Escola da Ciência da Informação e Tecnologia da Penn State University nos Estados Unidos. Email: fredfonseca@ist.psu.edu