Ciência

‘Aprendemos com modelos fornecidos pela natureza’

O especialista em sistemas de informação Christian Grimme explica o princípio dos algoritmos evolutivos

Christian Grimme © privado

De muitas maneiras, a natureza serve de modelo para processos e funções que utilizamos na nossa vida quotidiana. O professor Christian Grimme, do Departamento de Sistemas de Informação da Universidade de Münster, trabalha há muitos anos nos chamados algoritmos evolutivos que – como o nome sugere – são orientados para os pensamentos subjacentes contidos na teoria da evolução biológica. Kathrin Kottke conversou com ele sobre a função e os usos dessa abordagem baseada em informática.

A maioria das pessoas colocaria a evolução no campo da biologia. Você é especialista em sistemas de informação e também trabalha com o conceito de evolução. Como isso se encaixa'

Você está certo – à primeira vista, são duas disciplinas muito diferentes, mas ambas as ciências – biologia e informática – estão interessadas nos princípios de funcionamento dos sistemas. E a evolução é um sistema fascinante, aberto e dinâmico. Então, no sentido mais amplo, trabalho com conceitos, designs e processos – também conhecidos como biônica – que são todos inspirados na natureza. Um exemplo bem conhecido de tecnologias biônicas são as tintas resistentes à sujeira, que utilizam o efeito lótus. Os algoritmos evolutivos também pertencem à categoria de conceitos inspirados na natureza – exceto que nestes casos a natureza serve de modelo no desenvolvimento de algoritmos.

E do que se trata'

É um processo de otimização baseado nos pensamentos contidos na moderna teoria da evolução segundo Charles Darwin. No entanto, o conceito de evolução deve ser entendido antes como uma metáfora neste contexto. A adaptação de animais ou plantas ao seu ambiente funciona muito bem como resultado de desenvolvimentos evolutivos e é impulsionada pela seleção e mutação. Na ciência e na indústria utilizamos esta observação e aprendemos com os modelos da natureza. Especificamente, algoritmos evolutivos são aplicações computacionais que imitam processos evolutivos biológicos utilizando noções simplificadas de modelos, a fim de fornecer soluções específicas para problemas complexos.

O que exatamente isso significa'

Primeiro temos que lembrar o princípio da teoria da evolução. Simplificando, diz que os seres vivos estão sempre sujeitos a mudanças e têm de se adaptar para sobreviverem como espécie. Em qualquer espécie, os indivíduos que melhor se adaptaram têm vantagem na reprodução. Estas adaptações surgem na natureza por acaso, através de constantes mutações no genoma. O genoma que melhor se adaptou sobrevive como resultado de uma reprodução mais frequente. Isto significa que, a longo prazo, a adaptação às influências externas leva ao surgimento de novas espécies mais bem adaptadas. Se transferirmos isto para a optimização, poderíamos dizer – mais uma vez, expresso de uma forma simplificada – que este ciclo de adaptação continua até que em algum momento seja encontrada uma boa solução para um problema, mesmo que talvez não seja a melhor. E isso, em princípio, descreve o loop geral que também é usado em algoritmos evolutivos: misturas repetidas e mudanças aleatórias em uma população de soluções e seleção das melhores soluções para um problema.

Você pode dar exemplos de aplicações para deixar isso mais claro?

O campo de aplicação dos algoritmos evolutivos é quase ilimitado. São particularmente interessantes para problemas difíceis onde não sabemos como podemos chegar a uma boa solução – por exemplo, optimizar rotas de transporte para empresas de logística ou elaborar um plano de utilização de máquinas numa grande fábrica. Uma das primeiras aplicações industriais veio do inventor das estratégias evolutivas, o engenheiro aeroespacial Hans-Paul Schwefel. Ele tentou projetar a forma interior ideal de um bico de jato bifásico com impulso máximo. Seu ponto de partida foi um jato em forma de funil e cônico e que então, novamente como um funil, se abre novamente. Ele então aplicou algoritmos evolutivos e cortou o jato em pequenos discos, por assim dizer. O algoritmo evolutivo remontou os discos alterando a sua ordem – sempre com mutação e sempre selecionando as melhores soluções. Em última análise, isto levou a uma forma nova e surpreendente que era significativamente melhor do que a forma inicial.

E quais desafios você está enfrentando com algoritmos evolutivos?

No meu trabalho estou investigando a chamada otimização multiobjetivo. O que isto significa é que não estou trabalhando apenas em um objetivo no processo de otimização, mas em vários. E estes objectivos muitas vezes se contradizem. Por exemplo: alguém quer comprar um carro que seja particularmente seguro e que, ao mesmo tempo, tenha baixo consumo de combustível. Conseguir ambos ao mesmo tempo é impossível, uma vez que um automóvel seguro é muitas vezes grande e pesado e, consequentemente, tem um consumo de combustível mais elevado do que os automóveis pequenos e leves. Estes objectivos têm de ser reconciliados ou têm de ser alcançados compromissos óptimos.

E como exatamente os algoritmos ajudam nisso?

Encontrar compromissos é um problema difícil. Muitas vezes, a matemática não consegue formular adequadamente as conexões e interações entre os objetivos. Portanto, recorremos a algoritmos evolutivos. Foi demonstrado que métodos especialmente adaptados para estes tipos de problemas levam a boas soluções. Por exemplo, os algoritmos calculam compromissos óptimos em aplicações industriais ou em logística – chegando ao ponto de abordar questões económicas e sociais.

Este artigo é do jornal universitário Wissen

Source

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button