Pasar al contenido principal

Proyectos del Instituto de Computación

Algoritmos Evolutivos para el reconocimiento de caracteres

  • Autores: José Pablo González y Diego Segovia
  • Tutor: Martín Pedemonte
  • Resumen: El reconocimiento óptico de caracteres (OCR), tiene como objetivo extraer los caracteres de una imagen para almacenarlos en un formato con el cual puedan interactuar otros programas. Los mecanismos de reconocimiento disminuyen su exactitud cuando las imágenes poseen deficiencias en el trazado de las letras, interferencias y suciedades que acumulan los textos, propios del uso y del paso del tiempo. En este tipo de escenarios, el reconocimiento de un texto en forma completa por parte de una herramienta OCR es todavía un problema abierto. Los algoritmos evolutivos (AEs) son una técnica de optimización, basados en los postulados de la evolución biológica, utilizados principalmente para la resolución de problemas con espacios de búsqueda extensos y no lineales. Este proyecto presenta una propuesta innovadora en la que se utilizan AEs para mejorar los niveles de reconocimiento de una herramienta OCR al trabajar con imágenes con interferencias. El AE es usado para determinar los parámetros de un modelo de transformación que utiliza funciones de conversión de imágenes para cambiar el aspecto de la imagen a reconocer mejorando su legibilidad. La evaluación experimental realizada muestra el potencial de la propuesta ya que permite mejorar el reconocimiento de caracteres en captchas habitualmente utilizados en Internet.

Estudio de Aplicaciones de Realidad Aumentada en el contexto de Dispositivos Móviles

  • Autores:Santiago Mera, Felipe Stanham y Diego Varese
  • Tutores: Gabriel López y Leonardo Rodríguez
  • Resumen: La realidad aumentada no ha tenido una aplicación práctica en mercados de consumo hasta hace poco con la proliferación de dispositivos móviles con gran poder de procesamiento. En el proyecto se estudiaron varias técnicas utilizadas para implementar realidad aumentada. Especialmente aquellas para el reconocimiento de imágenes y dentro de éstas la detección y descripción de puntos de interés que puedan ser utilizadas para identificar un objeto. Una de las grandes ventajas de esta familia de técnicas es la robustez respecto a cambios de perspectiva e iluminación, convirtiéndolas en buenas candidatas para reconocer objetos del mundo real. En base al estudio se planteó una arquitectura de referencia que permita escalabilidad sobre la cantidad de objetos y flexible en los tipos de objetos que se pueden reconocer. Esta sirve como base para crear aplicaciones de realidad aumentada en dispositivos móviles utilizando detección y descripción de puntos de interés para el reconocimiento de objetos. Luego se procedió con la implementación de un prototipo concreto que demuestra la viabilidad de la solución propuesta obteniendo resultados prometedores al ejecutar en tiempo real y con una precisión cercana al 90% de aciertos sobre un dispositivo móvil moderno como el iPhone 4 y el iPad2.

Mecanismo Para La Construcción De Mashups Para El Portal Del Estado Uruguayo

  • Autores: Javier Berceiro, Andrea Terzaghi y Sebastián Vergara
  • Tutores: Fabricio Álvarez, Laura González y Gabriel López
  • Resumen: Con el crecimiento masivo de la información disponible en Internet surge la oportunidad de combinarla, centralizarla y presentarla consolidada y de nuevas formas. Es aquí que nacen los mashups, los cuales son componentes de software que combinan datos o funcionalidades desde dos o más fuentes, para crear nuevos contenidos o servicios de valor agregado para el usuario. En Uruguay el Portal del Estado Uruguayo (PEU) busca ser el punto de acceso a la información disponible en los portales de los distintos organismos del Estado. El PEU es llevado adelante por AGESIC que es la agencia que promueve e impulsa el gobierno electrónico en Uruguay. Si bien el PEU resuelve la problemática de presentar la información de forma centralizada, no tiene actualmente un mecanismo para la construcción de mashups. El trabajo realizado en este proyecto consistió en diseñar e implementar un mecanismo para la construcción de mashups para el PEU, tomando como dominio de estudio las áreas de seguridad social y salud. Se construyó un framework que promueve la reutilización y el desarrollo uniforme. El mecanismo brinda funcionalidades para extraer, combinar, transformar y seleccionar la forma en que se visualizará la información. En cuanto a las tecnologías utilizadas, se trabajó con el WebSphere Portal Server, JBoss-ESB, Tomcat y el EMML Engine.

