Inteligencia Artificial

Slides:



Advertisements
Presentaciones similares
Búsqueda en un espacio de estados
Advertisements

INTELIGENCIA ARTIFICIAL
INTELIGENCIA ARTIFICIAL Y SISTEMAS EXPERTOS
Inteligencia Artificial
Algoritmo A*.
Cap 4 Búsqueda Heurística
Búsqueda Informada Heurísticas.
Inteligencia Artificial Búsqueda informada y exploración
ESTRATEGIAS DE BUSQUEDA A CIEGAS
Inteligencia Artificial Gonzalo Villarreal Farah
Trabajo presentado por: LUIS FERNANDO OBANDO ING
Solución de problemas por Búsqueda
Diseño y análisis de algoritmos
Métodos de Búsqueda Informada. Búsqueda de la mejor Ruta En esta sección no sólo nos interesa encontrar una posible ruta, sino obtener aquella ruta que.
METODOS DE BUSQUEDA INFORMADOS CAPITULO 5
Inteligencia Artificial
Lcda. Ingrid Graü Diseño de Sistemas 1. Lcda. Ingrid Graü Diseño de Sistemas 2.
Algoritmos para búsqueda “informada” Capítulo 4. Contenido Búsqueda primero el mejor Búsqueda primero el mejor “agresiva” (greedy) A * Heuristicas Algoritmos.
 E Expresión de un problema de programación lineal  A Aplicaciones de la programación lineal  S Soluciones de un problema de programación lineal.
