Sistemas Basados en Comportamientos

Slides:



Advertisements
Presentaciones similares
EL PROCESO DE DESARROLLO DEL SOFTWARE
Advertisements

DISEÑO DE TRANSFERENCIA ENTRE REGISTROS
METODOLOGÍA ORIENTADA A OBJETOS CARACTERISTICAS DEL PROCESO
Fundamentos de Diseño de Software INFT.1
ANÁLISIS DE REQUERIMIENTOS
Enfoques de la IA Ana Lilia Laureano-Cruces
Arquitectura Orientada a Servicios (SOA)
Iván ventura presenta.
Diseño orientado al flujo de datos
DSOO - María Eugenia Valencia
HISTORIA Y CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
Introducción a la programación orientada a aspectos.
COMPONENTIZACIÓN DE ALGORITMOS GENETICOS Y SU IMPLEMENTACIÓN EN UNA PLATAFORMA ABIERTA PARA APRENDIZAJE COMPUTACIONAL.
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
Ingeniería del Software
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
METODOLOGIA DE LA PROGRAMACION
Inteligencia Artificial (BAIA)  Se propone lograr que las computadoras se comporten de manera que podamos reconocerlas como inteligentes.  Tiene por.
Contexto: Aplicación gráfica.  Siempre que se piensa en separar la funcionalidad de una aplicación de su interacción con el usuario, bien sea una aplicación.
Laura Patricia Pinto Prieto Ingeniera de sistemas.
Arquitectura del Computador
Elemento Lógico (Software)
PROGRAMACIÓN PARALELA Tema 4: Metodología de la programación
Diseño del Software Diseño de datos Diseño arquitectónico
Ingeniería de Software
Ciclo de Vida del Software Paradigmas de Desarrollo
5.3 APROXIMACIONES AL DISEÑO
ISF5501 Ingeniería de Software
Introducción al modelo Cliente-Servidor Carlos Rojas Kramer Universidad Cristóbal Colón.
Desarrollo de aplicaciones para ambientes distribuidos
Tecnológico de Estudios Superiores Huixquilucan Fundamentos de Sistemas Ingeniería en Sistemas Computacionales Lic.: Lydia Villavicencio Gómez “Paradigmas.
Comunicación y Multimedia
Sistemas Inteligentes Distribuidos Sistemas Inteligentes Distribuidos Sesión 13 L. Enrique Sucar / Marco López Sesión 13 L. Enrique Sucar / Marco López.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
SISTEMAS OPERATIVOS.
Robótica Inteligente L. Enrique Sucar Leonardo Romero Marco López ITESM Cuernavaca.
Ingeniería en Sistemas de Información
Organización y Estructuración de Datos
Neurociencias Cognitivas y Redes Neuronales
Robótica Inteligente L. Enrique Sucar Leonardo Romero Marco López ITESM Cuernavaca.
Lenguajes de programación. Lenguaje máquina El ordenador sólo sabe hacer un número limitado de tareas (muy pocas) definidas electrónicamente en su procesador.
INSTITUTO TECNOLOGICO DE MINATITLAN ASIGNATURA: FUNDAMENTOS DE PROGRAMACION DOCENTE: JOSE ANGEL TOLEDO ALVAREZ ALUMNA: ALEJANDRA OSORIO ARVISU SEMESTRE:
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
¿Qué son Los Lenguajes de Programación?
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Tema 6: Programación L. Enrique Sucar Marco López ITESM Cuernavaca
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
“condición que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. Los requisitos de un sistema son los aspectos que el.
Facultad de Ingeniería
Programación Orientada a Objeto
Términos y Conceptos Básicos
Ing. Noretsys Rodríguez. Definición de Conceptos  Falla: Ocurre cuando un programa no se comporta de manera adecuada. Es una propiedad estadística de.
Modelo de 3 capas.
Metodología de la programación
Robótica Inteligente L. Enrique Sucar Marco López ITESM Cuernavaca.
Diseño de Sistemas.
Ingeniería de Requisitos
PRESENTADO POR: LINA MARCELA IGUA TORRES SONIA MOYANO ESPINOSA DAVID MAHECHA MEDINA CRISTIAN HERNÁNDEZ GERMAN RAMÍREZ.
ARQUICTECTURA DE SERVIDORES
CONTROL MOTOR Y SUS TEORÍAS
Actividades en el Proceso de desarrollo de Software
Neurociencias Cognitivas y Redes Neuronales
UNIDAD 2: “Características del Modelado UML” CONTENDIDO Elaborado por: Ingeniero Harold Cabrera Meza Actualizado por: Ingeniero Nilson Albeiro Ferreira.
INTELIGENCIA ARTIFICIAL APLICADA A LA ROBOTICA
República Bolivariana de Venezuela Universidad Nacional Experimental Politécnica de la Fuerza Armada (UNEFA) Carrera: Ingeniería de Sistemas Cátedra: Análisis.
Universidad Pedagógica Experimental Libertador Instituto Pedagógico de Caracas Vicerrectorado de Investigación y Postgrado Especialización para la Gestión.
Modelo de procesos de software
Presentación De UML Lenguaje estándar para escribir planos de software Se usa para visualizar, especificar, construir y documentar los artefactos de un.
Profesor: Jesús Chaparro Bachilleres: Perez, emibeliz Prada, Rainer Villahermosa, José Abril 2014.
Transcripción de la presentación:

Sistemas Basados en Comportamientos CI-2657 Robótica M.Sc. Kryscia Ramírez Benavides

Definiciones Comportamiento individual. Es un par estímulo-respuesta para un ajuste del medio ambiente, dado que es modulado por la atención y determinado por la intención. Atención. Prioriza las tareas y se centra en los recursos sensoriales y está determinada por el contexto del entorno actual. Intención. Determina qué conjunto de comportamientos deben ser activados basados en las metas y objetivos internos del agente robótico. CI-2657 Robótica Sistemas Basados en Comportamientos

Definiciones (cont.) Comportamiento emergente. El comportamiento global observado; una consecuencia de la interacción de los comportamientos individuales activos. Conducta reflexiva (comportamiento puramente reactivo). El comportamiento que se genera por comportamientos reactivos mediante conexiones entre sensores y efectores. CI-2657 Robótica Sistemas Basados en Comportamientos

Comportamiento Animal Ideas El comportamiento animal define la inteligencia (o estupidez). La prueba de que el comportamiento inteligente es posible. Puede proporcionar modelos que pueden ser utilizados para crear máquinas inteligentes. Los estudios biológicos no están vistos, necesariamente, como limitante para los robots. Problemas. Hardware biológico es diferente. Nuestro conocimiento del funcionamiento del hardware biológico es a menudo insuficiente. CI-2657 Robótica Sistemas Basados en Comportamientos

Estudios del Comportamiento Animal Neurociencia El estudio de la anatomía del sistema nervioso, la fisiología, la bioquímica y la biología molecular. Psicología El estudio de la mente y el comportamiento. Etología El estudio del comportamiento animal en condiciones naturales. CI-2657 Robótica Sistemas Basados en Comportamientos

Comportamiento del Robot en Sistemas Reactivos En el control reactivo: La percepción y la acción están estrechamente acopladas, normalmente en el contexto de conductas motoras. Produce una respuesta robótica oportuna en mundos dinámicos y no estructurados. Sin el uso de intervención en la representación abstracta o historial de tiempo. CI-2657 Robótica Sistemas Basados en Comportamientos

Sistema Robótico Puramente Reactivo Los comportamientos sirven como bloques de construcción básicos para las acciones robóticas. Uso de conocimiento explícito de la representación abstracta se evita en la generación de una respuesta. Los modelos animales de comportamiento a menudo sirven como base. Intrínsecamente modular desde la perspectiva del diseño de software. CI-2657 Robótica Sistemas Basados en Comportamientos

Robótica Basada ​​en el Comportamiento La robótica basada ​​en el comportamiento surgió del reconocimiento de que la planificación, no importa cuán intencionada, es a menudo una pérdida de tiempo. Los sistemas robóticos basados ​​en el comportamiento proporcionan un medio para que un robot navegue en un mundo incierto e imprevisible sin planificación, dotando al robot con los comportamientos que tienen que ver con los objetivos específicos de forma independiente y coordinarlos de manera intencionada. CI-2657 Robótica Sistemas Basados en Comportamientos

Robótica Basada ​​en el Comportamiento (cont.) Los comportamientos son el módulo subyacente del sistema. La descomposición del comportamiento: Los sistemas consisten en módulos secuenciales logrando funciones independientes. CI-2657 Robótica Sistemas Basados en Comportamientos