Marco de Evaluacion del Proceso de Pruebas Funcionales utilizado en el CES

  • Autores: Paola Amarillo y Adrián García
  • Tutores: Raquel Abella, Beatriz Pérez y Mónica Wodzislawski
  • Resumen: La prueba de software es un componente crítico en un proceso de desarrollo de software maduro y de calidad, y una de las actividades más desafiantes y costosas. En este contexto el Centro de Ensayo de Software (CES)  desarrolló y utiliza el proceso de pruebas funcionales Protest. El proyecto realizado consistió en la construcción de un Marco de Evaluación para Pruebas Funcionales  y Pruebas Automatizadas,el cuál utilizó como Modelo de Referencia, Protest. Como parte del modelo se definió: la definición de los niveles de capacidad y los niveles de madurez; los atributos que caracterizan cada nivel; las reglas para determinar el alcance de un determinado proceso ejecutado; y los indicadores para determinar los niveles de cumplimiento de los atributos. Además de lo indicado, se realizaron modificaciones al proceso original, agregando actividades y procesos nuevos, que agregan capacidad al modelo. Por último, se definió un Proceso de Evaluación, que sirve como guía para ejecutar una valoración completa a un proyecto. Todos estos elementos fueron validados mediante dos pruebas de campo, a dos empresas del sector. Ambas empresas aportaron un proyecto cada una, al cual se le aplicó y obtuvo un nivel de capacidad.


QUBE: una herramienta de Calidad para GWAS

  • Autores: Daniel Gamallo y Marcelo Rossi
  • Tutores: Lorena Etcheverry y Adriana Marotta
  • Resumen: Los Genome-Wide Association Studies (GWAS) son estudios que buscan patrones genéticos combinados con características fenotípicas con el objetivo de poder determinar por qué algunas personas son propensas a desarrollar cierto tipo de condición. Este proyecto se enmarca en un proyecto de mayor alcance llamado Data Quality Management for Model Improvement in Genome Wide Association Studies, y tiene como objetivo la construcción de una herramienta que permita la visualización de la calidad de datos de GWAS para realizar el metanálisis a partir de estudios seleccionados. Se construyó un Data Warehouse utilizando el servidor de cubos Analysis Services para almacenar los datos de los estudios GWAS y se implementó una herramienta en el lenguaje C#, usando Adomd.net para acceder al mismo. Se utilizó la colección de conceptos Snomed como referencia de la terminología médica, generando una dimensión del Data Warehouse compuesta por la jerarquía y los términos de la misma. Adicionalmente a las funcionalidades usuales de análisis multidimensional de los datos, se implementaron sistemas de búsqueda sobre los estudios GWAS y sobre los conceptos pertenecientes a Snomed. Se diseñó una estructura que permite visualizar diferentes cubos de forma conjunta, permitiendo abstraer el diseño lógico de los cubos de la visualización de estos.

 

Traumagen: historia clínica electrónica de trauma con acceso a imágenes médicas digitales.

  • Autores:Leandro Carrasco y Pablo Pazos Gutierrez 
  • Tutores: Franco Simini y Jorge Triñánes
  • Resumen: La enfermedad traumática es una de las causas de muerte más frecuentes en nuestro país, entonces es primordial garantizar la calidad de la atención médica del traumatizado grave. Para una correcta gestión de la calidad, es necesario contar con datos fieles, que reflejen la realidad asistencial, y donde el equipo médico tenga acceso a toda la información clínica del paciente. Este trabajo presenta una solución de Historia Clínica Electrónica, basada en estándares, que sigue el proceso asistencial de trauma, y cuenta con un registro de información clínica normalizada, comunicación con sistemas legados, y el cálculo de indicadores de calidad asistencial.

 

