La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1/16 Líneas de Investigación Mg. Samuel Oporto Díaz SEMINARIO DE TESIS I.

Presentaciones similares


Presentación del tema: "1/16 Líneas de Investigación Mg. Samuel Oporto Díaz SEMINARIO DE TESIS I."— Transcripción de la presentación:

1 1/16 Líneas de Investigación Mg. Samuel Oporto Díaz SEMINARIO DE TESIS I

2 2/16 Tabla de Contenido Líneas de Investigación. –Complejidad Algorítmica –Minería de Datos –Visión Computacional –Robótica –Aprendizaje Automático –Sistemas Inspirados en la Naturaleza

3 3/16 LINEAS DE INVESTIGACIÓN

4 4/16 Carreras Profesionales Ingeniería de Sistemas de la UNI-FIIS SistemasComputación e Informática Ingeniería de Sistemas Ingeniería de Computadoras Ciencias de la Computación Sistemas de Información Ingeniería de Software Tecnologías de la Información Integración de equipos multidisciplinarios para la realización de sistemas exitosos Diseño y construcción de computadoras y sistemas basados en computadoras Fundamentos de algoritmos, robótica, visión, sistemas inteligentes, bioinformática. Diseño de algoritmos Integración de soluciones de TI y procesos de negocio para cubrir necesidades de información Desarrollo y mantenimiento de sistemas Necesidades de TI para empresas. Define la infraes- tructura de TI de una organización y las personas que lo utilizan Ing. de Sistema, tecnología política, administración, innovación, etc. Hardware, software y comunicaciones algoritmos, SO, complejidad, visión Sistemas de Información, adm. de la información Análisis y diseño de sistemas, proceso de software Interacción H-C, seguridad de la información, Adm. de la inform. Fuente. Denominaciones y Perfiles de las carreras de ingeniería de sistemas, computación e informática en el Perú CIP – Junio 2006

5 5/16 Ciencias de la Computación Es el estudio de las bases teóricas de la información y la computación y su aplicación en sistemas computacionales. Se abarca desde aplicaciones específicas del cómputo hasta con las propiedades de los algoritmos usados al realizar cómputos. Por ejemplo, los estudios de la teoría de lenguajes de programación describen un cómputo, mientras que la programación de computadoras aplica lenguajes de programación específicos para desarrollar una solución a un problema computacional concreto.

6 6/16 Campos de las CC Fundamentos matemáticos Teoría de la computación Algoritmos y estructuras de datos Lenguajes de programación y compiladores Bases de datos Sistemas concurrentes, paralelos y distribuidos Inteligencia artificial Gráficos por computador Computación científica

7 7/16 Campos de las CC Fundamentos matemáticos Criptografía Teoría de grafos Lógica matemática Teoría de tipos de datos Teoría de la computación Teoría de autómatas Teoría de la computación Teoría de la complejidad computacional Algoritmos y estructuras de datos Análisis de algoritmos Algoritmos Estructuras de datos

8 8/16 Campos de las CC Lenguajes de programación y compiladores Compiladores Lenguajes de programación Bases de datos BDMS, DWH Minería de datos Sistemas concurrentes, paralelos y distribuidos Programación concurrente Redes de computadoras Cómputo paralelo

9 9/16 Campos de las CC Inteligencia artificial Razonamiento automatizado Visión por computador Robótica Aprendizaje Automático Sistemas Inspirados en la naturaleza Gráficos por computador Procesamiento digital de imágenes Computación científica Bioinformática

10 10/16 COMPLEJIDAD ALGORITMICA

11 11/16 Computadoras Computadora no determinística. Es una computadora que tiene la habilidad de llevar a cabo un número ilimitado de búsquedas paralelas de manera independiente. Al ser confrontada con varias opciones, puede adivinar la correcta. Nunca hace elecciones incorrectas que la lleven a un paso previo No existen en el mundo real. Es una herramienta imaginaria que hace que los problemas difíciles parezcan triviales

12 12/16 Complejidad Un algoritmo es un procedimiento computacional bien definido, que toma un conjunto de valores de entrada y produce valores de salida. También podemos ver a un algoritmo como una herramienta para resolver un problema computacional específico. La complejidad de un algoritmo es una medida de la cantidad de recursos que consume. Recurso: –Tiempo –Espacio Memoria Disco

