INTELIGENCIA ARTIFICIAL

Slides:



Advertisements
Presentaciones similares
Complejidad Computacional
Advertisements

IMPLEMENTACIÓN DE AGENTE DE REFLEJO SIMPLE Y AGENTE DE MEMORIA INTERNA
Universidad de San Martín de Porres
Inteligencia Artificial y Robótica
INTEGRANTES Aguilar Pastor, Sara Blancas Tunqui, Alicia
AGENTE ASPIRADOR INTELIGENCIA ARTIFICIAL Y ROBÓTICA Alumnos
Complejidad Computacional
Descripción del Trabajo Final
Inteligencia Artificial UNIVERSIDAD DE SAN MARTIN DE PORRES
Agente Simple y Agente de Búsqueda Integrantes: Daga RamónCarolina. Farfan Losano Luis. Hernandez Triveño Marlon. La Rosa Taboada Carlos. Luque Cuba Julio.
Inteligencia Artificial
Inteligencia Artificial
DISEÑO DE EXPERIMENTOS
Entendiendo la definición de clases
La maquina de Turing La máquina de Turing es una caja negra (tan simple como una máquina de escribir y tan compleja como un ser humano) capaz no sólo de.
ACTIVIDAD 1: CONOCIMIENTO DE CONCEPTOS Y PRINCIPIOS
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Las estructuras de arreglos fueron usadas en las primeras computadoras digitales, cuando la programación se hacía todavía en lenguaje máquina, para tablas.
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
Informática II 1 Diego Fernando Serna RestrepoSemestre 2011/2.
PROGRAMACION DE ESTRUCTURAS DE DATOS
Representación en espacio de estado
Estimación por intervalos de confianza.
Inteligencia artificial
Arreglos: Vectores en JAVA
Cont. Arbol Binario de Búsqueda (2). Sobre los recorridos Las versiones recursivas de los recorridos son costosas debido a la gran cantidad de llamadas.
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Tema 6: Clases Antonio J. Sierra.
TÉCNICO EN PROGRAMACIÓN DE SOFTWARE Instructor: Ingeniero Adrián Guerrero Taborda
Ingeniero Anyelo Quintero
Integrantes: Charlles Perez Ivan Salguero Carlos Landivar.
Programación de Computadores
Grafos. Un Grafo G es un par de conjuntos (V, E), donde V es un conjunto no vacío de elementos llamados vértices o nodos y E es un conjunto formado por.
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
Agentes de resoluciones d problemas Parte I. Un agente puede adoptar una meta o un propósito para satisfacer.
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
ESTRUCTURA DE DATOS EN JAVA
Clase 10: Estructuras de datos y arreglos.
Programación IMC José Andrés Vázquez Flores. Definición Un arreglo es un conjunto finito e indexado de elementos homogéneos, que se referencian por un.
METODOLOGÍA DE LA PROGRAMACIÓN
Reconocimiento y resolución de ecuaciones impresas Luis Fernández Pérez Marco Antonio Formoso Trigo.
Material de apoyo Unidad 4 Estructura de datos
Sistemas Inteligentes Distribuidos Sistemas Inteligentes Distribuidos Sesión 13 L. Enrique Sucar / Marco López Sesión 13 L. Enrique Sucar / Marco López.
Capítulo 7 Gestión de memoria.
Sistemas Inteligentes Distribuidos Sistemas Inteligentes Distribuidos Sesión 8 Eduardo Morales / L. Enrique Sucar Sesión 8 Eduardo Morales / L. Enrique.
Problema de inclusión en una Curva Digital Por Orellana Muñoz, Alfonso Paz Vicente, Rafael Pérez Medina, Gerardo Rodríguez Naranjo.
Variables estadísticas bidimensionales
Programación Orientada a Objetos
Práctica de laboratorio:
Términos algoritmo diseñar algoritmo implementar algoritmo
Patricio A. Castillo José M. Galarce Agosto 23 de 2008 Segunda Clase.
Programación Básica con NQC Patricio A. Castillo 12/04/2008.
ALGORITMO QUE ES ??.
Fundamentos de Programación
UNIDAD 4: Introducción a la Lógica Computacional Objetivo : Interpretar y aplicar adecuadamente los fundamentos básicos de la estructura y funcionamiento.
ESTIMACIÓN DE PARÁMETROS
Variables estadísticas bidimensionales
Universidad Abierta y a Distancia de México UnADM
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
Por: Agustín Audor Julian Tole
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
David A Salamanca Díaz. DEFINICIÓN  Se define como una serie de pasos organizados que describen el proceso que se debe seguir, para dar solución a un.
Conceptos Generales PROGRAMACIÓN I DOCENTE: ING. MARLENY SORIA M. 1.
Fuentes consultadas Fuentes consultadas Medios de Transmisión Medios de Transmisión Actividades de aprendizaje Actividades de aprendizaje Propósito Introducción.
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
CB2: Uso de las tic (tecnologías de la información y la comunicación). N5: Elaboración colaborativa de conocimiento a través de tareas y proyectos educativos.
TEMA 7 ANÁLISIS DE LOS RESULTADOS TEMA 7 ANÁLISIS DE LOS RESULTADOS.
ROCYCELA GARCIA VASQUEZ. CB2: Uso de las tic (tecnologías de la información y la comunicación). N5: Elaboración colaborativa de conocimiento a través.
Transcripción de la presentación:

INTELIGENCIA ARTIFICIAL 2009-1

Tabla de Contenido Inteligencia Artificial y Robótica RESUMEN Palabras claves INTRODUCCION AGENTE REFLEJO SIMPLE Planteamiento del problema: AGENTE DE BUSQUEDA Planteamiento del problema CONCLUSIONES RECOMENDACIONES

RESUMEN Como primera parte de este trabajo se comenzó analizando el comportamiento del Agente Reflejo Simple efectuando para ello 100 corridas al programa y se logro sacar estadísticas, conclusiones en conjunto y entender su comportamiento. Como segunda parte del trabajo el tema del Agente de Búsqueda que se desarrolla bajo una matriz de 6x6 la matriz tendrá un estado inicial donde la basura se genera aleatoriamente, el robot buscara limpiar el ambiente logrando el estado meta.

PALABRAS CLAVES Agente: un agente es una entidad que toma decisiones dependiendo del estado de su entorno. Bucle: es una sentencia que realiza repetidas veces un trozo aislado de código, hasta que la condición asignada a dicho bucle deje de cumplirse Complejidad: es una medida de la cantidad de recursos que consume. Meta: es el estado final , al que se quiere llegar. Algoritmo: Un algoritmo es un procedimiento computacional bien definido, que toma un conjunto de valores de entrada y produce valores de salida.

INTRODUCCION La primera parte del informe tiene como finalidad analizar y comprender el comportamiento del Agente Reflejo Simple; se realizaron 100 corridas al programa y se pudo desarrollar una tabla de estadísticas del comportamiento de agente. En la segunda parte de este informe se realizaron modificaciones al programa en lenguaje Java del agente de búsqueda, donde definimos los operadores y el estado inicial y meta de nuestro robot que bajo un ambiente de 6x6 deberá succionar la basura y lograr su estado meta, esto quiere decir succionar toda la basura de su ambiente.

AGENTE REFLEJO SIMPLE

Planteamiento del problema Se busca entender el comportamiento del agente realizando las corridas y entendiendo el código que lo genera. Se sabe que este agente no tiene memoria y sus movimientos están gobernadas por unas reglas y acciones que debe seguir.

Desarrollo Experimental REPRESENTACIÓN DEL ESCENARIO: El Escenario será para nosotros nuestro ambiente de trabajo en donde el agente tendrá una visión limitada del escenario, tan solo podrá ver algunos espacios ubicados debajo de él y recordar su última acción solo cuando reciba un golpe físico y no de su cámara, identificar cuáles son basuras que recogerá, no caer en los obstáculos y tratará evitar pasar dos veces por el mismo lugar. ¿Pero como el agente sabe qué camino tomar y que objetos evitar y cuales recoger?, la respuesta es que sencillamente no lo sabe ya que seremos nosotros los tendremos que definir, es decir, darle a conocer que caminos puede tomar para poder desplazarse.

Desarrollo Experimental     Desarrollo Experimental COMPORTAMIENTO: Inicia su recorrido con left . El agente realiza una rotación de + 90 grados. Quiere decir que gira hacia su lado izquierdo, cuando choca con wall   Cuando el agente choca con un hole  el programa del agente se detiene. Dependiendo del tamaño del ambiente que desempeña el agente, mientras mas grande el ambiente se genera un bucle mayor

Obtención de la Data Los datos, en la generación aleatoria de 100 ambientes, tales como: la complejidad, el rendimiento, el número de basuras () generadas, el tamaño del ambiente, el numero de agujeros (), el numero de obstáculos () etc. Fueron obtenidos realizando la tabla Percepción – Acción (ver Figura 1) de cada uno de los 100 ambientes, los cuales se registraron en tablas estadísticas.

Obtención de la Data

Gráficos Obtenidos La relación que tiene el tamaño del ambiente con el número de choques que tiene el agente es bastante aleatoria.

Gráficos Obtenidos

AGENTE DE BUSQUEDA