Implantación de Metodolgía de Testing Funcional Manual y Automatizado en ASSE

  • Autores: Michel Camarotta, Christian Pla y Rodolfo Verocai
  • Tutores: Ariel Sabiguero y Mónica Wodzislawski
  • Resumen: La implantación del testing en una organización puede resultar una tarea muy compleja. ASSE tiene en su departamento de sistemas una realidad muy fragmentada de proveedores de software, y recursos acotados en el departamento de testing. El trabajo del presente proyecto de grado pretende tomar como punto de partida el estado de la organización y aplicar el estado del arte en testing funcional manual y automatizado para lograr una propuesta metodológica que se adapte a las necesidades de la organización. Como resultado, se crea una metodología de testing funcional manual y automatizado adaptable a la organización así como a múltiples realidades, haciendo énfasis en la flexibilidad ante la consideración del contexto. A modo de experiencia piloto, se pone en práctica la forma de trabajo así como también se ensaya la integración de los diferentes equipos de desarrollo a la metodología propuesta.

 

Construcción  de DataWarehouse guiada por Metadatos  - Aplicación sobre Entornos Virtuales de Aprendizajes

  • Autor: Agustín Mullin
  • Tutor: Regina Motz
  • Resumen: En Facultad de Ingeniería se dictan cursos on-line de forma muy diversa sobre el Entorno Virtual de Aprendizaje (EVA) Moodle y es de interés de la Unidad de Enseñanza entender dicha realidad, como ser la calidad de los cursos y el comportamiento de los estudiantes. Se plantea como solución un DataWarehouse que integre diferentes fuentes para ofrecer una vista agregada de la información. Para resolver los requerimientos se aplica la metodología Construcción de DataWarehouse guiada por Metadatos, diseñada en el InCo y aplicada sobre sistemas hospitalarios. Este proyecto aporta una revisión profunda de la metodología y su evaluación sobre el EVA Moodle de la Facultad de Ingeniería. La metodología abarca todo el proceso desde el relevamiento de los requerimientos hasta el diseño relacional del DataWarehouse, realizando la trazabilidad desde cada requerimiento hasta el diseño final. La especificación realizada sobre metadatos permite explicitar los conceptos y relaciones del dominio específico y de la aplicación de DataWarehouse de forma integrada. Se muestra cómo la metodología permite incorporar a desarrolladores rápidamente en el domino específico y cómo sirve de modelo conceptual para los clientes del sistema. En particular, el proyecto muestra cómo se llegó a cumplir de forma ágil y bien documentada con los requerimientos.  

 

Siniestros en Locales de Gran Aglomeración de Público

  • Autores: Laura Cuadrado, Germán Roldán, Gonzalo Segovia y Marcelo Sosa
  • Tutores: Sandro Moscatelli y Omar Viera
  • Resumen: En los últimos tiempos el desarrollo urbano se ha caracterizado  por las grandes  aglomeraciones de público en centros comerciales, eventos musicales,  deportivos, etc.  La emergencia de un siniestro, en un evento o lugar  de tal  naturaleza, amerita contar con planes de respuesta en lo que hace a la operativa  de contención, atención, evacuación de la población involucrada y de heridos,  accesibilidad de vehículos de emergencia y mitigación de impactos en el  entorno urbano inmediato. Las respuestas deben coordinar múltiples actores en  tiempos cortos, por lo que es necesario contar con información relevante para la  toma de decisiones al momento del evento. El presente proyecto tiene como objetivo el desarrollo de una herramienta de  software que contribuya eficazmente a la prevención y mitigación de siniestros  en locales de gran aglomeración de público. Para ello, se realizó una  investigación de los antecedentes, actualidad y perspectivas de futuro sobre la  gestión de riesgo general,  y,  en particular, sobre siniestros en locales de gran  aglomeración de público.  Como resultado de la investigación realizada, surgió la necesidad de  que el  software ofrezca información relevante tanto, para la prevención de un siniestro  así como, para minimizar el impacto en caso de que ocurra. El software finalmente construido, representa un prototipo del sistema, que  resuelve el problema planteado a satisfacción del usuario.

 