13 13/16 Orden de magnitud de un algoritmo Tiempos más comunes de los algoritmos: O(1) < O(log n) < O(n) < O(n log n) < O(n2) < O(n3) < O(2n )

14 14/16 Clases de problemas Muchos problemas se resuelven con algoritmos polinómicos (O(n k )): problemas tratables La clase P contiene todos los problemas tratables. Hay problemas que no se pueden resolver en tiempo polinónico ( (n k )): problemas intratables. La clase NP contiene todos los problemas que se pueden verificar en tiempo polinómico. Claramente P NP. La clase NP puede ser resuelto en tiempo polinomial pero usando una computadora no determinística La clase NPC contiene todos los problemas NP-completos Hay problemas que no se pueden resolver: problema de la parada.

15 15/16 (1) Problemas tratables Son todos aquellos que pueden ser resueltos en tiempo polinómico Un problema pertenece a la clase P si puede ser resuelto en tiempo polinomial en una computadora determinística. Ejemplos: Quicksort, búsqueda binaria, multiplicación matricial.

16 16/16 P vs NP La clase P contiene problemas que pueden resolverse rápidamente. La clase NP contiene problemas cuya solución puede verificarse rápidamente. Se plantea la pregunta: ¿Es P = NP? Aún sigue siendo una pregunta abierta para los teóricos. Se cree que P != NP

17 17/16 (2) Problemas NP-completos Hay una clase de problemas que no se sabe si son tratables: problemas NP-completos Nadie ha encontrado algoritmos polinómicos para ninguno de ellos. Algunos muy parecidos a problemas tratables: –Ciclos eulerianos y hamiltonianos. –Satisfabilidad de 2-FNC y 3-FNC

18 18/16 Problemas NP Completos Todos los algoritmos conocidos para problemas NP- completos utilizan tiempo exponencial con respecto al tamaño de la entrada. Todos los algoritmos requeridos para resolverlos requieren tiempo exponencial en el peor caso. Es decir, son sumamente difíciles de resolver. Ejemplos: el problema del agente viajero, O(n 2 2 n )

19 19/16 Ejemplo Suma de subconjuntos: Dado un conjunto S de enteros, ¿existe un subconjunto no vacío de S cuyos elementos sumen cero? Es fácil verificar si una respuesta es correcta, pero no se conoce mejor solución que explorar todos los 2 n -1 subconjuntos posibles hasta encontrar uno que cumpla con la condición.

20 20/16 Soluciones aproximadas Se desconoce si hay mejores algoritmos, por la cual, para resolver un problema NP-completo de tamaño arbitrario se utiliza uno de los siguientes enfoques: Aproximación: Un algoritmo que rápidamente encuentra una solución no necesariamente óptima, pero dentro de un cierto rango de error. En algunos casos, encontrar una buena aproximación es suficiente para resolver el problema, pero no todos los problemas NP-completos tienen buenos algoritmos de aproximación. Probabilístico: Un algoritmo probabilístico obtiene en promedio una buena solución al problema planteado, para una distribución de los datos de entrada dada. Casos particulares: Cuando se reconocen casos particulares del problema para los cuales existen soluciones rápidas. Heurísticas: Un algoritmo que trabaja razonablemente bien en muchos casos. En general son rápidos, pero no existe medida de la calidad de la respuesta. Algoritmo genético: Algoritmos que mejoran las posibles soluciones hasta encontrar una que posiblemente esté cerca del óptimo. Tampoco existe forma de garantizar la calidad de la respuesta.

21 21/16 (3) Problema de la parada No existe ningún algoritmo que diga si un programa va a parar en tiempo finito con una entrada dada: –Supongamos que hay una función H(P,I) que lo resuelve. –Construimos D(P): If H(P,P) then loop forever else stop –¿Qué debe hacer D(D)?

22 22/16 MINERIA DE DATOS

23 23/16 Tipos de Aprendizaje Supervisado Una especie de profesor sugiere una categoría para cada conjunto de entrenamiento. Se busca reducir el error de entrenamiento. No Supervisado No existe el profesor, el sistema realiza agrupamientos en forma natural sobre los patrones de entrada, para determinar la clase a la que pertenece.

