Upload
phamlien
View
239
Download
0
Embed Size (px)
Ontologías y AgentesMáster “Ingeniería del Software, Métodos Formales
y Sistemas de Información”Universidad Politécnica de Valencia
Curso 2010-2011
Eduardo Menahttp://www.cps.unizar.es/~mena/
Dpto. de Informática e Ingeniería de SistemasUniversidad de Zaragoza
Valencia, Mayo 2011Eduardo Mena "Ontologías y Agentes"
Grupo de Sistemas de Información Distribuidos (SID)
• Desarrollo de proyectos I+D en el área de gestión de datos– Bases de datos distribuidas y heterogéneas– Sistemas de información globales, Web Semántica– Servicios de datos en entornos móviles
• Contacto: Eduardo Mena ([email protected])– http://sid.cps.unizar.es/– En cooperación con el Grupo de Bases de Datos
Interoperantes (BDI), Universidad del País Vasco, http://siul02.si.ehu.es/
Eduardo Mena "Ontologías y Agentes"
Áreas de Aplicación (1/2)
• Bases de datos distribuidas y federadas
• Sistemas de información globales, Web semántica
Eduardo Mena "Ontologías y Agentes"
Áreas de Aplicación (2/2)• Servicios de datos en entornos móviles
• Sistemas de agentes inteligentes (móviles)
Eduardo Mena "Ontologías y Agentes"
Índice (1/2)
• Ontologías– Representación del conocimiento
• Descripciones semánticas• Lenguajes de representación del conocimiento
– Sistemas Terminológicos• Lógica de descripciones• Ejemplos de sistemas
– Aplicación de las ontologías• Bases de datos federadas• Sistemas de información globales• Web Semántica
Eduardo Mena "Ontologías y Agentes"
Índice (2/2)
• Sistemas de agentes inteligentes– Agentes inteligentes
• Características• Agentes móviles
– Aplicación de los agentes a sistemas de información• A nivel de diseño• A nivel de comunicaciones remotas• Ejemplos de sistemas basados en agentes
Eduardo Mena "Ontologías y Agentes"
Ontologías
Eduardo Mena "Ontologías y Agentes"
¿De qué hablaremos?
• Ontologías: desde la IA y BD• Definiciones y estado del arte• Reglas prácticas para la creación de
ontologías• Ejemplos de aplicación de las ontologías
– Distintos campos de aplicación– Distintos sistemas
• Uso de ontologías: Problemas principales
Eduardo Mena "Ontologías y Agentes"
Datos, Metadatos, Conocimiento
• Datos– (BD) Hechos, estado de las cosas
• Metadatos– Datos sobre los datos
• Información– Datos + semántica
• Conocimiento– (Epistemología, Chisholm 1977)
• C sabe k k es cierto C acepta k k es evidente para C– (IA) Permite comportamiento inteligente
Eduardo Mena "Ontologías y Agentes"
Metainformación
• Información semántica sobre los datos• Objetivo
– Describir contenidos– Separar datos de significado– Permitir comportamiento “inteligente”
• Problema– Su generación es difícil de automatizar
Eduardo Mena "Ontologías y Agentes"
Conocimiento
• Es todo lo que se ha aprendido y organizado de acuerdo a aquellos conceptos, imágenes o relaciones que ha podido dominar; el conocimiento es una abstracción mental
• Supone cierto razonamiento y enjuiciamiento que organiza la información mediante su comparación y clasificación
Eduardo Mena "Ontologías y Agentes"
Información
• Es la representación del conocimiento, comunica la estructura del conocimiento a través de datos, la información es la forma tangible y comunicable del conocimiento
• Las escuelas y universidades tienen como actividad central propiciar el conocimiento a partir de la información
Eduardo Mena "Ontologías y Agentes"
También es: Conocimiento Descripciones semánticas Metainformación
¿ Base de conocimientos ?
¿ Taxonomía ? ¿ Jerarquía de clases ?
Sistema de gestión del conocimiento Representación ¿ Expresividad ? ¿ Lenguaje interrogación ? ¿ Capacidades Deductivas ?
“Especificación de una conceptualización”(T. Gruber)
¿Qué es una ontología?
Eduardo Mena "Ontologías y Agentes"
Ventajas
Depende del contexto, en sistemas de información: Mejor consultar una ontología que los depósitos de datos Visión homogénea de toda la información (heterogénea)
disponible Alto nivel semántico Conocimiento compartido
Metainformación sobre los datos Ej. Ontología biblioteca
Eduardo Mena "Ontologías y Agentes"
Biblio-Thing
Document
Book
Edited-Book
Technical-Report
Periodical-Publication
Journal
Magazine
Newspaper
Miscellaneous-Publication
Technical-Manual
Computer-ProgramMultimedia-DocumentArtwork
Cartographic-Map
Thesis
Doctoral-Thesis
Master-Thesis
Proceedings
Conference Agent
PersonAuthor Organization
Publisher University
http://wwwhttp://www--ksl.stanford.edu/knowledgeksl.stanford.edu/knowledge--sharing/ontologies/html/bibliographicsharing/ontologies/html/bibliographic--data/data/
Ejemplo: Stanford-I
Eduardo Mena "Ontologías y Agentes"
Print-Media
Press Publication Journalism
Newspaper MagazineBook
Periodical
Trade-Book Brochure TextBook
Reference-BookSongBook
PrayerBook
PictorialSeries
Journals
CookBook
Instruction-BookWordBook HandBook Directory Annual
Encyclopedia
Manual Bible GuideBook
Instructions Reference-Manualhttp://www.cogsci.princeton.edu/~wn/w3wn.htmlhttp://www.cogsci.princeton.edu/~wn/w3wn.html
Ejemplo 2: subconjunto de WordNet 1.5
Eduardo Mena "Ontologías y Agentes"
Problemas con las Ontologías
Fuerte carga filosófica No olvidar contexto aplicación
Difícil definición/explotación Elegir bien el sistema de representación del conocimiento
Ingeniería del conocimiento, no automatizable Experiencia
Complejidad del sistema ¿Realmente necesitamos una ontología?
Tamaño (Ej: Cyc) Conocimiento distribuido: ontologías especializadas en dominios
Eduardo Mena "Ontologías y Agentes"
Ontologías Distribuidas vs. Ontología Global
ontología
ontología
ontología
ontología
OntologíaGlobal
Eduardo Mena "Ontologías y Agentes"
Construcción de ontologías
Lenguaje (signos + semántica)
Términos (conceptos, atributos), relaciones, reglas, instancias
Representan un punto de vista/dominio
No hay lugar para la redundancia
Eduardo Mena "Ontologías y Agentes"
Sistemas de Representación del conocimiento
Permiten: Crear ontologías/bases de conocimiento
Y algunos: Manipular/interrogar ontologías
Incluso otros: Introducir/recuperar instancias (datos)
Lenguajes Ontolingua, KIF, KQML, DL, DAML, OWL ¿Cuál necesitamos? ¿qué esperamos de él?
Expresividad Razonadores
Eduardo Mena "Ontologías y Agentes"
Lenguajes de Representación del Conocimiento
• RDF (Resource Description Framework):– XML, herencia de clases (RDF-class, RDF-property)– Expresividad similar a OO
• OIL (Ontology Inference Layer)– No XML, API basado en Lisp
• DAML (DARPA Agent Markup Language)– RDF+OIL, XML, lógica SHIQ (roles inversos, roles transitivos, cjtos.)– Pensado para Lógica Descriptiva (necesita un razonador)– DAML-S
• OWL (Ontology Web Language)– Pensado para la Web Semántica– Nivel Lite (similar RDF), DL (SHIQ), OWL full (autoextensible)– OWL-S– Estándar de W3C (Febrero 2004)
• Protégé, OILed: editores de ontologías (RDF, DAML, OWL)Eduardo Mena "Ontologías y Agentes"
Sistemas Basados en Lógica Descriptiva(Sistemas Terminológicos)
Distintas expresividades Operadores muy expresivos: ALL, jerarquías de roles, roles inversos,
roles transitivos, disjoint Mundo abierto vs. mundo cerrado
Conceptos y rolesTérminos primitivos (cond. necesarias) y definidos (cond. necesarias y suficientes)SubsumisiónMecanismo de clasificación detección de inconsistencias simplificación de expresiones
Tbox, AboxLas preguntas son expresiones (clasificables)
Eduardo Mena "Ontologías y Agentes"
Ejemplo 1: Familia.pl (BACK)
:- backinit,backtell(personas:<anything),backtell(conoce_a:<domain(personas) and range(personas)),backtell(padre:<conoce_a),backtell(conocidos:=trans(conoce_a)),backtell(padre_conocidos:=conocidos.padre),backtell(conocidos_lejanos:=conocidos and trans(padre)),backtell(hijos:=inv(padre)).
extension :-backtell(edu::personas and conoce_a:(josito and jonni) and padre:papaedu),backtell(josito::personas and conoce_a:edu and padre:papajosito),backtell(jonni::personas and padre:papajonni),backtell(papajonni::personas and conoce_a:edu).
Eduardo Mena "Ontologías y Agentes"
Ejemplo 2: Proyectos.pl (1/2):- backinit,backstate(verbosity=silent),
backtell(personas:<anything),backtell(nombre:<domain(personas) and range(string)),backtell(ocupacion:<domain(personas) and range(string)),
backtell(jefes:=personas and ocupacion:'jefe'),
backtell(proyectos:<anything),backtell(titulo:<domain(proyectos) and range(string)),backtell(miembros:<domain(proyectos) and range(personas)),
backtell(superpro:=proyectos and atleast(3,miembros)),backtell(jefe:=miembros and range(jefes)).
Eduardo Mena "Ontologías y Agentes"
Ejemplo 2: Proyectos.pl (2/2)
extension :-backtell(jonni::personas and nombre:jonni and ocupacion:currito),backtell(josito::personas and nombre:josito and ocupacion:currito),backtell(nestor::personas and nombre:nestor and ocupacion:especialista),backtell(edu::personas and nombre:edu and ocupacion:jefe),backtell(josemi::personas and nombre:josemi and ocupacion:encargado).
backtell(aims::proyectos and titulo:aims and miembros:allknown(personas and nombre:(edu or josito or josemi))).
Eduardo Mena "Ontologías y Agentes"
Ejemplos de Sistemas Terminológicos
• Clásicos– CLASSIC, BACK, FaCT, Loom
• CICLOP– API en Java, poco expresivo
• Utilizados para la Web Semántica– CORBA-FaCT, RACER (servicio web)– Enlace con DAML y OWL
• Interoperabilidad– Acceso OWL a través de servicio Web– DIG (Description logic Implementation Group): interfaz
DL en XMLhttp://www.ida.liu.se/labs/iislab/people/patla/DL/index.html
Eduardo Mena "Ontologías y Agentes"
Algunos campos de aplicaciónde las ontologías
• Bases de datos federadas• Sistemas de información globales• Agentes inteligentes
Eduardo Mena "Ontologías y Agentes"
Problema
Telnet
IP WWW FTP
Archie
C C++ Java
Formularios
Interfaces ad hoc
Oracle Sybase
Informix
Semántica, formatos,
etc.
Eduardo Mena "Ontologías y Agentes"
Objetivo
SemánticaFormatos
Eduardo Mena "Ontologías y Agentes"
Bases de Datos Federadas (BDF)
• Esquema global (ontología) Datos• Bases de datos autónomas, diseño bottom-up• Enlace BDs – Ontología (GAV vs. LAV)
?
Eduardo Mena "Ontologías y Agentes"
BDF: Arquitectura de 5 niveles
Esquema BD 1
Esq. Exportado 1
Esquema integrado (ont. integrada)
Esquema BD n
Esq. Exportado n
Vista 1 Vista m
Esq. Export. canónico n (ont2)Esq. Export. canónico 1 (ont1)
. . . . .
Traducción
Integración
. . . . .
Eduardo Mena "Ontologías y Agentes"
Sistemas de Información Globales
Muchos depósitos de datos (miles, millones)Gran heterogeneidad a todos los nivelesAltamente dinámico y cambianteUn ejemplo: La Web
Adaptación de las técnicas conocidas a dicho contextoAún es objeto de investigación
Eduardo Mena "Ontologías y Agentes"
Aproximaciones de los 90’s: clasificaciónSistemas de
Acceso a Información
Basados en Ontologías
Basados en palabras clave
Altavista,Yahoo!,Google
Basados en Agentes
TSIMMIS, DISCO
Una OntologíaGlobalCarnot,
Information Manifold
VariasOntologías
SIMS, InfoSleuth,
OBSERVER Eduardo Mena "Ontologías y Agentes"
Aprox. relevantes de los 90’s
SIMS (Univ. de California del Sur, 1992)
TSIMMIS (Univ. de Stanford & IBM, 1993)
Information Manifold (AT&T Bell Lab., 1994)
OBSERVER (Univ. Pais Vasco & UGA, 1995)
InfoSleuth (MCC, 1996)
Eduardo Mena "Ontologías y Agentes"
Aproximaciones: Comparativa
Depósitos heterogéneos
Generación de wrappers
Capacidad de respuesta
Descr. semántica de datos
Interop. entre ontologías
Vocabulario compartido
Respuestas imprecisas
TSIMMIS
InfoSleuth
IM
OBSERVER
SIMS
Eduardo Mena "Ontologías y Agentes"
Ejemplo: El sistema OBSERVER
• Sistema de Información Global– gran numero de fuentes de datos (con cualquier
organización de datos)– múltiples ontologías (indepen. del sistema DL)– depósitos de datos y ontologías reales
• Interoperación entre ontologías (división del espacio de información)– relaciones semánticas interontología– traducción de preguntas con o sin cambio de semántica– estimación del cambio de semántica
Eduardo Mena "Ontologías y Agentes"
Arquitectura de OBSERVER
Ontology
Based
System
Enhanced with
Relationships for
Vocabulary
hEterogeneity
Resolution
Query Processor
Ontology Server
IRM
RelacionesInterontología
Ontology ServerOntology Server
Enlaces
EnlacesEnlacesEnlaces
Eduardo Mena "Ontologías y Agentes"
Si
Expansión incremental a otra ontología
Acceso a los datos
Construcciónde la pregunta
Procesamiento de Preguntas (Query Processor)
SeleccionarOntología Usuario
Editar pregunta
Acceder datossubyacentes
Correlacionar ymostrar respuesta
Seleccionarontología destino
Integrar nueva ont. y ont. usuario
Elegir plan conmenor pérdida
Generar Planes
Más datos?
Comienzo
FinalNo
Eduardo Mena "Ontologías y Agentes"
Multiples ontologías: Transformaciones de la pregunta
Pregunta del usuario expresada en términos de la Ontología Usuario
Pregunta expresada en términos de la Ontología Destino
Pregunta expresada en Enlaces Respuesta expresada según la semántica de los depósitos
Respuesta expresada según la semántica de la Ontología Destino
Respuesta expresada según la semántica de la Ontología Usuario
Acceso a los datos subyacentes
Rel. del IRMF. Trans. Inv. del IRM
Traducción a EnlacesF. Trans. Inv. de enlaces
CorrelaciónF. Trans. de enlaces
CorrelaciónF. Trans. del IRM
Query Processor
Ontology ServerEduardo Mena "Ontologías y Agentes"
Pérdida semántica en respuestas
Respuesta relevante
Pérdida semántica
Pérdida en Precision
Pérdida en Recall
Respuesta obtenida
Respuesta relevante y obtenida
Eduardo Mena "Ontologías y Agentes"
OBSERVER: aportaciones
• Uso de ontologías pre-existentes Descripción de los depósitos de datos
• Manejo de relaciones interontología Manejo de distintos vocabularios
• Procesamiento incremental Acceso a gran número de depósitos
• Respuestas con pérdida de información Estimación de la pérdida
Eduardo Mena "Ontologías y Agentes"
Problemas de los sistemas de los 90’s• Integración estática de fuentes de datos
– La traducción e integración se hace “a mano” por humanos y cuesta bastante tiempo
– Generación no automática de la información de enlace• Hay que definir a mano el camino hacia los datos
– Generación no automática de las relaciones interontología• Hay que definir a mano las propiedades semánticas entre ontologías
– Sensible a nuevas ontologías/depósitos de datos• No relaciones entre los datos (constantes)
– Ej. (tema=“Marte”) (tema=“sistema solar”)• Métodos de interrogación no adecuados para usuarios finales
– Selección de la(s) ontología(s) para preguntar– Pregunta en DL ¿palabras clave, lenguaje natural?
• Imposibles de aplicar a contextos altamente dinámicos (como la Web)
Eduardo Mena "Ontologías y Agentes"
Web Semántica
• Problemas con la Web actual– HTML– Orientado a humanos– Búsquedas sintácticas (palabras clave)
• Objetivos– Separar contenido de visualización– Orientado a humanos y a programas (servicios)– Búsquedas semánticas (expresar qué se está buscando)
Eduardo Mena "Ontologías y Agentes"
Web Semántica• Definición
– Proyecto W3C desde aprox. 1999– Nueva filosofía– Red de ordenadores Espacio compartido– Documentos autodescritos– Procesable por máquinas (ni lenguaje natural, ni GUIs)– Enlaces indirectos (independencia de la localización)
• Claves– XML– Ontologías– Servicios Web
Eduardo Mena "Ontologías y Agentes"
Objetivos de la Web Semántica
• Permitir un procesamiento de preguntas guiado por la semántica– Obtener sólo lo que el usuario busca
• Descubrir automáticamente información semántica en las ontologías disponibles en el sistema de información
• Descubrir automáticamente fuentes de datos relevantes
Eduardo Mena "Ontologías y Agentes"
Web Semántica
Eduardo Mena "Ontologías y Agentes"
Ejemplo de líneas de trabajo:Acceso a datos guiado por la semántica
• Cjto. de palabras clave pregunta formal (semántica bien definida)– ¿Significados de cada palabra? pool de ontologías– ¿Desambiguación de una palabra? contexto (el resto de palabras)– ¿Traducción a un lenguaje de representación del conocimiento?
combinaciones según operadores del lenguaje
• Pregunta formal datos– Descubrimiento de ontologías relevantes – Descubrimiento de fuentes de datos – Aplicación técnicas de sistemas de información federados
• Procesamiento incremental• Aproximación peer to peer?
Eduardo Mena "Ontologías y Agentes"
Futuro Inmediato
• Sólo se ha comenzado a caminar– Aún tenemos mucho que aprender
• Muchos problemas por resolver– Equipos multidisciplinares
• Contexto complejo tecnológicamente– Dificultad para quien empieza
• La clave para conseguir algunos objetivos: balance entre velocidad y calidad
Eduardo Mena "Ontologías y Agentes"
Sistemas de Agentes Inteligentes
Eduardo Mena "Ontologías y Agentes"
Agentes inteligentes
• Son programas:– Autónomos– Actúan en representación de alguien– Tienen una agenda de objetivos– “Inteligentes”, aprenden
• Pueden también ser:– Cooperativos– Móviles
• Nuevo paradigma de diseño de software
Eduardo Mena "Ontologías y Agentes"
Agentes móviles• Programa que se ejecuta en un cierto contexto de ejecución
o place, y viaja de place a place– Capaces de transportarse a sí mismos entre ordenadores– Necesita cierta infraestructura (plataforma de agentes)– Agentes móviles código móvil
• Alternativa a RPC
Eduardo Mena "Ontologías y Agentes"
Movilidad: cómo funciona
• Los agentes móviles se crean en places– Viajan entre places
• moveTo(newHost)– Se interrumpe la ejecución del thread– Se serializa el código y el estado del agente– El agente se reconstruye en el place destino– Se continúa la ejecución a partir de donde se
interrumpió
Eduardo Mena "Ontologías y Agentes"
Movilidad fuerte vs. Movilidad débil• Movilidad fuerte
– moveTo(newHost)– En el destino se continúa con la siguiente instrucción– La JVM no permite continuar a mitad de un método
• Alternativa: cambiar la JVM incompatibilidad con otras JVM
• Movilidad débil– moveTo(newHost, callback)– En el destino se continúa con el método callback
• Se recomienda que el moveTo sea la última instr. del método
– Permitido por la JVMEduardo Mena "Ontologías y Agentes"
Control de los saltos
• Problemas con el moveTo (red, permisos, etc.)– excepción place origen (política de reintento)
• Notificación de movimiento (Ej: Voyager)– preDeparture()
• En el origen, antes de iniciar el viaje– preArrival()
• En el destino, antes de la reconstrucción– postArrival()
• En el destino, agente reconstruido correctamente, justo antes del callback
– postDeparture()• En el origen, en paralelo con el callback del destino
Eduardo Mena "Ontologías y Agentes"
Utilizando agentes móviles
Robustez frente a desconexionesMejor diseño: delegación de tareasFacilidad de programaciónPlataformas de agentes
• Interoperabilidad• Fiabilidad• Escalabilidad
Eficiencia? RPC
0,1 M 0,2 M 0,45 M 1 M 2 M 4 M 8 M 16 M 33 M Eduardo Mena "Ontologías y Agentes"
Plataformas de agentes móviles• Aglets
– Buen API para agentes móviles– JDK 1.1 código abierto Java 2
• Voyager– CORBA + movilidad + activación + agentes– Problemas con los clones
• Grasshopper– Llamadas remotas (¿la mejor hasta ahora?)– Problemas de escalabilidad en el modelo de comunicación
• Tryllian– Miles de agentes (en la misma máquina)– Más lento
• SPRINGS– Alta escalabilidad (miles de agentes en distintas máquinas)
Eduardo Mena "Ontologías y Agentes"
Referencias
• S. Franklin et al, “Is it an Agent or just a Program?: a Taxonomy for Autonomous Agents”, 3rd Workshop on Agent Theories, Architectures and Languages, 1996
• C. Harrison et al, “Mobile Agents: Are They a good idea?”, research report IBM (desclasificado como confidencial en 1995)
• J. Altman et al, “Using Mobile Agents in Real World: A Survey and Evaluation of Agent Platforms”.
Eduardo Mena "Ontologías y Agentes"
Ejemplos de sistemasbasados en agentes
• Servicio de obtención de Software (SRS)• Procesamiento de preguntas dependientes
de la localización• Generación adaptativa de interfaces gráficos• Recopilación de citas bibliográficas
Eduardo Mena "Ontologías y Agentes"
Servicio de Obtención de Software
• Alternativa a sistemas tipo Tucows• Uso de una ontología de software
– Construida automáticamente• Vista común al usuario del software disponible• Sensible a las necesidades de distintos usuarios• Tecnología de agentes: creación, explotación
(gestión del conocimiento)
Eduardo Mena "Ontologías y Agentes"
Servicio de Obtención de Software
Eduardo Mena "Ontologías y Agentes"
Procesamiento de preguntas dependientes de la localización
• El usuario se mueve• Los objetos relevantes se mueven
• Ej: “Muestrame los taxis más cercanos” (formuladamientras andamos por la ciudad)
• La pregunta depende de la posición de algunosobjetos móviles
• La respuesta se debe actualizar periodicamente
Eduardo Mena "Ontologías y Agentes"
Despliegue de la red de agentes
BS2BS5
BS6
BS4 BS3
BS1
Monitor
BS0
(1)
(3)(3)
(2)(2)
(3)
(3)
(3)
Eduardo Mena "Ontologías y Agentes" Eduardo Mena "Ontologías y Agentes"
Generación adaptativa de interfaces gráficos
• GUI’s distintos para dispositivos distintos• Descripciones XML del GUI• Prototipo: agente móvil que genera GUI’s
Java Swing, HTML, y WML
Eduardo Mena "Ontologías y Agentes"
GUIs en Java Swing, HTML y WML Recopilación de citas bibliográficas
SIUL02.SI.EHU.ES
SIPL17.SI.EHU.ES
VIERNES.CPS.UNIZAR.ESSISF00.SI.EHU.ES
BibTeXBibTeX
BibTeX
San Sebastián
Zaragoza
BDpublications
ORDENADOR DEL USUARIO
Almagro
Voyager:9900
Voyager:9900
Voyager:9900
Navegador web
Apache Tomcat
Bib2DB
PostScript
ShowPubShowBibTeX
Eduardo Mena "Ontologías y Agentes" Eduardo Mena "Ontologías y Agentes"
Carta a los reyes
• Necesitamos herramientas para– Especificación formal de sistemas móviles– Especificación de comportamiento complejo y sensible a
distintos entornos (imprevisibles)
• Mejores plataformas de agentes– Más robustas– Para PDAs– Para redes inalámbricas (Bluetooth, WiFi)– Interoperables
Eduardo Mena "Ontologías y Agentes"
¿Futuro?
• Mucho trabajo por hacer– Mejorar aproximaciones tipo SIMS, OBSERVER
– Papel de las ontologías– DAML OWL ???
– Considerando:– La Web– Nuevos dominios (computación móvil)– Nueva tecnología software (agentes, OWL, etc.)
– Nuevo gran objetivo: Web semántica
Eduardo Mena "Ontologías y Agentes"
Fin de la presentación
Graciaspor su atención
http://www.cps.unizar.es/~mena/