Certificación de IP4JVM

  • Autor: Daniel Rosano
  • Tutores: Ariel Sabiguero y Leandro Scasso
  • Resumen: IP4JVM, es un producto que implementa las funcionalidades de IPv6 para Java. La implementación se integra al OpenJDK 1.6 como una librería mas y hace que éste se independice de los servicios de networking del sistema operativo. Cuenta con implementaciones de los protocolos IPv6, ICMPv6, DHCPv6, entre otros.  El objetivo del proyecto es certificar el producto (IP4JVM) de acuerdo al estandar definido por el IPv6 Ready Logo. Para ello es necesario que la implementación existente pase los tests de interoperabilidad y conformance. Esto no solo nos dejará un producto de calidad que cumple con los estándares internacionales; sino ademas permite completar el proceso de calidad de la implementación existente, verificando ademas la completitud y la correctitud de los protocolos implementados.  En este proyecto se trabaja en un ambiente virtualizado, mediante el uso de varias maquinas virtuales, con herramientas de testing semi-automáticas que permiten a un tester realizar el proceso de testing/corrección de errores con una única PC, en un tiempo menor al que necesitaría para hacerlo manualmente. Los resultados que se desprenden de la corrida de los tests, resulta muy útil a la hora de realizar modificaciones al codigo original para hacerlo cumplir con los estandares de calidad definidos.

Mapinect  

  • Autores: Germán Hoffman, Verónica Manduca, Guillermo Pérez y Rodrigo Rivera
  • Tutores: Christian Clark y Tomás Laurenzo       
  • Resumen: Mapinect es un proyecto cuyo objetivo es proponer una nueva interacción entre personas, computadoras y objetos del mundo  real. Para ello combina diversas disciplinas de ingeniería y ciencias de la computación como visión por computadora,  robótica y realidad aumentada, entre otras. El hardware se compone de un proyector de bolsillo y un dispositivo que combina una cámara RGB y un sensor de profundidad, montados sobre un brazo robótico articulado con cuatro motores. Todo se conecta a un computador encargado de procesar la información captada por los sensores. De esta manera se podrá observar el entorno desde distintos ángulos de visión, y realizar proyecciones agregando información virtual a los objetos físicos. El objetivo del proyecto consiste en la implementación de una biblioteca que pueda ser utilizada para la construcción de aplicaciones con interfaces de interacción natural, esto es, que permita la interacción entre personas, objetos reales y objetos o propiedades virtuales y por otro lado la implementación un conjunto de prototipos que utilicen las funcionalidades brindadas.

 

Integración de ESBs

  • Autores: Fabián Alvarez, Victor Dumas y Carlos Gutierrez
  • Tutores: Marcelo Caponi, Laura Gonzalez y Martin Ranz
  • Resumen: El Instituto de Seguridad Social (BPS), en sus esfuerzos constantes de lograr la informatización de sus servicios, posee una realidad multi-tecnología y multi-arquitectura que, desde el punto de vista del negocio y gobierno del organismo, se puede dividir en tres dominios. Cada uno de estos dominios cuenta con un centro de cómputo que contiene la infraestructura necesaria para dar soporte a los procesos de negocio del instituto y utiliza productos de tipo Enterprise Service Bus (ESB). Los ESBs son una plataforma que combina distintos modelos de integración, como ser Web Services y mensajería, pudiendo lograr soluciones multiplataforma con bajo nivel de acoplamiento. Si bien se encuentra cada vez más experiencia en la utilización de ESBs como solución de integración empresarial, la integración de plataformas ESB, especialmente de distintos proveedores, es una problemática que aún no está completamente resuelta. Este proyecto propone una arquitectura para la realidad del BPS que brinda integración a nivel de ESBs entre los distintos centros de cómputo. Para ello se estudian los principales patrones de integración de ESBs así como también las particularidades de la realidad del Instituto. Al realizar la evaluación de los patrones y estudiar su aplicabilidad surge que el patrón de topología más adecuado a la realidad planteada es ESBs Federados. Este patrón propone el uso de un ESB maestro a través del cual se comunican el resto de los ESBs entre sí, además de ser el responsable de realizar las orquestaciones de los procesos que involucren varios ESBs. Con el objetivo de evaluar la arquitectura propuesta, se desarrolla un caso de estudio en donde se instancian los principales componentes de dicha arquitectura y se realizan pruebas de concepto sobre los patrones estudiados. Concretamente, se implementa un proceso de negocio a través del cual las empresas presentan la nómina de sus empleados, y se utilizan los productos Websphere Process Server, Biztalk Server y JBoss ESB, dado que constituyen los productos que utiliza o planea utilizar BPS.

 