24 24/16 Tareas de la Minería de Datos Tareas Predictiva Descriptiva Clasificación Regresión Agrupamiento Reglas de Asociación Secuenciación

25 25/16 Clasificación Intenta clasificar algunos objetos en un número finito de clases, en función a sus propiedades (características) Se intenta buscar un función de mapeo que permita separar la clase 1 de la clase 2 y esta de la clase 3… Las variables (atributos) son categóricos (no numéricos). El modelo se construye con datos completos, cada registro tiene una clase predefinida. Busca formas de separar la data en clases pre-definidos: Árboles de decisión. Redes Neuronales. Clasificador Bayesiano. Razonamiento basado en casos

26 26/16 Regresión Intenta determinar la función que mapea un conjunto de variables de entrada X (independiente), en una (o más) variables de salida Y (dependiente),. Es básicamente numérica. Está basada en supuestos estadísticos. Árboles de decisión. Redes Neuronales. Regresión Logística

27 27/16 Agrupamiento (Clustering) (Clasificación no supervisada) Intenta agrupar una serie de objetos en grupos. Cada objeto es representado por un vector de atributos n-dimensional. Los objetos que forman cada grupo deben ser disimilares. La similaridad es medida del grado de proximidad. Luego cada grupo es etiquetado. K-means (agrupamiento exclusivo) Fuzzy C- means (agrupamiento con traslape) Angulo de distribución mínima Método de autoorganizac ión (SOM) Razonamient o Adaptativo

28 28/16 Reglas de Asociación Analiza los datos para descubrir reglas que identifiquen patrones o comportamientos. Reglas de la forma A B. Usa algoritmos intensivos en procesamiento. Análisis de la cesta de la compra (market basket analysis). IDDeclaración 2000A,B,C 1000A,C 4000A,D 5000B,E,F Encuentre ¿qué grupos de ítems comúnmente se declaran juntos? Haciendo el soporte mínimo del 50% y la confianza mínima del 50%, tenemos: A C ( 50%, 66.6%) C A ( 50%, 100%) A priori A priori predictivo

29 29/16 Secuenciación Buscar secuencias que son usualmente probables. Requiere entrenamiento, lista de eventos, conocimiento de eventos interesantes. Debe ser robusto en la fase de adicionar eventos con ruido. Usado en el análisis de fallas y predicción. Modelo de Markov Agrupamiento MDD ( Maximal Dependence Decomposition Clustering ) A B HTHHTHHttthtttHHTHHHHtthtthttht...

30 30/16 VISION COMPUTACIONAL

31 31/16 ¿Qué es Visión? Visión es saber que hay y donde mediante la vista (Aristóteles) Visión es recuperar de la información de los sentidos propiedades válidas del mundo exterior (Gibson) Visión es un proceso que produce a partir de las imágenes del mundo una descripción que es útil para el observador y que no tiene información irrelevante (Marr)

32 32/16 Visión Computacional Determinar la identidad y localización de objetos en una imagen, construir una representación tridimensional de un objeto, analizar un objeto para determinar su calidad, descomponer una imagen u objeto en diferentes partes.

33 33/16 Digitalización de imágenes

34 34/16 Binarización Transformación lineal en el que la imagen de salida tiene 2 valores - blanco y negro S=blanco, si E > T S=negros, si E < T T es el umbral

35 35/16 Ejemplos de Operaciones Puntuales

36 36/16 Histograma de intensidades Distribución de niveles de intensidad en una imagen Ejemplo: Estimado de probabilidad de ocurrencia de cada nivel de intensidad: p= nr / nt

37 37/16 Ejemplos de histogramas

38 38/16 Ecualización del histograma Función de transformación:h s(k) = S k n i / n Para k = 0, 1, 2, 3 …. Número de niveles Esto es, al hacer la transformación se asigna a cada nivel de intensidad de la imagen de salida el valor de la sumatoria de las probabilidades hasta ese valor Da un valor entre 0 y 1 que hay que multiplicar por una constante (255)

39 39/16 Ejemplos de ecualización - antes

40 40/16 Ejemplos de ecualización - después

41 41/16 Filtrado Filtrar una imagen consiste en aplicar una transformación de forma que se acentúen o disminuyan ciertos aspectos g(x,y) = T[f(x,y)]

