Computadores bacterianos

De acordo com o verbete da wikipedia, um computador é uma máquina programável desenhada para, automaticamente, realizar um sequência de operações aritiméticas ou lógicas. Um computador pode prover-se de inúmeros atributos, dentre eles armazenamento de dados, processamento de dados, cálculo em grande escala, desenho industrial, tratamento de imagens gráficas, realidade virtual, entretenimento e cultura. Os primeiros computadores analógicos surgiram no século XVII e eram capazes de realizar as funções básicas de somar, subtrair, multiplicar e dividir. Mas foi na II Guerra Mundial, em meados do século XX, que realmente nasceram os computadores atuais. A Marinha dos Estados Unidos, em conjunto com a Universidade de Harvard, desenvolveu o computador Harvard Mark I, projetado pelo professor Howard Aiken, com base no calculador analítico de Babbage. O Mark I ocupava 167m2 e pesada cerca de 30 tonelada aproximadamente, conseguindo multiplicar dois números de dez dígitos em três segundos.Seu funcionamente era parecido com uma calculadora simples de hoje em dia. Nem é preciso falar o quanto esta tecnologia se desenolveu até hoje, em que hoje se discuti processadores quânticos e se faz computação em nuvem. Uma plataforma diferente das “baseadas no silício”, que estamos acostumados, são os biocomputadores. Em 1994, em um experimento muito elegante, Leonard Adleman desenvolveu o primeiro experimento envolvendo um computador de DNA para resolver o problema do Caminho Hamiltoniano: um problema que envolve caminhos hamiltonianos é o problema do caixeiro viajante, em que um caixeiro deseja visitar um conjunto de N cidades (vértices), passando por cada cidade exatamente uma vez, fazendo o caminho de menor tamanho possível (Figura 1).

 

Figura 1. O grafo em vermelho é hamiltoniano.

Cada bola é um nó e cada flecha é uma aresta. Existem multiplas possibilidades de construir um computador baseado em DNA, em que cada um possui suas vantagens e desvantagens. A maioria deles funciona utilizando as portas lógicas (AND, OR, NOT) associadas a lógica digital utilizando como base o DNA, como por exemplo, o contador bacteriano . Porém os primeiros computadores moleculares baseados em DNA, são reações in vitro utilizando, por exemplo, enzimas de restrição, ligases, e DNA (Benenson et al. 2001). Através da mistura desse componentes e reações em cascada de digestão, ligação e hibridização, o output final é uma molécula detectável que representa o resultado computacional. Em 1994, Leonard Aldleman foi capaz desenvolver um computador in vitro baseado em DNA para solucionar o problema do Caminho Hamiltoniano (Figura 1), porém apenas em 2009, Baumgardner e colaboradores conseguiram resolver um problema complexo in vivo, em E. coli. Porém, para entender, é necessário uma série de abstrações para tornar sequências de DNA em vértices e arestas de um caminho hamiltoniano (ver Figura 2). A primeira abstração trata segmentos de DNA como as arestas de um determinado grafo. As arestas de DNA são flanqueados por sítios hixC que podem ser embaralhados por um recombinase Hin, criando diversas ordens e orientações randômicas para as arestas do grafo. A segunda abstração está relacionada com os nós, com exceção do nó terminal, em que um nó é um gene divido ao meio por uma sequência hixC. Os autores conseguiram construir enzimas funcionais portando essas sequências codificadas no DNA. Dessa maneira, a primeira metade (5´) de um nó é encontrada na aresta de DNA que termina em um nó, enquanto a segunda metade (3´) do gene é encontrado em uma aresta de DNA que se origina no nó. Calma, realmente não é fácil entender, é preciso pensar e abstrair, veja a figura 2.


Figura 2. Construção de DNA que codificam um problema do Caminho Hamiltoniano com três nós. a. O grafo contendo o caminho Hamiltoniando começa no nó RFP, procedendo para o nó GFP e terminando no nó TT. b. Construção ABC representam a solução para o problema dos três nós. Os três fragmentos de DNA flanqueado por hixC estão na ordem e orientação corretas, de maneira que os genes GFP e RFP estão intactos. ACB possui o gene RFP intacto, porém o gene GFP está errado, por fim, a construção BAC não possue nenhum gene intacto.

A Figura 2a mostra o grafo com os 3 nós e as 3 arestas que foram escolhidas para serem codificados no computador bacteriano. O gráfico contêm um único caminho hamiltoniano que começa no nó RFP, viajando pela aresta A até o nó GFP, e utilizando a aresta B até alcançar o nó final TT. A aresta C, the RFP até TT é um detrator. A Figura 2b ilustra como as construções de DNA foram utilizadas para solucionar o problema do Caminho Hamiltoniano com um controle positivo e duas configurações sem soluções. Já que as soluções precisam originar no nó RFP e terminar no nó GFP, a aresta A de DNA contêm na extremidade 3´a metade de RFP seguida por a extremidade 5´de GFP. A aresta B de DNA se origina em GFP e termina em TT, dessa maneira, esse fragmento de DNA possui 3´GFP seguido de um terminado de transcrição duplo. A aresta C se origina em uma metade 3´ de RFP e termina em TT. Finalmente, com os genes codificadores para RFP e GFP estão intactos, com promotores e RBS, e seguintes de um terminador de transcripção, colônias ABC expressam fluorescência vermelha e verde, dessa maneira, possuem aparência amarela.

Para concluir a abstração eu gosto de imaginar que a recombinase Hin é o caxeiro viajante que faz o seu caminho pelo DNA e a sequência de DNA contem o mapa do caminho realixado.

A programação de bacteria para computar soluções de problemas complexos podem oferecer as mesmas vantagens dos computadores atuais que estamos acostumados, porém, com as seguintes características adicionais: (i) sistemas bacterianos são autônomos, eliminando a necessidade de intervenção humana, (ii) computadores bacterianos podem se adaptar a condições flutuantes, evoluindo para resolver desafios de determinados problemas e (iii) o crescimento exponencial de bactérias continuamente aumente o número de processadores trabalhando em um problema (Baumgardner et al., 2009). Sem contar que eles ainda poderiam fazer fotossíntese…

Adleman LM: Molecular computation of solutions to combinatorial problems. Science 1994, 266:1021-1024.

Benenson Y, Paz-Elizur T, Adar R, Keinan E, Livneh Z, Shapiro E: Programmable and autonomous computing machine made of biomolecules. Nature 2001, 414:430-434.

Baumgardner , J et al. Solving a Hamiltonian Path Problem with a bacterial computer. J. Biol. Eng. 2009, 24;3:11.