SIGNEO 2           

  • Autores: Gustavo Fava y Andrés García
  • Tutor: Raquel Sosa
  • Resumen:
  • En los últimos años ha aumentado el interés por el estudio de los fenómenos que  ocurren en la naturaleza y que afectan la vida en la Tierra, motivados en parte por el  cambio climático. El avance en la tecnología y la proliferación de los sistemas de  información geográfica, están habilitando el desarrollo de estudios más profundos en  estos temas.  Uno de los fenómenos que viene afectando a nuestro país es el de los incendios  forestales. Estos tienen un fuerte impacto tanto a nivel ecológico, como económico y  social. El Laboratorio de Técnicas Aplicadas al Análisis del Territorio del Departamento  de Geografía de la Facultad de Ciencias (Universidad de la República) viene realizando  desde hace unos años investigaciones sobre los incendios forestales, de forma de  poder generar conocimiento sobre su comportamiento. A partir de esto se puede,  entre otras cosas, definir nuevas estrategias en materia de prevención, así como  también en cuanto al manejo de un incendio una vez que este se ha iniciado.  A comienzos del 2008, a pedido de este laboratorio, se desarrolló por parte de  estudiantes de Ingeniería en Computación de la Facultad de Ingeniería (Universidad de  la República), la primera versión de un sistema de información geográfica dedicado a  calcular un índice de riesgo de incendio y también a simular la propagación de un  incendio, al cual se le dio el nombre de SIGNEO.  Este proyecto significó un punto de partida muy importante y una base para continuar  su desarrollo, mejorando y ampliando sus prestaciones. Fue así que en el 2009 se  retomó el proyecto, dando como resultado SIGNEO v2.  SIGNEO utiliza como software de base las herramientas SIG: gvSIG 1.1.2 y Sextante  0.52. Para esta nueva versión se mantiene el uso de gvSIG como software de base (en  este caso en su versión 1.9) y también de Sextante como contenedor de algoritmos (en  este caso en su versión 0.5).  En este trabajo, se presentan el área de interés, las funcionalidades que se pretende  satisfacer con la herramienta desarrollada, las principales características de la misma y  las conclusiones alcanzadas.

 

Reconocimiento e Interpretación de Expresiones Temporales en Español           

  • Autor: Mathias Etcheverry     
  • Tutor: Dina Wonsever                                   
  • Resumen: En la comprensión de lenguaje natural es esencial manipular aspectos de temporalidad. Las expresiones temporales (ET o Timex) son aquellas expresiones lingüísticas mediante las cuales se ubican temporalmente los eventos referidos en un texto, o se indica su duración. La tarea de reconocer e interpretar expresiones temporales consiste en, a partir de texto no estructurado, encontrar la extensión de las expresiones temporales que ocurren en él y obtener información (normalizada) de las expresiones encontradas que posibilite su comparación con otras expresiones e incluso su anclaje temporal. El objetivo del proyecto es el reconocimiento e interpretación automática de expresiones temporales en español. En el contexto del proyecto se construyó un repertorio de expresiones temporales como base para el espectro de expresiones que se desea alcanzar, inspirado esencialmente en el trabajo realizado por Céline Vaguer para el Francés. Se definió un esquema de anotación inspirado en TimeML con un componente de interpretación inspirado en TCNL (Time Calculus for Natural Language).  Se consideraron enfoques basados en reglas y en aprendizaje automático. Finalmente se construyó una gramática de reglas contextuales que realiza en simultáneo ambas tareas y hace uso de la composicionalidad semántica del lenguaje natural.

 