42 42/16 Filtrado en el Dominio Espacial Operan directamente sobre los pixels de la imagen Se utiliza generalmente una máscara que opera sobre una vecindad de pixels, centrándose sobre el pixel de interés Se realiza una convolución (barrido) de la máscara con la imagen. Cada pixel de la nueva imagen se obtiene mediante la sumatoria de la multiplicación de la máscara por la vecindad del pixel: g(x,y) = f(i,j) w(i,j) Generalmente se divide sobre cierto valor constante para normalizar

43 43/16 Aplicación de una máscara

44 44/16 Convolución máscara Imagen original Imagen nueva

45 45/16 Convolución - paso máscara Imagen original Imagen nueva 2

46 46/16 Convolución - paso máscara Imagen original Imagen nueva 2 5

47 47/16 Normalización máscara Imagen nueva 2 5 Imagen nueva normalizada 0 1 En esta caso se divide entre 9 (suma de las valores de la máscara)

48 48/16 ROBOTICA

49 49/16 ¿Qué es un robot?

50 50/16 Un robot es... un manipulador programable y multifuncional diseñado para mover materiales, partes, herramientas o dispositivos específicos mediante movimientos programados para realizar diferentes tareas [Instituto de Robótica de América] un agente activo artificial cuyo ambiente es el mundo físico [Russell y Norvig] una conexión inteligente de percepción a acción [Jones y Flynn] una máquina programable capaz de percibir y actuar en el mundo con cierta autonomía [E. Sucar]

51 51/16 Tipos de Robots Robots manipuladores (brazos) Robots móviles Robots híbridos (móviles con manipulación) Vehículos autónomos Robots caminantes –2 patas (humanoides) –4/6 patas (insectos)

52 52/16 Aplicaciones Manufactura y manejo de materiales Ambientes hostiles Exploración espacial e interplanetaria Robots de servicio Telepresencia y realidad virtual Militares y operaciones de rescate Ambientes submarinos Estudios fisiológicos y cognitivos Entretenimiento y juegos

53 53/16 Partes de un Robot Actuadores Sensores Comunicación Inteligencia Control Potencia

54 54/16 Actuadores Dispositivos que permiten al robot modificar el medio ambiente Dos tipos principales: –Locomoción: cambiar la posición del robot respecto al medio ambiente –Manipulación: mover otros objetos en el medio ambiente

55 55/16 Locomoción Existen dos formas básicas de locomoción: –Robots con ruedas –Robots con patas Ruedas: –más simples y eficientes, fáciles de controlar –limitadas a terrenos planos Patas: –complejas, inestables, difíciles de controlar –mayor flexibilidad para todo tipo de terreno

56 56/16 Manipulación Normalmente construidos en base a una serie de segmentos con articulaciones entre ellos (como un brazo) Tres tipos básicos de articulaciones: –Rotacionales –Cilíndricas –Prismáticas Mayor número de articulaciones dan mayor flexibilidad (grados de libertad), pero hacen más complejo el control

57 57/16 Imágenes

58 58/16

59 59/16 APRENDIZAJE AUTOMATICO

60 60/16 Planeación Búsqueda en un espacio de problemas 1.Estado o situación: descripción instantánea 2.Acción u Operador: transformación de un estado en otro 3.Estado inicial: situación de partida 4.Objetivo o meta: descripción de condiciones que se tienen que dar para considerar por terminado el proceso 5.Plan: secuencia de operaciones que permiten pasar del estado inicial a un estado en el que se cumplan los objetivos 6.Heurísticas: conocimiento que permite obtener eficientemente el plan

61 61/16 El Problema del Mundo de los Bloques

62 62/16 El mundo de los bloques Un conjunto de bloques, una mesa, y un brazo de un robot Los bloques son iguales de tamaño, forma y color, diferenciándose en el nombre La mesa tiene extensión ilimitada Cada bloque puede estar encima de la mesa, encima de un sólo bloque, o sujeto por el brazo del robot El brazo de robot sólo puede sujetar un bloque cada vez

63 63/16 El mundo de los bloques Estado InicialEstado Final Resolver problemas supone pasar de una configuración (estado) inicial a un estado en el que sean ciertas unas metas A DC B D BA C