Comportamiento Robótico Generar una respuesta motora de un determinado estímulo perceptual. Base en los estudios biológicos. Sirve como fuente de inspiración para el diseño. CI-2657 Robótica Sistemas Basados en Comportamientos

Comportamiento vs Acción Basado en proceso dinámico. Funcionamiento en paralelo. La falta de un control central. Acoplamientos rápidos entre los sensores y motores. Explotación de emergencia. Efectos secundarios de los procesos combinados. Utilización de las propiedades del entorno. Reactivo. Discreto en el tiempo. Bien definidos puntos inicial y final. Permite pre y post condiciones. No hay efectos secundarios. Sólo una acción o acciones de unos pocos a la vez. Los conflictos no son deseados y se evitan. Deliberativo. CI-2657 Robótica Sistemas Basados en Comportamientos

Reactividad Los comportamientos sirven como bloques de construcción para las acciones. La representación abstracta se evita. A menudo, el modelo de comportamiento de los animales. Intrínsecamente modular. CI-2657 Robótica Sistemas Basados en Comportamientos

Estímulos La presencia de estímulos es necesaria pero no suficiente en la robótica basada en el comportamiento. El estímulo debe alcanzar el valor umbral antes de que se genera una respuesta. CI-2657 Robótica Sistemas Basados en Comportamientos

Representación Los comportamientos pueden ser representados / almacenados en una red, con relaciones entre ellos. Multiplicador de fuerza, o ganancia, puede desactivar las conductas o aumentar la respuesta. CI-2657 Robótica Sistemas Basados en Comportamientos

Propiedades de los Comportamientos Lograr tareas / objetivos específicos. Se ejecuta en paralelo / concurrente. Se puede almacenar el estado y ser usado para construir modelos / representación del mundo. Se puede conectar directamente sensores y efectores (es decir, tomar las entradas de los sensores y enviar salidas a los efectores). Puede tomar los aportes de otros comportamientos y enviar sus productos a otros comportamientos (esto permite la creación de redes). Por lo general acciones de alto nivel. Controladores de retroalimentación. Normalmente circuito cerrado. Cuando está montado en representaciones distribuidas, los comportamientos pueden ser utilizados para mirar hacia adelante, pero en una escala de tiempo comparable con el resto del sistema basado en el comportamiento. CI-2657 Robótica Sistemas Basados en Comportamientos

Clasificación Genérica de Comportamientos del Robot Comportamientos de exploración / direccionales. Orientadas hacia metas de conductas apetitivas. Comportamientos aversivo / de protección. Comportamientos siguiendo ruta. Conductas posturales (equilibrio, estabilidad). Conductas sociales / cooperativa. Comportamientos teleautonomous (influencia, modificación del comportamiento). Conductas perceptivas. Comportamientos de caminar (marcha de control). Manipulador de comportamientos específicos. Comportamientos de mano / pinza (agarrar, envolver). CI-2657 Robótica Sistemas Basados en Comportamientos

Propiedades Principales Capacidad para actuar en tiempo real. Capacidad para utilizar representaciones y generar comportamiento eficiente (y no sólo reactivo). Capacidad para utilizar una estructura uniforme y una representación en todo el sistema (por lo que no hay capa intermedia). CI-2657 Robótica Sistemas Basados en Comportamientos

Tipos de Notación de Comportamientos Diagramas de estímulo-respuesta. Comportamientos de notación funcional. Diagramas de aceptación de estados finitos. CI-2657 Robótica Sistemas Basados en Comportamientos

Diagramas de Estímulo-Respuesta Los diagramas de estímulo-respuesta (SR) son los más intuitivos y el método menos formal de expresión. Ejemplo: Diagrama de estímulo-respuesta para un Robot que va a un aula CI-2657 Robótica Sistemas Basados en Comportamientos

Comportamientos de Notación Funcional Podemos utilizar la notación funcional para describir comportamientos: b(s) = r. Donde b es el comportamiento, s es el estímulo y r la respuesta. En un sistema puramente reactivo, el tiempo no es un argumento para la conducta b. Ejemplo: CI-2657 Robótica Sistemas Basados en Comportamientos