Resolución de correferencias en expresiones de opinión        

  • Autores: Fernando Acerenza, Macarena Rabosto y Magdalena Zubizarreta
  • Resumen: En este trabajo se presenta la construcción y evaluación de un módulo de resolución de correferencias entre fuentes de opiniones en español, contenidas en textos de prensa. El módulo toma textos etiquetados con opiniones y sus componentes identificados, más información sintáctica, realizando la recuperación de fuentes y resolución de correferencias entre fuentes de las opiniones. La entrada es generada por otro módulo que realiza la identificación de opiniones. La resolución se basa en un algoritmo de manejo de puntajes para resolver el antecedente correcto de la lista de candidatos a correferir con una fuente. Se genera una salida en XML que puede servir como entrada de otro componente y una salida en formato HTML para poder ser visualizada en cualquier navegador de manera amigable. Se estudia el recall y precisión mediante pruebas sobre textos preparados. Los resultados obtenidos son del 81% en precisión y 80% en recall.  Se concluye que la evaluación es satisfactoria, aunque se mencionan las causas de los errores detectados y las posibles mejoras para lograr mayores prestaciones del módulo.

 

Una Metaheurística para el Problema de Ordenamiento de Flota y Asignación de Tripulación en Sistemas de Transporte Público

  • Autores: Federico Bello, Miguel Machado y Juan Pablo Vignola
  • Tutores: Antonio Mauttone y María E. Urquhart
  • Resumen: Existen diversos problemas a resolver en torno al Transporte Público, los cuales en general, revisten un alto grado de complejidad. Habitualmente, las entidades reguladoras, se responsabilizan de la planificación estratégica del Transporte Público, obteniendo como resultados las rutas y las frecuencias, por ejemplo. Las compañías, por su parte, realizan la planificación operacional de su subsistema.  Este proyecto, estudia el problema operacional particular de las compañías de transporte, relacionado con el ordenamiento y asignación de flota y tripulación, de modo de cubrir los recorridos asignados a la compañía de la mejor manera posible, desde el punto de vista de costos operacionales. Toma en cuenta para ello, todas las restricciones asociadas a la realidad, flota heterogénea, múltiples depósitos, reglas laborales, etc.   Para resolver el problema, utiliza un algoritmo genético, un tipo de algoritmo inspirado en la evolución biológica que trabaja con una población de posibles soluciones y las evoluciona, aplicando para ello mutaciones y recombinaciones genéticas, así como un proceso de selección que determina qué individuos sobreviven y cuáles no, de acuerdo a su nivel de adaptación.

 

Análisis Forense Informático: Automatización de Procesamiento de Evidencia Digital

  • Autor: Martín Barrère
  • Tutores: Gustavo Betarte, Alejandro Blanco, Marcelo Rodríguez
  • Resumen:Históricamente, la naturaleza de los delitos informáticos ha evolucionado en forma sistemática con los avances de la tecnología informática. Esta evolución presenta constantemente nuevos desafíos a la ciencia forense digital.
    Debido al carácter complejo de las investigaciones forenses, ha sido fundamental el desarrollo de metodologías y técnicas que permitan agilizar y automatizar las tareas realizadas durante el proceso. En este contexto, la recolección de evidencia digital es una actividad delicada que exige esfuerzo y una considerable experiencia por parte del analista que la realiza. Contar con metodologías y herramientas adecuadas que organicen y automaticen la ejecución de tareas permite disminuir el margen de errores durante este proceso y al mismo tiempo, proveer un marco de trabajo disciplinario que otorga mayores posibilidades para que la evidencia sea admitida en un proceso judicial.
    En este proyecto se ha diseñado una extensión al lenguaje OVAL (Open Vulnerability and Assessment Language) para ser utilizado como mecanismo de especificación formal de procedimientos de recolección de evidencia digital volátil y se ha diseñado e implementado una herramienta extensible de recolección de evidencia (XOvaldi), basada en especificaciones OVAL extendidas (XOval). Debido a la dinámica de los ambientes forenses digitales, nuevas clases de evidencia se hacen necesarias a medida que los sistemas evolucionan y las técnicas forenses son perfeccionadas. La herramienta implementada presenta una arquitectura basada en plugins que permite extender fácilmente las clases de evidencia que es capaz de recolectar.
    Un artículo científico, denominado Towards machine-assisted formal procedures for the collection of digital evidence, que reporta el trabajo desarrollado y los resultados obtenidos en este proyecto, fue aceptado para su presentación e inclusión en los proceedings de la conferencia internacional Privacy, Security and Trust 2011, realizada en junio de 2011 en Montreal, Canada.