Planteamiento del problema Un ambiente de cuatro lados generado aleatoriamente con obstáculos, basuras y hoyos; el objetivo es que el agente recorra el ambiente siguiendo su algoritmo y succione la basura, rote al encontrar obstáculos y evite caer en hoyos. Tenemos 2 tipos de agentes diferentes: uno es un agente de búsqueda que no informada, el cual puede realizar búsquedas por amplitud BFS o búsquedas por profundidad DFS y el otro es un agente reflejo simple, que no necesita conocer su ambiente sino basa sus acciones mediante una tabla de percepción – acción, es decir, el agente percibe en el momento lo que se encuentra en su entorno y actúa basándose en sus operadores.

Desarrollo Experimental Estados del agente Para nuestro trabajo solo hemos seguido la lógica del estado agente, puesto seguirá la mismos movimientos y tomara las mismas acciones salvo cuando se de que encuentre el punto de posición final deberá detenerse.

Detenerse Esto puede suceder cuando se da los siguientes casos:

Representación de Agente Representación declarativa Para este agente se representa utilizando la clase útil.Constantes:

Para obtener que el agente busque la posición final requiere de ingresar los parámetros deseados, para esto tomamos el método getAmbienteFinal, en el cual ingresamos dos números enteros. public int[][] getAmbienteFinal(int filas, int columnas) { Se inicia insertando los números enteros que me permita ingresar la fila y columna para la posición final. int fil; int col; Scanner capt = new Scanner(System.in); Se muestra formato de impresión de solicitud de ingresar parámetros de posición final y captura los datos ingresado guardándolos en los valores enteros anteriormente declaradas (fil, col). System.out.println("****************************************"); System.out.println("****SETEADO DE LA POSICION FINAL*******"); System.out.println("Ingrese Fila de la Posicion Final"); fil = capt.nextInt(); System.out.println("Ingrese Columna de la Posicion Final"); col = capt.nextInt(); Se pasan los datos a unos valores predeterminado como variables privada enteros, prívate int Posición Fila Final y Posición Columna Final. PosicionFilaFinal = fil; //+ (int) (Math.random() * (filas - Constantes.PAREDES)); // HALLA ALEATORIAMENTE LA POS. FILA DEL AGENTE. PosicionColumnaFinal = col; //+ (int) (Math.random() * (columnas - Constantes.PAREDES)); // HALLA ALEATORIAMENTE LA POS. COLUMNA DEL AGENTE.

He aquí el inicio del trabajo del agente con respecto a su búsqueda de posición final. Por el cual se compara la posición final (fila y columna) con el número real de la matriz sin contar la pared. Si es si la variable posición final tendrá el valor de cero y en caso contrario tendrá un valor de 1. if ((PosicionFilaFinal <= (filas - Constantes.PAREDES)) && (PosicionColumnaFinal <= (columnas - Constantes.PAREDES))){ posicionFinal = 0; //NUMERO NO TERMINA SESION } else { posicionFinal = 1; //NUMERO TERMINA SESION }

Esta parte solo se puede reflejar el ingreso se la comparación entre la matriz Ambiente y la posición final que si contienen el mismo valor cero, deberá terminar el programa del agente. Caso contrario seguirá su flujo normal de buscar una nueva posición. Este varía en el BSF.java donde el mm2 tendrá que ubicar dos variables de tipo entero para capturar los datos esta es:

CONCLUSIONES Con respecto al agente de búsqueda, se procedió a cumplir con el código fuente, el cual se produjo factores de error el cual impidió su óptimo funcionamiento pero se pretendió ejecutar un código basado a un estudio previo de un comportamiento en base a análisis con ejemplos diseñado demuestra un completo control del agente con respecto a sus decisiones. El agente de búsqueda se basara en buscar un punto para su fin el cual no restringe sus demás tareas de recolección de basura. Esto implica comprobar el numero de posición final y la matriz del ambiente. El agente de reflejo simple demostró un nivel más bajo de desempeño el cual permitió un análisis bastante simple dado que sus índices de resultados son poco satisfactorio.

RECOMENDACIONES BIBLIOGRAFIA Desarrollar algoritmos para la solución de los problemas. En el caso del agente reflejo simple cuando este entra en un bucle se debe definir que este agente se detenga. BIBLIOGRAFIA www.wiphala.net/courses/intelligent_systems/090666/2009-I/index.html www.cruzrojaguayas.org/.../Estructura%20de%20Agentes%20Inteligentes.htm www.monografias.com/trabajos16/la-inteligencia-artificial/la-inteligencia-artificial.shtml www. intart.wetpaint.com/.../Agentes+Inteligentes www.scribd.com/doc/7740529/AGENTES