BÚSQUEDA EN ESPACIOS DE ESTADOS Espacio de estados: modelo del mundo representado por un grafo Espacio de estados: modelo del mundo representado por un.
COMUNICACIÓN Y TICS Károl Fernanda Barragán M. Jennylith Dayana Ardila P. Wendy Paola Pinto F.
8-Puzle consiste en un tablero cuadrado (3x3) en el que hay situados 8 bloques cuadrados numerados (con lo cual se deja un hueco del tamaño de un bloque).
BÚSQUEDA DE SOLUCIONES Soluciones no Informadas (cont.) Dra. Myriam Hernández A.
ALGORITMO DE DIJKSTRA BANDA DÍAZ ANA KARINA SUAREZ BARON SINDY TATIANA.
VENTAJAS DEL ALGORITMO LMS
Protocolos de enrutamiento de estado de enlace
Técnica de evaluación y revisión de programas
Universidad Autónoma del Estado de México
PLANIFICACIÓN DE LAS RUTAS DE DISTRIBUCIÓN
ANALISIS Y DISEÑO DEL ALGORITMOS
YULIANA GARCIA LAURA CARDONA KELLY ARANGO.
PROBLEMA DEL AGENTE VIAJERO
Guía de Ejercicios 3: D&AA Universidad Viña del Mar 30/9/2002
Licenciatura en Contaduría Tema:
Conceptos Básicos de Programación
Listas enlazadas particulares
Laura Tatiana Echeverry Mesa Laura Cristina Restrepo Clavijo
LÍMITE DE UNA FUNCIÓN.
ADMINISTRACIÓN DE OPERACIONES II ING. MBA ELAR ZAPATA ORTIZ.
UNIVERSIDAD TECNOLOGICA INDOAMERICA INGENIERIA EN CIENCIAS DE LA COMPUTACION INTELIGENCIA ARTIFICIAL NOMBRE: NICOLAS RAMOS NIVEL: OCTAVO AMBATO - ECUADOR.
LÍMITE DE UNA FUNCIÓN.
Algoritmos Genéticos Inteligencia Artificial Universidad del Magdalena Ing. De Sistemas.
LA REGLA DE LA ESQUINA NOROESTE
TEORÍA DE GRAFOS -Algoritmo de Dijkstra -Algoritmo de Primm -Algoritmo de Kruskal Integrantes:
Análisis de redes Por: Alexander Miss.
Análisis de redes. 3.4 Problema de flujo máximo.
Búsqueda por profundidad iterativa
Teoría de Redes Ing. Douglas Vergara. Concepto básico Un arco es dirigido si permite el flujo positivo en una dirección y un flujo cero en la dirección.
LOCALIZACIÓN ÓPTIMA DEL PROYECTO
Análisis de decisión Ejemplo  La GOFERBROKE COMPANY es dueña de unos terrenos en los que puede haber petróleo. Un geólogo consultor ha informado a la.
Búsqueda tabú INTEGRANTES: JESSICA PINTA MICHELLE TORRES.
Agentes que planifican. 1. Introduccion En la actualidad todas la mayoría de actividades en un empresa o compañía, como en el hogar o el medio ambiente.
Problema de la ruta mínima
Localización y planeación de trayectorias
Localización y planeación de trayectorias
Estructura de Datos M.C. J. Andrés V. F. FCC/BUAP
TEMAS *Arboles Binarios *listas Abiertas y Cerradas - Inserción - Recorrido - Eliminación *Pilas - Concepto - Inserción - Recorrido -
características algoritmo algoritmo algoritmo
Resolución de Ecuaciones No Lineales
OPTIMIZACIÓN EN REDES EN ALGUNOS PROBLEMAS DE OPTIMIZACIÓN PUEDE SER ÚTIL REPRESENTAR EL PROBLEMA A TRAVÉS DE UNA GRÁFICA: ruteo de vehículos, distribución.
Arboles. Árboles ¿Qué son? Son Estructuras de datos “No lineales”” ¿Para que se utilizan? Representar Fórmulas Algebraicas Organizar Objetos Inteligencia.
Costos, Presupuestos y Programación de Obras Tema : Método PERT-CPM.
Algoritmos de caminos más cortos
Luis Manuel Monroy García Matemáticas discretas Ingeniería de Sistemas Universidad Simón Bolívar.
Implementación de algoritmo para juegos. Algoritmo Minimax  El algoritmo de minimax en simples palabras consiste en la elección del mejor movimiento.
UNIVERSIDAD NACIONAL DEL CENTRO DEL PERU FACULTAD DE INGENIERIA DE MINAS HUANCAYO I MODELO DE REDES Ing. Eli Teobaldo Caro Meza CURSO: INVESTIGACION.
Espacio de estados: un problema se divide en un conjunto de pasos de resolución desde el inicio hasta el objetivo. Los estados y su relación de accesibilidad.
HOJA DE VERIFICACIÓN DE CALIDAD. Una hoja de verificación es una herramienta expresada en un formato que se utiliza para recolectar de manera estructurada.
Grafos. Concepto: Un Grafo no es más que un conjunto de nodos o vértices que se encuentran relacionados con unas aristas. Además, los vértices tienen.
Investigación Operativa
Transcripción de la presentación:

Inteligencia Artificial Algoritmo A*

Inteligencia Artificial Algoritmo A* IntroducciÓn El algoritmo de búsqueda A* (A Estrella) se clasifica dentro de los algoritmos de busqueda en grafos. Presentado por primera vez en 1968 por Peter E. Hart, Nils J. Nilsson y Bertram Raphael, el algoritmo encuentra, siempre y cuando se cumplan unas determinadas condiciones, el camino de menor costo entre un nodo origen y uno objetivo. En donde se vera que el contar con información sobre un espacio de estados evita a los algoritmos emprender búsquedas a ciegas. Pag. 123 de libro

Inteligencia Artificial Algoritmo A* Que es A*? Es un algoritmo de busqueda inteligente o respaldado por informacion que busca el camino mas corto desde un estado inicial al estado meta atraves de un espacio de problema usando una heuristica optima. Pertenece al metodo de busqueda preferente por lo mejor (Best First Search ).

Inteligencia Artificial Algoritmo A* El algoritmo A* es usualmente utilizado en los problemas para encontrar la mejor ruta o camino, lo que realiza el algoritmo es construir todas las rutas desde un punto inicial hasta encontrar alguna que llegue al nodo final o meta. De éste modo solamente construye aquellas rutas que son candidatas a formar una solución o camino desde el inicio hasta el nodo final.

