stringtranslate.com

Anduril (motor de flujo de trabajo)

Anduril es un marco de flujo de trabajo basado en componentes de código abierto para el análisis de datos científicos [2] desarrollado en el Laboratorio de Biología de Sistemas de la Universidad de Helsinki .

Anduril está diseñado para permitir un análisis de datos sistemático, flexible y eficiente, particularmente en el campo de experimentos de alto rendimiento en investigación biomédica. Actualmente, el sistema de flujo de trabajo proporciona componentes para varios tipos de análisis, como secuenciación , expresión genética , SNP , ChIP-on-chip , hibridación genómica comparativa y análisis de microarrays de exones, así como citometría y análisis de imágenes celulares .

Arquitectura y características

Un flujo de trabajo es una serie de pasos de procesamiento conectados entre sí de modo que la salida de un paso se utiliza como entrada de otro. Los pasos de procesamiento implementan tareas de análisis de datos, como la importación de datos, pruebas estadísticas y generación de informes. En Anduril, los pasos de procesamiento se implementan mediante componentes, que son código ejecutable reutilizable que se puede escribir en cualquier lenguaje de programación. Los componentes están conectados entre sí en un flujo de trabajo, o una red de componentes, que es ejecutado por el motor de flujo de trabajo Anduril. La configuración del flujo de trabajo se realiza utilizando un lenguaje de programación simple pero potente, AndurilScript. La configuración y ejecución del flujo de trabajo se puede realizar desde Eclipse , una popular GUI multipropósito, o desde la línea de comandos.

El motor central de Anduril está escrito en Java y los componentes están escritos en una variedad de lenguajes de programación, incluidos Java, R , MATLAB , Lua , Perl y Python . Los componentes también pueden depender de bibliotecas de terceros, como Bioconductor . Se proporcionan componentes para imágenes celulares y análisis de microarrays, pero los usuarios pueden implementar componentes adicionales. El núcleo de Anduril ha sido probado en Linux y Windows.

Anduril 1.0: lenguaje AndurilScript

Hola mundo en AndurilScript es simplemente

 estándar . echo ( "¡Hola mundo!" )

Los comentarios siguen la sintaxis de Java:

 // Un comentario simple /* Otro comentario simple */ /** Una descripción que se incluirá en la descripción del componente */  

Los componentes se llaman asignando sus llamadas a instancias de componentes con nombre. Los nombres no se pueden reutilizar dentro de un único flujo de trabajo. Hay componentes especiales para archivos de entrada que incluyen archivos externos al script. Los tipos atómicos admitidos son entero, flotante, booleano y cadena, y la escritura se realiza de forma implícita.

 in1 = ENTRADA ( ruta = "myFile.csv" ) constante1 = 1 componenteInstancia1 = MiComponente ( entradaPuerto1 = in1 , entradaParam1 = constante1 )             

Los flujos de trabajo se construyen asignando salidas de instancias de componentes a entradas de los siguientes componentes.

 InstanciaComponente2 = OtroComponente ( PuertoEntrada1 = InstanciaComponente1 . PuertoSalida1 )    

Las instancias de componentes también se pueden empaquetar como funciones.

 función MiFunción ( InType1 in1 , ..., opcional InTypeM inM , ParType1 param1 , ..., ParTypeP paramP = defaultP ) -> ( OutType1 out1 , ..., OutTypeN outN ) { ... declaraciones ... devolver registro ( salida1 = x1 , ..., salidaN = xN ) }                          

Además de las declaraciones estándar if-else y switch-case, AndurilScript también incluye bucles for.

 // Itera sobre 1, 2, ..., 10 matriz = registro () para i : std . rango ( 1 , 10 ) { matriz [ i ] = Algún componente ( k = i ) }            

Extensibilidad

Anduril se puede ampliar en múltiples niveles. Los usuarios pueden agregar nuevos componentes a los paquetes de componentes existentes. Sin embargo, si el nuevo componente o componentes realizan tareas que no están relacionadas con los paquetes existentes, los usuarios también pueden crear nuevos paquetes.

Moksiskaan

La cara molesta del logo de Moksiskaan

Moksiskaan es un marco de integración de datos para la investigación del cáncer y la biología molecular . [3] El marco proporciona una base de datos relacional que representa un gráfico de entidades biológicas como genes, proteínas, fármacos, vías, enfermedades, procesos biológicos, componentes celulares y funciones moleculares. Además, existe un amplio conjunto de herramientas de análisis y adhesión construidas sobre estos datos. La gran mayoría de estas herramientas se implementan como componentes y funciones de Anduril.

Moksiskaan se utiliza principalmente para interpretar listas de genes candidatos obtenidos de los estudios genómicos. Sus herramientas se pueden utilizar para generar gráficos de entidades biológicas relacionadas con los genes de entrada. La forma exacta de estos gráficos puede variar desde las predicciones del objetivo del fármaco hasta las series temporales de cascadas de señalización. Algunos de los objetivos de estas herramientas están estrechamente relacionados con la API .

Ver también

Referencias

  1. ^ "anduril-dev/anduril/doc/ChangeLog.txt — Bitbucket". bitbucket.org . Consultado el 25 de marzo de 2021 .
  2. ^ Ovaska, K.; Laakso, M.; Haapa-Paananen, S.; Louhimo, R.; Chen, P.; Aittomäki, V.; Valo, E.; Núñez-Fontarnau, J.; Rantanen, V.; Karinen, S.; Nousiainen, K.; Lahesmaa-Korpinen, AM; Miettinen, M.; Saarinen, L.; Kohonen, P.; Wu, J.; Westermarck, J.; Hautaniemi, S. (2010). "El marco de integración de datos a gran escala proporciona una visión integral del glioblastoma multiforme". Medicina del genoma . 2 (9): 65. doi : 10.1186/gm186 . PMC 3092116 . PMID  20822536. 
  3. ^ Laakso, M.; Hautaniemi, S. (2010). "Plataforma integradora para traducir conjuntos de genes a redes". Bioinformática . 26 (14): 1802–1803. doi : 10.1093/bioinformática/btq277 . PMID  20507894.

Otras lecturas

enlaces externos