Diagramas de Aceptación de Estados Finitos Diagramas de estados finitos (FSD) o aceptor de estados finitos (FSA) se pueden utilizar para describir agregaciones y las secuencias de comportamientos (también llamado como ensambles de comportamiento). FSA son los mejores para especificar sistemas complejos de control de la conducta en grupos completos de comportamientos primitivos que se intercambian dentro y fuera de su ejecución durante el cumplimiento de una meta de alto nivel. En algunos casos, los lenguajes formales, como el lenguaje de especificación y descripción (SDL) se puede utilizar para crear / generar código para las implementaciones reales. CI-2657 Robótica Sistemas Basados en Comportamientos

Diagramas de Aceptación de Estados Finitos (cont.) CI-2657 Robótica Sistemas Basados en Comportamientos

Comportamientos Emergentes Comportamiento emergente: A menudo, una cosa mística, el robot parece hacer más que lo programado! Una verdadera sorpresa: la suma es considerablemente mayor que sus partes! ¿Por qué no podemos predecir el comportamiento exactamente? El mundo mismo resiste un modelado analítico. Modelos con sensores precisos no existen. El comportamiento emergente es una consecuencia de la complejidad subyacente del mundo en el que el agente robótico reside y la complejidad adicional de percibir ese mundo. CI-2657 Robótica Sistemas Basados en Comportamientos

Características Comunes de las Arquitecturas Basadas en el Comportamiento Hay muchas arquitecturas basadas en el comportamiento, pero comparten muchas características comunes: Énfasis en la importancia de la detección de acoplamiento y la acción hermética. Evitar el conocimiento simbólico representacional. El sistema global de control se divide en unidades. Pero también hay diferencias: La granularidad de la descomposición del comportamiento. La base de la especificación del comportamiento (actividad etológica, situado, experimental). El método de codificación de la respuesta (null, discreto y continuo). El método de coordinación (competitivo o cooperativo). Métodos de programación, lenguajes, reusabilidad. CI-2657 Robótica Sistemas Basados en Comportamientos

Evaluación de las Arquitecturas Basadas en el Comportamiento ¿Apoyo para el paralelismo? ¿Capacidad del hardware de destino? ¿Mapeo de SW a HW? ¿Capacidad del lugar de destino? ¿Soporte a la modularidad? ¿Encapsular abstracciones del comportamiento? ¿Robustez? ¿Tolerancia a fallos? ¿Puntualidad en el desarrollo? ¿Herramientas de desarrollo? ¿Simuladores? ¿Flexibilidad en tiempo de ejecución? ¿Efectividad del rendimiento? CI-2657 Robótica Sistemas Basados en Comportamientos

Arquitectura de Subsunción Logro de tareas de comportamientos en la arquitectura de subsunción se representan como capas separadas que funcionan en paralelo. CI-2657 Robótica Sistemas Basados en Comportamientos

Arquitectura de Subsunción (cont.) Descomposición de controladores en niveles de competencia. Añade comportamientos incrementalmente. Las capas de alto nivel se sustentan en las de bajo nivel. Las capas de alto nivel pueden subsumir las de bajo nivel. Las capas se activan en paralelo. Cada capa trabaja independientemente. No existe un control jerárquico. Acoplamientos directos entre los sensores y efectores con un pequeño procesamiento interno. CI-2657 Robótica Sistemas Basados en Comportamientos

El Mejor Modelo es el Mundo Este es un principio fundamental de los sistemas reactivos y arquitectura de subsunción: El mundo es el mejor modelo. Si el mundo puede proporcionar la información directamente (a través de sensores), lo mejor es conseguirlo de esa manera, que almacenar internamente una representación (que puede ser grande, lenta, costosa y anticuada). CI-2657 Robótica Sistemas Basados en Comportamientos

Proceso de Diseño de la Arquitectura de Subsunción Especificar cualitativamente el comportamiento global necesario para la tarea. Descomponer en comportamientos específicos e independientes (capas). Las capas deben ser de abajo hacia arriba y consistir en acciones inconexas. Comportamientos de bajo nivel en los sensores del robot y efectores. Incremental en la manera de construir, probar y agregar. CI-2657 Robótica Sistemas Basados en Comportamientos

Niveles de competencia Define los comportamientos deseados: Evitar Obstáculos, Explorar, traer comida, etc. Cada nivel se puede implementar independientemente. Permite una gran escalabilidad. Compuestos de varios módulos. CI-2657 Robótica Sistemas Basados en Comportamientos

