Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Bioconductor
Carlos Fernando Montoya Cubas, CMCC, UFABC,
I. I NTRODUO
Ioconductor [1] uma iniciativa para a criao coletiva
de software para a biologia computacional e a bioinformtica Computational biology and bioinformatics (CBB) ,
onde grupes de pesquisadores desenvolveram mtodos estadsticos, como processos biolgicos num entorno computacional.
A principal motivao deste projeto que os pesquisadores
tenham uma ferramenta para o compartilhamento de dados,
resultados e a adio de novos mtodos ao projeto. As motivaes primordiais so:
Transparncia: necessrio mostrar os processos da transformao de dados de baixo nvel a banco de dados estatsticos
biolgicos.
Busca da reprodutibilidade: Os protocolos da biologia
experimental devem ser publicados, tanto o mtodo, cdigo
fonte como os dados nos quais so baseados cada metodologia.
Eficincia de desenvolvimento: No se refere somente
ao desenvolvimento do software, tambm aos processos subjacentes ao mtodo, assim novos pesquisadores podem ampliar ou melhorar os mtodos existentes. A estratgia de
desenvolvimento do software similar ao que foi feito pelo
GNU/Linux, a ideia ao igual que esse projeto disponibilizar
o projeto a todos os pesquisadores em biologia computacional,
bioinformtica e reas de pesquisa similares um conjunto de
ferramentas computacionais que ajudem na pesquisa de todas
essas reas.
Seleo do software: A maioria dos softwares desenvolvidos para os estudos em bioinformtica foram feitos em
R como MAANOVA [10] e dChip[11]. Esse fato alm do
crescente uso do R em outras reas de pesquisa, faz que o
projeto Biocondutor tenha escolhido o R como linguagem de
desenvolvimento. As capacidades do R da criao de pacotes
faz que a criao de novos prottipos seja de um jeito mais
simples e organizado, tambm facilita o compartilhamento de
estes j que so de cdigo aberto.
A linguagem R:
CBB apresenta uma ampla gama de desafios, e qualquer
projeto de desenvolvimento de software, ser necessrio considerar os aspectos especficos que ir abordar. Em particular
o bioconductor esta interessado em problemas de gesto e
anlise de dados associados com microarranjos de DNA. Esta
orientao necessita de um ambiente de programao que
tenha boas capacidades numricos, recursos de visualizao
flexveis, o acesso a bases de dados e uma grande variedade de
algoritmos estatsticos e matemticos. O R posui uma gama de
ferramentas estatsticas e de visualizao bem implementadas
que o eficas para lidar com o desenvolvimento e distribuio
do tempo de software robusto para CBB. Vemos tambm que
o R est ganhando uso generalizado na comunidade CBB
independentemente do projeto Bioconductor. Muitos outros
projetos de bioinformtica e os investigadores encontraram
R ser uma boa linguagem e conjunto de ferramentas com a
qual trabalhar. Exemplos incluem MAANOVA [2] e dChip
[3]. Temos agora enumerar sucintamente as caractersticas do
ambiente de software R que so importantes motivaes por
trs de sua seleo.
Capacidades de prototipagem R uma linguagem interpretada de alto nvel em que se pode facilmente e rapidamente
escrever prottipos de novos mtodos computacionais. Estes
mtodos podem no ser executados rapidamente na lenguagem
interpretada, e aqueles que so bem sucedidos sero os que
ficaro amplamente utilizados, muitas vezes, tm de ser reaplicado a funcionar mais rapidamente. Isso muitas vezes
um bom compromisso; podemos explorar lotes de conceitos
com facilidade e colocar mais esforo em aqueles que so bem
sucedidos.[4], [1]
Protocolo de empacotamento O ambiente de R inclui um
sistema bem estabelecido para a embalagem de componentes
de software relacionados entre si e documentao. H uma
grande quantidade de apoio na linguagem para a criao, teste
e distribuio de software sob a forma de pacotes. Usando
um sistema de pacotes nos permite desenvolver diferentes
mdulos de software e distribu-los com noes claras de
cumprimento do protocolo, a validao baseada em teste, a
identificao de verso, e as interdependncias de pacotes.
O sistema de embalagem tem sido adotado por centenas de
desenvolvedores ao redor do mundo e est no corao do
Comprehensive R Archive Network, onde vrias centenas de
pacotes independentes, mas interoperveis que abordam uma
ampla gama de objetivos, anlise e visualizao de estatsticas
pode ser baixado como cdigo aberto. [1]
Suporte de programao orientada a objeto A complexidade dos problemas em CBB muitas vezes traduzido
em uma necessidade para muitas ferramentas de software
diferentes para atacar um nico problema. Assim, muitos
pacotes de software so utilizadas para uma nica anlise.
O Open Bioinformatics Foundation apoia projectos semelhantes a Bioconductor que so nominalmente enraizada em
linguagens de programao especficas. BioPerl [12], biopython [13] e BioJava [14] so exemplos importantes de projetos
de bioinformtica baseados na linguagem de cdigo aberto.
A. BioPerl
BioPerl est claramente inclinado para o tratamento de
dados de seqncia e de interface com bases de dados de
sequncias, com suporte para visualizao de sequncia e
consultas para anotao externa. Bioconductor est inclinado
para anlise estatstica de experimentos de microarray, com
grandes preocupaes para o pr-processamento de matriz,
controle de qualidade, normalizao entre-matriz, ligao de
dados de variveis independentes e de desenho de dados de
expresso, e inferncia sobre questes biolgicas e clnicas.
Bioconductor tem pacotes dedicados fabricao e anlise
de paradigmas diversificada de microarray e outros ensaios
de alto rendimento de interesse em biologia computacional,
incluindo a anlise de srie da expresso gnica (SAGE),
array hibridizao genmica comparativa (arrayCGH), e timeof-flight protemica ( MS de SELDI-TOF) de dados. Ns
dizem que os projetos so inclinado para estas preocupaes,
porque claro que ambos os projectos em ltima anlise,
visam apoiar actividades gerais de investigao em biologia
computacional.[12]
B. BioJava
BioJava fornece Dazzle, um quadro servlet apoiar a especificao do sistema de anotao distribudo para a partilha de
dados de sequncia e metadados. Verso 1.4 do lanamento
BioJava inclui classes Java para alfabetos gerais e lista de
smbolo de processamento, ferramentas para anlise de sadas
de anlises relacionadas com a exploso, e software para
construir e modelos ocultos de Markov de montagem. Em
princpio, qualquer um desses recursos pode ser usado para
anlise em Bioconductor / R atravs da SJava interface [14].
C. BioPython
Biopython fornece software para a construo de objetos
python ao analisar a sada dos vrios algoritmos de alinhamento ou de agrupamento, e para uma variedade de tarefas,
incluindo a jusante classificao. Biopython tambm fornece
infra-estrutura para a decomposio de tarefas paralelizveis
nos processos separveis para a computao em um cluster de
estaes de trabalho. [13]
IV. U SANDO B IOCONDUCTOR ( EXEMPLO )
Os resultados do projeto Bioconductor incluem um extenso
repositrio de ferramentas de software, documentao, materiais de cursos de curta durao, e os dados de anotao
biolgica em [1]. Descreve-se a utilizao dos dados de
software e anotao pela descrio de uma anlise concreta de
um arquivo de microarray derivado de um estudo de leucemia.
Leucemia linfoctica aguda (ALL) um tumor maligno comum e difcil de tratar com uma variabilidade substancial nos
resultados teraputicos. Alguns ALL pacientes tm claramente
caracterizada aberraes cromossmicas e as consequncias
funcionais destas aberraes no so totalmente compreendidos. Ferramentas de Bioconductor foram utilizados para
desenvolver uma nova caracterizao da expresso do gene em
contraste entre ALL pacientes com duas formas especficas