Bioinformática
A bioinformática e a análise da expressão gênica
Introdução
Todos os seres vivos guardam em uma molécula de DNA ( ácido
desoxirribonucleico ) informações vitais para o funcionamento do
organismo. O processo de expressão gênica é responsável por
transcrever pequenas porções do DNA (genes) nas moléculas de RNA.
As células e tecidos dos corpos funcionam corretamente quando os
genes são expressos de forma correta. Qualquer expressão alterada ou
realizada em momento incorreto, pode ocasionar patologias.
Entre os principais estudos da Biologia Molecular, está a análise da
expressão gênica em diversos tecidos biológicos a fim de entender e
poder diagnosticar tecidos patológicos.
Bioinformática
A bioinformática e a análise da expressão gênica
Análise de Microarray
A análise de microarray é uma tecnologia capaz de
medir a expressão gênica de milhares de genes
simultaneamente. Este é um processo muito
complexo pois não existe um procedimento genérico
que possa ser amplamente utilizado para qualquer
análise.
Para cada experimento é preciso avaliar os modelos
estatísticos e matemáticos a serem empregados,
antes da criação do grupo de scripts computacionais
propriamente dito. Por este motivo, existe uma
demanda de softwares para análise de dados de
microarray que facilitem os diversos métodos de
análise e ofereçam opções de geração de
documentação.
Exemplo de uma imagem de
microarray.
Esta imagem foi obtida pelo grupo de
pesquisa do Prof. Luiz Fernando Lima
Reis no Instituto Ludwig de Pesquisa
sobre o Câncer e CEPID - Hospital A.
C. Camargo.
Projeto Maiges
Mathematical Analysis of Interacting Gene Expression Systems
Objetivo do projeto:
• Desenvolver um ambiente matemático e computacional capaz de
explorar novas tecnologias bioquímicas.
• Esse ambiente precisa prover análises estatísticas eficientes,
robustas e reprodutíveis, que possam ser mostradas de forma
organizada afim de garantir transparência no processo de análise e
fácil verificação dos resultados obtidos.
Desafios:
• Essas tecnologias produzem uma grande quantidade de dados.
• Esses dados possuem uma estrutura complexa, que inclui até
anotações clínicas.
Solução:
• O projeto Maiges produziu o MaigesPack (Pacote Maiges).
Pacote Maiges
• O Pacote Maiges é um pacote que
pode ser utilizado no R.
• Oferece diversos métodos
matemáticos e estatísticos para a
normalização e análise dos dados
obtidos utilizando a técnica de
microarray.
Dificuldades:
• O diagrama ilustra como a
complexidade do pacote pode ser uma
barreira para usuários.
• Para utilizar as funções e métodos do
pacote o usuário teria que saber seus
nomes e parâmetros.
A Linguagem R
O que é?
• R é uma linguagem e um ambiente computacional.
Facilidades:
• Ele é um software gratuito, sob a licença GNU General Public License.
• O R provê uma grande variedade de métodos estatísticos (modelagem linear e
não linear , testes estatísticos clássicos, análises de séries temporais,
classificação, ...) e funções para gerar diversos gráficos.
• É facilmente expansível, qualquer pessoa que entenda a sua sintaxe pode fazer
suas próprias classes e métodos.
• Existem pacotes com funções e métodos específicos para determinada atividade.
Dificuldades:
• O uso do R é restrito pois suas funções são acessadas somente por linha de
comando, então pessoas que não estejam familiarizadas com programação podem
encontrar um grande obstáculo.
A Linguagem R
Um pequeno exemplo de como o pacote Maiges funciona
Workflows Científicos
O uso da programação visual para aplicações científicas
O que é um Workflow científico?
É uma ferramenta flexível para executar análises de dados geralmente
complexas. Cada workflow é organizado em diversas etapas, que são
chamadas de "atores", que quando executados na ordem correta,
produzem saídas gráficas ou textuais.
Exemplo de workflow científico que recebe dados científicos, analisa e gera uma saída
gráfica.
Programação Visual
• Construção de programas manipulando elementos gráficos e não apenas
especificando-os textualmente.
• Linguagem de programação visual (VPL): expressões visuais e símbolos gráficos
(ícones, flechas, caixas, arcos, círculos).
•Esses itens se conectam, formando o ciclo de execução do programa.
• Promove a reusabilidade dos componentes de interfaces e segue o paradigma de
desenvolvimento baseado em componentes.
• Exemplos de ambientes de desenvolvimento: Microsoft Robotics Studio(Microsoft
VPL), YAWL, LabVIEW, KEPLER, entre outros.
Exemplo
Incrementando uma variável
Figura: Programa Microsoft Robotics Studio (Microsoft VPL)
http://msdn2.microsoft.com/pt-br/library/bb483093.aspx
Kepler Project
Sofware para computação visual baseada em workflows
O que é o Kepler?
O Kepler é um programa de computação visual baseado em workflows
que é amplamente utilizado por cientistas. Estes, conseguem criar e
executar workflows científicos que podem englobar processos
complexos, integrando programação R, MATLAB, acesso a banco de
dados externo, entre outras funcionalidades.
O software é baseado em componentes chamados de “atores”, que
comunicam-se entre si através de “portas” de entrada e saída. Desta
forma, eles conseguem trabalhar de forma encapsulada. Cada "Ator"
faz ações tais como execução de código, acesso a dados,
processamento de dados.
Kepler Project
Sofware para computação visual baseada em workflows
Funcionamento do Kepler
A base principal do Kepler é a utilização dos atores, que são responsáveis
por:
• encapsular as ações.
• canalizam as entradas, executam e fornecem uma saída.
As portas são a forma centralizada de comunicação entre os atores. Os
dados são heterogêneos e podem ser recebidos e enviados para:
• banco de dados
• saídas em arquivos, saídas gráficas e bloxplots
• páginas web
• FTP e SSH
Os diretores são responsáveis por gerenciar a execução dos atores. Isso
permite que o workflow seja executado de forma contínua, única, ou
seguindo regras personalizadas.
Kepler Project
Sofware para computação visual baseada em workflows
Workflow montado no Kepler do pacote Maiges do R.
Conclusão
É viável a utilização do Kepler para bioinformática?
Após conversar com o desenvolvedor do Kepler responsável pela
implementação do R, compreendemos as dificuldades e limitações
deste recurso (chamado de RExpression).
• Cada ator do R roda em um processo separado.
• O R é iniciado e finalizado em cada ator, perdendo um precioso tempo
na inicialização.
• O input e output trocados entre os atores é limitado, suportando
apenas algumas estruturas de dados básicas do R.
• É possível salvar o workspace do R em um ator para abrir nos
seguintes, mas isto é muito demorado (cada workspace pode ter muitos
megabytes). Além disso, perde a idéia de orientação a objeto.
Conclusão
É viável a utilização do Kepler para bioinformática?
Tendo em vista que a análise e processamento de dados de
bioinformática requer muito recurso de hardware, esta solução seria
muito ineficiente.
Uma idéia por trás da programação visual é unir programas e dados
heterogêneos, que não foram criados com a intenção de serem rodados
por plataformas de programação visual.
Seria possível programar em R de tal forma que fosse possível utilizar o
Kepler, mas esta não é a solução para o nosso problema pois os
pacotes de análise em R já foram criados.
FIM
Alunos
André de Melo Folli
Bruno Henrique Yoshimura
Gustavo Andrade Nery
Orientador
Prof. Dr. Roberto Hirata
Download

Apresentação ()