Módulos Máquinas de estados finitos aumentadas. CI-2657 Robótica Sistemas Basados en Comportamientos

Módulos (cont.) Los aspectos más importantes son: Las salidas son funciones sencillas de las entradas y variables locales. Las entradas/salidas se pueden inhibir/suprimir. Los módulos de los niveles de competencia superiores pueden inhibir a los inferiores. Los niveles de competencia inferiores siguen funcionando como si no existieran los niveles superiores. CI-2657 Robótica Sistemas Basados en Comportamientos

El Arbitraje en Subsunción Arbitraje. Decidir quién tiene el control. Inhibición. Evita que las señales de salida lleguen a los efectores. Supresión. Reemplaza la señal de entrada con el mensaje de la supresión. Las dos anteriores son los únicos mecanismos de coordinación. Resultados de prioridad basado en el arbitraje. La regla o una capa con una prioridad más alta se hace cargo, es decir, tiene el control de la AFSM. CI-2657 Robótica Sistemas Basados en Comportamientos

Inhibición CI-2657 Robótica Sistemas Basados en Comportamientos

Supresión CI-2657 Robótica Sistemas Basados en Comportamientos

Ejemplo: Diagrama para un robot de búsqueda de alimento CI-2657 Robótica Sistemas Basados en Comportamientos

Subsunción CI-2657 Robótica Sistemas Basados en Comportamientos

Evaluación de Subsunción Fortalezas: Reactividad (velocidad, tiempo real de la naturaleza). Paralelismo. Diseño incremental => robustez. Generalidad. Debilidades: Falta de flexibilidad en tiempo de ejecución. Experiencia necesaria en el diseño. CI-2657 Robótica Sistemas Basados en Comportamientos

Comportamiento Emergente Fenómeno importante, pero no se entiende bien. Se encuentra a menudo en robótica basada en el comportamiento. Comportamientos del robot "emergen" de Las interacciones de las normas. Las interacciones de los comportamientos. Las interacciones de ambos con el medio ambiente. CI-2657 Robótica Sistemas Basados en Comportamientos

Distinción Codificando comportamiento. Comportamiento observado. En el esquema de programación. Comportamiento observado. En los ojos del observador. Emerge. No hay asignación de uno-a-uno entre los dos. ¿Por qué? La suma es mayor que las partes. El comportamiento emergente es más que el controlador que produce. CI-2657 Robótica Sistemas Basados en Comportamientos

Interacción y Emergencia Las interacciones entre las normas, comportamientos y medio ambiente. Fuente de poder expresivo de un diseñador. Es decir, los sistemas pueden ser diseñados para tomar ventaja del comportamiento emergente. CI-2657 Robótica Sistemas Basados en Comportamientos

Ejemplo: Siguiendo a la pared Puede ser implementado con estas reglas: Si está demasiado lejos, moverse más cerca. Si está muy cerca, se aleja. De lo contrario, sigue. Con el tiempo, en un entorno con paredes, esto se traducirá en la pared siguiente. CI-2657 Robótica Sistemas Basados en Comportamientos

Ejemplo: Siguiendo a la pared (cont.) ¿Es este comportamiento emergente? Se argumenta que sí porque: El robot en sí mismo no tiene conocimiento de una pared, sólo reacciona a lecturas de distancia. Los conceptos de "muro" y "siguiente" no se almacenan en el controlador del robot. El sistema es sólo una colección de reglas. CI-2657 Robótica Sistemas Basados en Comportamientos

Referencias Bibliográficas Fu, K.S.; González, R.C. y Lee, C.S.G. Robotics: Control, Sensing, Vision, and Intelligence. McGraw-Hill. 1987. CI-2657 Robótica Sistemas Basados en Comportamientos

CI-2657 Robótica Sistemas Basados en Comportamientos

¡Gracias! M.Sc. Kryscia Daviana Ramírez Benavides Profesora e Investigadora Universidad de Costa Rica Escuela de Ciencias de la Computación e Informática Sitio Web: http://www.kramirez.net/ E-Mail: kryscia.ramirez@ucr.ac.cr kryscia.ramirez@ecci.ucr.ac.cr Redes Sociales: CI-2657 Robótica Sistemas Basados en Comportamientos