Inteligencia Artificial Algoritmo A* Para poder determinar que rutas son las que tienen mayor probabilidad de llegar al nodo meta, el algoritmo utiliza una heurística basada en la distancia de cualquier punto dado hacía la meta. Donde se diferencia el algoritmo A* de otros algoritmos avaros de “best-first search” es el hecho de que va tomando en cuenta la distancia que ya ha recorrido hasta el momento, haciendo de este modo una respuesta mucho más completa y óptima.

Inteligencia Artificial Algoritmo A* A* es una combinación entre los algoritmos de búsqueda de anchura con algoritmos de profundidad, esto debido a la función que utiliza f(n)= g(n)+h(n), dónde h(n) [que tiende primero a profundidad] representa el valor heurístico del nodo a evaluar y g(n) [que tiende a primero en anchura] representa el costo real del camino recorrido para poder llegar al nodo. Lo anterior lo posibilita a cambiar de camino de búsqueda cuando se encuentra un camino que pareciera ser más óptimo.

Inteligencia Artificial Algoritmo A* Función de Evaluación La forma general de la función de evaluación es: f(n) = g(n) + h(n) donde g(n) es costo de llegar hasta el nodo n desde el nodo de salida s y h(n) es el costo estimado para llegar al nodo meta. Entonces f(n) es el costo estimado total restringido a pasar por el nodo n.

Inteligencia Artificial Algoritmo A* g(n) inicio h(n) destino f(n) = costo estimado de la solución mas barata, pasando por n.

Inteligencia Artificial Algoritmo A* h(n) g(n)

Inteligencia Artificial Algoritmo A* Ventajas Elige el nodo de menor costo, es decir, el camino mas corto. Desventajas El tiempo de cómputo. Espacio de memoria Requiere demasiada informacion

Inteligencia Artificial Algoritmo A* Aplicaciones Trazar Rutas. Los usos que se le pueden dar a éste algoritmo son el de trazar las rutas para llegar de una ciudad a otra, algo como lo que tiene la Secretaría de Comunicaciones y Transportes para trazar la ruta de una ciudad a otra sacando el menor costo y recorrido posible. La aplicación se llama “Traza Tú Ruta”. Es muy popular en la planificacion de rutas y ha sido exitoso en areas como la Robotica en Inteligencia Artificial.

Inteligencia Artificial Algoritmo A* Caracteristicas Informado Completo Heuristico Optimo global Lento Como todo algoritmo de búsqueda en anchura, A* es un algoritmo completo: en caso de existir una solución, siempre dará con ella.

Inteligencia Artificial Algoritmo A* Como funciona? Incorpora la longitud del camino desde la raíz hasta el estado actual en la función de evaluación h. Considera si el estado es bueno Toma en cuenta cómo es el camino usado para alcanzarlo Como todo algoritmo de búsqueda en anchura, A* es un algoritmo completo: en caso de existir una solución, siempre dará con ella.

Inteligencia Artificial Algoritmo A* inicio destino

Inteligencia Artificial Algoritmo A* Estructuras: Lista abierta: contiene los nodos que podrían formar parte del camino (nodos en espera de ser analizados) Lista cerrada: contiene los nodos que ya han sido examinados y que no hace falta volver a examinar.

RUMANIA Distancias entre ciudades

Inteligencia Artificial Algoritmo A* ejemplo: Distancias en linea recta hacia Bucharest Arad 366 Bucharest 0 Craiova 160 Fagaras 178 Oradea 380 Pitesti 98 Rimnicu Vilcea 193 Sibiu 253 Timisoara 329 Zerind 374 6 75 99 140 118 80 97 146 101

