850 likes | 1.01k Views
Uma aplicação web para cálculo de similaridade em acessos de cana-de-açúcar. Aluno: José Júnior de Oliveira Silva Orientador: Elthon Alex da Silva Oliveira Co-orientador: Cícero Carlos de Sousa Almeida. SUMÁRIO. Introdução; Fundamentação teórica; Trabalhos relacionados;
E N D
Uma aplicação web para cálculo de similaridade em acessos de cana-de-açúcar. Aluno: José Júnior de Oliveira Silva Orientador: Elthon Alex da Silva Oliveira Co-orientador: Cícero Carlos de Sousa Almeida
SUMÁRIO • Introdução; • Fundamentação teórica; • Trabalhos relacionados; • O software proposto; • Trabalhos futuros; • Considerações finais. Bacharelado em Ciência da Computação
Introdução • Iniciou com o projeto de pesquisa sistema de certificação de variedades de cana-e-açúcar utilizando “fingerprinting” de DNA, financiado pelo CNPq; • Esse projeto foi realizado no período de 2009 a 2010; • Envolveu as áreas de Agronomia e Ciência da Computação; • Objetivo de desenvolver um software que desse suporte apesquisadores de genética molecular; • Realização de cálculo de similaridade entre os acessos de cana-de-açúcar; • Acessos são variedades diferentes de plantas, que podem até ter as mesmas características morfológicas mas são geneticamente diferentes. Bacharelado em Ciência da Computação
Introdução • Necessidades iniciais: • Armazenamento de dados genéticos; • Comparação de acessos de cana-de-açúcar; • Teste de paternidade ; • Possibilidade de compartilhar os dados via web; • Ferramenta fácil de usar; • Possibilidade de acessar remotamente o sistema. Bacharelado em Ciência da Computação
Introdução • Solução: • Implementação de um software para cálculo de similaridade entre acessos de plantas; • Linguagem de programação PHP; • Banco de dados MySql; • Utilização de Zend Framework; • Disponível na web; • Interface simples e de fácil uso. Bacharelado em Ciência da Computação
Introdução • Contribuições: • Prover um ambiente simples e fácil de usar; • Identifica a similaridade entre acessos de plantas; • Identifica uso indevido de acessos de plantas; • É a base para o melhoramento genético vegetal; • A partir das informações geradas pode-se inferir quais cruzamentos podem ser mais proveitosos em uma determinada cultura. Bacharelado em Ciência da Computação
Introdução • Diferencial: • Interface simples e fácil de usar comparada com a maioria dos softwares com finalidades semelhantes; • Idioma português; • Comparação de marcadores e não de sequências; • Possibilidade de interação entre muitos pesquisadores. Bacharelado em Ciência da Computação
SUMÁRIO • Introdução; • Fundamentação teórica; • Trabalhos relacionados; • O software proposto; • Trabalhos futuros; • Considerações finais. Bacharelado em Ciência da Computação
Fundamentação Teórica • Implementar uma aplicação requer um certo conhecimento do seu domínio; • Termos utilizados nas classes, relacionamentos e entidades de banco de dados podem ser muito complexos; • Entender o significado de cada termo é fundamental para a implementação; • Nem sempre essa tarefa é trivial; • Em muitos casos existe a necessidade de recorrer a um especialista na área; • A bioinformática e a biologia computacional: • Utilizam a Ciência da Computação para solucionar problemas biológicos. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Alelos; • Marcadores moleculares; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
DNA DNA Estrutura do DNA • Presente nas células de todo indivíduo; • Carrega informações genéticas; • Diferente para cada indivíduo; • Formado por uma dupla hélice ligada por bases nitrogenadas; • Essa dupla hélice forma a sequência genética de um indivíduo; • Combinações de ACGT. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Marcadores moleculares • Herdados geneticamente; • Servem como base para diferenciar indivíduos; • SSR – Simplesequencerepeats: • Caracterizado da repetição de uma sequências com 1 a 6 nucleotídeos; • São usados primerspara marcar o início e fim de cada marcador. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Alelos • São diferentes versões de um marcador em um indivíduo; • Podem significar a presença de características morfológicas; • A presença de mais de um alelo em um indivíduo é chamada de polimorfismo. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
PCR – Polimerasechainreaction • Reação em cadeia de polimerase; • Cria múltiplas cópias de DNA sem a utilização de um organismo vivo; • Utilizada principalmente em situações em que a quantidade de DNA disponível é reduzida; • Utiliza primers, que delimitam a área a ser amplificada. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Cálculo de similaridade • Calcular a distância genética entre os indivíduos; • Utiliza-se diferentes versões dos marcadores (alelos) como base para calcular a similaridade; • Cada acesso será caracterizado com a presença ou ausência de determinado alelo para cada marcador apresentado por ele; • A comparação entre os acessos, utilizando uma metodologia específica, é o que determina a distância genética entre os indivíduos; • Para esta tarefa são usados coeficientes de similaridade; • Os dados podem ser representados em uma matriz de distância e/ou em uma árvore denominada dendograma. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Matriz de características • As linhas dessa matriz representa os diferentes acessos de plantas; • As colunas representam os alelos que eles apresentam; • É preenchida com 1 ou 0. Representando a presença ou ausência de um alelo respectivamente. • Essa matriz serve de base para encontrar a similaridade entre cada par de acessos. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Coeficientes de similaridade • Os coeficientes de similaridade mais usuais são: • Baseados na distância (geralmente euclidiana); • Baseados na correlação entre pares de valores; • Baseado na associação entre caracteres qualitativos; • Neste trabalho foi usada a última abordagem, utilizando dados binários. Bacharelado em Ciência da Computação
Similaridade utilizando caracteres qualitativos binários • Tomados dois objetos, temos as seguintes situações representadas por uma letra do alfabeto: • A, se estes apresentarem o mesmo caractere ; • B, se o caractere estiver presente no primeiro e ausente no segundo; • C, se estiver ausente no primeiro e presente no segundo; • D, se estiver ausente em ambos. Bacharelado em Ciência da Computação
Coeficientes de similaridade Binários • Utilizam os valores A, B, C e D de dois objetos para encontrar a similaridade entre eles; • Existem vários coeficientes que expressam similaridade; • Neste trabalho foi usado o de Jacard: • simJaccard = a/(a+b+c) Bacharelado em Ciência da Computação
Similaridade utilizando caracteres qualitativos binários • Exemplo utilizando uma matriz de dados binários: • O valor das variáveis é obtido como mostra a figura; • Ao final de cada comparação o número de ocorrência de cada variável é usado por um coeficiente de similaridade como o de jaccard para encontrar a distância genética entre os pares de acessos. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Matriz de distância • Aplicando o coeficiente jaccard à todos os pares da matriz anterior obtém-se a matriz de distância; • Esta matriz representa a distância genética entre os indivíduos; • Valores vão de 0 a 1, representando o grau de similaridade entre cada par; • Sendo 1 similaridade total e 0 nenhuma similaridade. • A partir dos resultados dessa matriz pode-se agrupar os acessos mais próximos geneticamente Bacharelado em Ciência da Computação
Teste de paternidade • Objetiva identificar possíveis utilizações ilegais de uma variedade de planta; • Procedimento semelhante à comparação de acessos; • O acesso suspeito junta-se a matriz de características do formada pelos acessos do banco de dados; • O resultado mostrará o quão similar este acesso (suspeito) é dos demais presentes no banco; • O resultado também será mostrado em uma matriz de distância, mas com uma linha e uma coluna a mais. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Método de agrupamento UPGMA • Agrupa indivíduos semelhantes; • Resultado da matriz de distância pode ser convertido em um dendograma; • Os nós desse dendograma são encontrados da seguinte forma: • Identifica-se o par com distância mínima entre o número total de pares; • Combinar esses dois objetos como um único par; • Recalcula-se as distâncias entre os outros pares para formar uma nova matriz; • Identifica-se a menor distância entre os pares da nova matriz; • Repete-se os passos até que os últimos dois grupos sejam analisados. Bacharelado em Ciência da Computação
Método de Agrupamento UPGMA - Exemplo • Considere 5 indivíduos (A, B, C , D e E); • Com a matriz de distância a seguir; • Agrupa-se o par com menor distância (AB); • A distância em relação aos demais pares deve ser recalculada; • Exemplo: • A distância de C para AB = (60 + 50)/2 = 55 Bacharelado em Ciência da Computação
Método de Agrupamento UPGMA - Exemplo • Como resultado do procedimento anterior obtém-se a seguinte matriz: • Os passos devem ser seguidos até restarem apenas dois grupos. Bacharelado em Ciência da Computação
Fundamentação Teórica • DNA; • Marcadores moleculares; • Alelos; • PCR; • Cálculo de similaridade; • Matriz de características; • Coeficientes de similaridade; • Matriz de distância; • Método de agrupamento UPGMA; • Dendograma. Bacharelado em Ciência da Computação
Dendograma • Os valores mínimos obtidos em cada passo são usados pra construir o dendograma, que é mostrado a seguir: • Agrupa elementos mais próximos; • Nós descrevem a distância entre elementos, entre elementos e grupos ou entre grupos; • Agrupam-se pares com menor distância. Bacharelado em Ciência da Computação
SUMÁRIO • Introdução; • Fundamentação teórica; • Trabalhos relacionados; • O software proposto; • Trabalhos futuros; • Considerações finais. Bacharelado em Ciência da Computação
Trabalhos Relacionados • BLAST: • Programa de alinhamento mais usado no mundo; • Realiza cruzamento de sequências; • Trabalha com banco de dados públicos; • Pode ser usado via web. • FASTA: • Primeiro programa largamente utilizado para encontrar similaridade em banco de dados; • Dele deriva-se o formato de arquivo fasta; Bacharelado em Ciência da Computação
Trabalhos Relacionados • CrustalW: • Versão web do crustal um dos programas de alinhamento mais utilizados; • Possui interface gráfica, proporcionando um ambiente agradável para o usuário. Bacharelado em Ciência da Computação
SUMÁRIO • Introdução; • Fundamentação teórica; • Trabalhos relacionados; • O software proposto; • Trabalhos futuros; • Considerações finais. Bacharelado em Ciência da Computação
Ferramenta Desenvolvida • Objetivos; • Metodologia; • Reuso de código (Zend Framework); • Diagramas UML; • Telas do sistema; • Implementação; • Exemplo prático. Bacharelado em Ciência da Computação
Ferramenta Desenvolvida • Objetivos: • Armazenar dados genéticos; • Realizar comparações entre acessos de plantas; • Realizar testes de paternidade; • Poder ser utilizado via web; • Ser simples e fácil de usar; • Realizar comparações usando marcadores moleculares. Bacharelado em Ciência da Computação
Ferramenta Desenvolvida • Objetivos; • Metodologia utilizada; • Reuso de código (Zend Framework); • Diagramas UML; • Telas do sistema; • Implementação; • Exemplo prático. Bacharelado em Ciência da Computação
Ferramenta Desenvolvida • Metodologia utilizada: • Desenvolvido na linguagem PHP; • Banco de dados MySql; • Zend Framework; • Padrão MVC; Bacharelado em Ciência da Computação
Ferramenta Desenvolvida • Objetivos; • Metodologia utilizada; • Reuso de código (Zend Framework); • Diagramas UML; • Telas do sistema; • Implementação; • Exemplo prático. Bacharelado em Ciência da Computação
Reuso de código (Zend Framework): • Por que usar um framework? • Por que Zend Framework? • Padrão MVC; • Zend Config; • Zend Table; • Zend Form; • Zend Auth; • Zend Layout; Bacharelado em Ciência da Computação
Por que usar um framework? • Em projetos não triviais deve-se fazer a escolha por utilizar um framework existente ou criar um próprio; • O uso de um framework reduz o tempo de desenvolvimento; • Classes já vem testadas; • Utilizam padrões de projeto. Bacharelado em Ciência da Computação
Reuso de código (Zend Framework): • Por que usar um framework?; • Por que Zend Framework?; • Padrão MVC; • Zend Config; • Zend Table; • Zend Form; • Zend Auth; • Zend Layout; Bacharelado em Ciência da Computação
Por que Zend Framework? • Framework de código aberto para desenvolvimento web; • Orientado a objetos; • Implementado em PHP 5; • Objetiva simplificar o desenvolvimento web; • Componentes podem ser usados de forma padrão (MVC) ou da forma que fizerem sentido na aplicação. • Alguns componentes: • Zend layout; • Zend Form; • Zend DbTable; • Zend Auth; • Zend Config. Bacharelado em Ciência da Computação
Reuso de código (Zend Framework): • Por que usar um framework? • Por que Zend Framework; • Padrão MVC; • Zend Config; • Zend Table; • Zend Form; • Zend Auth; • Zend Layout; Bacharelado em Ciência da Computação
Padrão MVC • Camada de negócio (models); • Camada de representação (view); • Camada de controle ( controller); Bacharelado em Ciência da Computação