64 64/16 Estados Se podrían utilizar los siguientes predicados: –encima(x,y) : el bloque x está encima del y –en-mesa(x) : el bloque x está encima de la mesa –libre(x) : el bloque x no tiene ningún bloque encima –sujeto(x) : el brazo del robot tiene cogido al bloque x –brazo-libre : el brazo del robot no tiene cogido a ningún bloque Estado inicial: encima(A,B),encima(B,D),en-mesa(D),en-mesa(C), libre(A),libre(C),brazo-libre Metas: en-mesa(A), en-mesa(B), encima(C,B), encima(D,C) Estado InicialEstado Final

65 65/16 Operadores QUITAR(x, y) –precondiciones: encima(x, y),libre(x),brazo-libre –añadidos: sujeto(x),libre(y) –borrados: encima(x, y),brazo-libre,libre(x) LEVANTAR(x) –precondiciones: en-mesa(x),libre(x),brazo-libre –añadidos: sujeto(x) –borrados: en-mesa(x),brazo-libre,libre(x) PONER(x, y) –precondiciones: sujeto(x),libre(y) –añadidos: encima(x, y),libre(x),brazo-libre –borrados: sujeto(x),libre(y) DEJAR(x) –precondiciones: sujeto(x) –añadidos: en-mesa(x),libre(x),brazo-libre –borrados: sujeto(x)

66 66/16 Lenguaje PDDL - Operadores (define (domain mundobloques) (:requirements :strips :equality) (:predicates (encima ?bl1 ?bl2) (enmesa ?bl) (libre ?bl) (sujeto ?bl) (brazolibre) ) (:action quitar :parameters (?bl1 ?bl2 ) :precondition (and (encima ?bl1 ?bl2) (libre ?bl1) (brazolibre) ) :effect (and (sujeto ?bl1) (libre ?bl2) (not (encima ?bl1 ?bl2)) (not (brazolibre)) (not (libre ?bl1)) ) )

67 67/16 Lenguaje PDDL - Operadores (:action levantar :parameters (?bl1 ) :precondition (and (enmesa ?bl1) (libre ?bl1) (brazolibre) ) :effect (and (sujeto ?bl1) (not (enmesa ?bl1)) (not (brazolibre)) (not (libre ?bl1)) )

68 68/16 Lenguaje PDDL - Operadores (:action poner :parameters (?bl1 ?bl2 ) :precondition (and (sujeto ?bl1) (libre ?bl2) ) :effect (and (encima ?bl1 ?bl2) (libre ?bl1) (brazolibre) (not (sujeto ?bl1)) (not (libre ?bl2)) )

69 69/16 Lenguaje PDDL - Operadores (:action dejar :parameters (?bl1 ) :precondition (and (sujeto ?bl1) ) :effect (and (enmesa ?bl1) (libre ?bl1) (brazolibre) (not (sujeto ?bl1)) )

70 70/16 SISTEMAS INSPIRADOS EN LA NATURALEZA

71 71/16 Lógica Difusa La Lógica Difusa es una generalización de la lógica tradicional de dos valores (verdadero, falsos). Mediante la lógica difusa es posible manipular matemáticamente conceptos definidos con incertidumbre, es decir, conceptos que son vagos, ambiguos e imprecisos. alta baja mediana kph Grado pertenencia

72 72/16 Redes Neuronales. Modelo de procesamiento basado en el cerebro. Está compuesto de capas de nodos unidos por arcos. Cada arco contiene pesos. El aprendizaje se logra en la actualización de esos pesos. Se usan para la clasificación y reconocimiento de patrones. Aplicaciones: Reconocimiento de patrones. Predicción Optimización.

73 73/16 Computación Evolutiva. Es un modelo de optimización ciega donde no se conoce la ecuación de la función a optimizar. Usa una técnica heurística para determinar los valores de las variables que permiten optimizar una función desconocida (no explicita). Aplicaciones. –Problema de ruteo de camiones entre ciudades. –Cuál es el mejor diseño de las características de un dispositivo. –Corte de materiales. –Aplicaciones donde el número de alternativas a buscar es muy grande.


Descargar ppt "1/16 Líneas de Investigación Mg. Samuel Oporto Díaz SEMINARIO DE TESIS I."

Presentaciones similares


Anuncios Google