obansoft: aplicación para el análisis bayesiano .introducci onestado del arte diseno~ de la...

Download OBANSoft: aplicación para el análisis bayesiano .Introducci onEstado del arte Diseno~ de la aplicaci

Post on 06-Oct-2018

213 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    OBANSoft: aplicacion para el analisis bayesianoobjetivo y subjetivo. Estudio de su optimizacion y

    paralelizacion

    Manuel Quesada Martnez

    12 de julio de 2010

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Indice

    1 Introduccion

    2 Estado del arte

    3 Diseno de la aplicacion OBANSoftRequisitos, funcionalidad y modulosAplicacion del modelo MVCPrincipales objetos e interaccion entre ellosAlgoritmos bayesianos. Integracion de tecnologasEl R-Modelo y su integracion con R

    4 Rendimiento y paralelizacionEstudio de los algoritmos secuencialesSimuladores simples y compuestosParalelizacion de los simuladores compuestos

    5 Conclusiones y trabajos futuros

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Por que la aplicacion OBANSoft?

    Motivacion: llenar el vaco existente respecto a aplicaciones parael analisis bayesiano de datos con mnima informacion a priori.

    Diseno modular para facilitar:

    Extension con nueva funcionalidad.

    Independencia del modelo estadstico.

    Integracion de tecnologas.

    Utilizar como punto de partida de esta lnea de investigacionen computacion de altas prestaciones.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Grupos de investigacion

    (UMU): Grupo de Computacion Cientfica yProgramacion Paralela:asdfExperiencia en el desarrollo y optimizacion de codigo paralelo.Incluyendo tecnicas de autooptimizacion y en la aplicacion dela computacion paralela en diversos campos cientficos.

    (UMH): Grupo de Estadstica Bayesiana:asdfExperiencia en el desarrollo de codigos de simulacion aplicablesa la resolucion de analisis bayesianos en diversos campos.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Alternativas disponibles para analis bayesianos

    Alternativas y lenguajes para el analisis bayesiano:

    Algunas libreras de SAS.

    Software bayesiano Winbugs.

    El proyecto R.

    .Interfaces graficas para R:

    RCommander.

    JGR.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Alternativas disponibles para analis bayesianos

    Alternativas y lenguajes para el analisis bayesiano:

    Algunas libreras de SAS. aaaaaaaaaaaa (Software de pago)

    Software bayesiano Winbugs. aaaa (Solo analisis subjetivos)

    El proyecto R.

    .Interfaces graficas para R: aaaa(Insuficientes para su extension)

    RCommander.

    JGR.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Artefactos, tecnologa y herramientas

    Se recoge el resumen de los objetos software, tecnologa y librerasutilizadas:

    .Elemento Software Tecnologas Libreras

    Librera estadstica Java (JSE) + R JRI

    Aplicacion de escritorio Java Swing Swing

    Paralelizacion R paralelo Snow Fall

    Se ha programado y probado en sistemas:Windows XP, Ubuntu 8.10 y MacOS Leopard

    Los experimentos para los codigos paralelos programados sehan realizado en la maquina Luna.inf.um.es: procesador IntelQuad Core 4 y 4 GB de RAM.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Requisitos, funcionalidad y modulos

    Requisitos, funcionalidad y modulos

    Para desarrollar una aplicacion que infiera con modelosestadsticos bayesianos sobre bancos de datos, se debesoportar previamente la funcionalidad mnima para laedicion y manipulacion de los mismos.

    Modulos de requisitos (Segun su funcionalidad):

    Creacion y edicion de bancos de datos (DataFrames).

    Descriptivas numericas y graficas.

    Transformaciones sobre los datos.

    Simulacion de datos.

    Modelizacion y analisis.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Requisitos, funcionalidad y modulos

    Resumen de la metodologa aplicada

    Abordar diversas areas nos lleva a dividir la metodologa en 4partes:

    Parte I: elaboracion de un catalogo que recoja las operacionesbayesianas que soporta la aplicacion.

    Parte II: decidir que tecnologas y recursos se utiliza paradisenar e implementar la aplicacion y la librera de funciones.

    Parte III: diseno e implementacion de la librera y laaplicacion de escritorio.

    Parte IV: estudio del rendimiento y paralelizacion de losalgoritmos de simulacion.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Aplicacion del modelo MVC

    El modelo Modelo-Vista-Controlador

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Principales objetos e interaccion entre ellos

    Objetos del Modelo

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Principales objetos e interaccion entre ellos

    Objetos de la Vista

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Principales objetos e interaccion entre ellos

    Objetos del Controlador

    Controlador principal que gestiona todos los eventos que requierenla participacion del MainForm: MainController.

    .Controladores por modulos:

    sdfFileController

    sdfEditController

    sdfDescriptiveController

    sdfInferenceController

    Otros objetos:

    DataFramesControllersdf

    GestorGraficos

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Algoritmos bayesianos. Integracion de tecnologas

    Algoritmos bayesianos. Integracion de tecnologas

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    El R-Modelo y su integracion con R

    El R-Modelo y su integracion con R

    Logs de la aplicacion: log de la general y log del R-Modelo

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    El R-Modelo y su integracion con R

    El R-Modelo y su integracion con R

    Logs de la aplicacion: logs de la aplicacion y log del R-Modelo.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Estudio de los algoritmos secuenciales

    Que algoritmos optimizar y paralelizar?

    Entre todos los algoritmos programados nos centramos en losalgoritmos de simulacion.

    Consumen mayor tiempo de ejecucion.

    Punto crtico de la resolucion de un analisis bayesiano.

    Todo el analisis se basa en la simulacion. Son utilizados para lainferencia de los modelos bayesianos.

    Tenemos en la aplicacion un total de 27 algoritmosprogramados!

    Metodologa (Parte IV): realizamos un estudio experimentalde los tiempos de ejecucion de todos ellos y seleccionamos losmas adecuados.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Estudio de los algoritmos secuenciales

    Que algoritmos optimizar y paralelizar?

    Entre todos los algoritmos programados nos centramos en losalgoritmos de simulacion.

    Consumen mayor tiempo de ejecucion.

    Punto crtico de la resolucion de un analisis bayesiano.

    Todo el analisis se basa en la simulacion. Son utilizados para lainferencia de los modelos bayesianos.

    Tenemos en la aplicacion un total de 27 algoritmosprogramados!

    Metodologa (Parte IV): realizamos un estudio experimentalde los tiempos de ejecucion de todos ellos y seleccionamos losmas adecuados.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Estudio de los algoritmos secuenciales

    Experimento 1: Tendencia del crecimiento

    Tendencia de los simuladores

    Nmero de simulaciones

    Tiempo

    (mseg)

    Tendencia lineal en el tiempo de ejecucion a medida queaumentamos el numero de simulaciones.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Estudio de los algoritmos secuenciales

    Experimento 2: Comparativa de los simuladores

    Se observan dos tipos de simuladores: Simuladores Simples ySimuladores Compuestos.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Simuladores simples y compuestos

    Estructura de los Simuladores Compuestos

    Invocamos una vez a una funcion simple de tamano X.

    Invocamos X veces a otra funcion simple (funcion cadena)con parametros extrados de la funcion anterior.

    Los experimentos indican que la funcion cadena consumeun 90 % del tiempo total de ejecucion.

    Paralelizamos la funcion cadena con R paralelo.

  • Introduccion Estado del arte Diseno de la aplicacion OBANSoft Rendimiento y paralelizacion Conclusiones y trabajos futuros

    Paralelizacion d