Escogemos la menor heuristica 118 es la distancia de Arad a Timisoara y 329 la distancia en linea recta de Timisoara a Bucharest (destino) Arad f(n)=0+366 = 366 75 140 118 Timisoara Sibiu Zerind f(n)=75+374 = 449 f(n)=140+253 = 393 f(n)=118+329 = 447 Escogemos la menor heuristica

Escogemos Rimmicu ya que es el mas cercano al destino Arad f(n)=0+366 = 366 De Arad a Sibiu son 140 + 99 de Sibiu a Fagaras son 239 (g(n)) +178 que es la distancia en linea recta de fagras a Bucharest. Sibiu f(n)=140+253 = 393 99 Arad Oradea Rimnicu Vilcea Fagaras f(n)=280+366 = 646 f(n)=146+380 = 526 f(n)=220+193 = 413 f(n)=239+178 = 417 Escogemos Rimmicu ya que es el mas cercano al destino

Arad Sibiu Rimmicu Vilcea Craiova Pitesti Sibiu f(n)=0+366 = 366 = 393 Rimmicu Vilcea f(n)=220+193 = 413 Craiova Pitesti Sibiu f(n)=317+98 = 415 f(n)=366+160 = 526 f(n)=300+253 = 553

Arad Sibiu Rimmicu Vilcea Pitesti Bucharest f(n)=0+366 = 366 = 393 Rimmicu Vilcea f(n)=220+193 = 413 Pitesti f(n)=317+98 = 415 Bucharest f(n)=418+0 = 418

f(n) = g(n) + h(n) Arad Timisoara Sibiu Zerind Rimnicu Vilcea Fagaras = 366 Timisoara Sibiu Zerind f(n)=140+253 = 393 f(n)=118+329 = 447 f(n)=75+374 = 449 Rimnicu Vilcea Fagaras Arad Oradea f(n)=220+193 = 413 f(n)=280+366 = 646 f(n)=291+380 = 671 f(n)=239+178 = 417 Sibiu Craiova Pitesti f(n)=300+253 = 553 f(n)=366+160 = 526 f(n)=317+98 = 415 Bucharest f(n)=418+0 = 418

Inteligencia Artificial Algoritmo A* Búsqueda limitada por la capacidad de la memoria

Inteligencia Artificial Algoritmo A* Algoritmos diseñados para conservar la memoria:  BUSQUEDA A* por PROFUNDIZACION ITERATIVA (A*PI)  BUSQUEDA A* SRM

Búsqueda A*SRM Emplea toda la capacidad de memoria disponible para efectuar una búsqueda. El empleo de mas memoria permite mejorar la eficiencia en la búsqueda

A*SRM se Caracteriza por:  Hará uso de toda la memoria que pueda disponer En la medida que se lo facilite la memoria, evitara los estados repetidos Es completo si la memoria disponible tienen capacidad suficiente para guardar la ruta solución mas cercana

 Es optima si dispone de suficiente memoria para guardar la ruta de solución optima mas cercana. De lo contrario, produce la mejor solución que sea posible obtener con la memoria disponible Si se dispone de suficiente memoria para todo el árbol de búsqueda, ésta resultara óptimamente eficiente

Ejemplo de A*SRM A B G C D H I E F J K Nodos meta 0+12=12 Valor para c/nodo G+H=F A 10 8 10+5=15 B 8+5=13 G 10 10 20+0=20 8 16 20+5=25 C D 24+0=24 H 16+2=18 I 10 10 8 8 30+5=35 30+0=30 E F 24+0=24 24+5=29 J K

A A A A G B G B H A A A A B G B B G I C D 13(15) 13 12 12 13 15 15 13 4 13(15) 13 A A A A 12 G 12 B G 13 15 B 15 13 H 18 5 6 7 8 A A 15 15(15) 15(24) A A 20(24) 15 24(∞) B G B 20(∞) B G 24 I C 25(∞) D 20 15 24

Inteligencia Artificial Algoritmo A* Realizado por: Roxana Nidia Cisneros Silva Jesus Ambrocio Medina Hernández