grafos y evitar eventos repetitivos inteligencia artifical
TRANSCRIPT
![Page 1: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/1.jpg)
GRAFOS Y EVITAR EVENTOS REPETITIVOS
MATERIA :INTELIGENCIA ARTIFICIAL
![Page 2: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/2.jpg)
GRAFO
Un grafo es un tipo de dato abstracto que representa un conjunto finito N de nodos llamados vértices relacionados entre si por un conjunto R de arco
![Page 3: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/3.jpg)
GRAFO
VERTICES DEL GRAFON:{A,B,C,D,E,F,G}
![Page 4: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/4.jpg)
Grafo no orientado
Es irrelevante el sentido en los arcos El arco que los relacionan aparece una
sola vez en el conjunto de arcos del grafo
![Page 5: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/5.jpg)
GRAFO NO ORIENTADO
![Page 6: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/6.jpg)
GRAFOS TIPO O
En ocasiones es importante realizar la búsqueda sobre un grafo de forma que los caminos duplicados no se exploren.
Tal algoritmo debe realizar la búsqueda en un grafo dirigido donde un nodo representa un punto en el espacio de estados
![Page 7: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/7.jpg)
Cada nodo contiene de además de una descripción de lo que representa en el estado de espacios, una indicación de lo prometedor que es, un enlace paterno que apunta a un mejor nodo desde el que se ha generado el actual y una lista de nodos que se genera a partir de el.
![Page 8: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/8.jpg)
El enlace paterno nos posibilita restablecer el camino hacia el objetivo una ves encontrado.
La lista de sucesores hará posible, si se ha encontrado un camino mejor a un nodo ya existente, propagando la mejora a sus sucesores.
A los grafos de este tipo se les denomina grafos o
![Page 9: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/9.jpg)
Para poder implementar un procedimiento de búsqueda sobre un grafo se necesitan dos listas de nodos:
ABIERTOS CERRADOS
![Page 10: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/10.jpg)
ABIERTOS– nodos que se han generado y a los que se les ha aplicado la función heurística, pero que no han sido examinados.
CERRADOS– nodos que ya se han examinado. Es necesario mantener estos nodos en memoria si lo que se desea es hacer una búsqueda sobre un grafo y no sobre un árbol, debido a que cuando se genera un nuevo nodo, se debe verificar si ese nodo se había generado con anterioridad.
![Page 11: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/11.jpg)
Olvida una rama cuando su coste supera la mejor alternativa.
El coste de la rama olvidada se almacena en el padre como su nuevo coste.
![Page 12: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/12.jpg)
EVITAR EVENTOS REPETITIVOS
Hemos ignorado una de las complicaciones mas importantes sobre el proceso de búsqueda
La posibilidad de perder tiempo expandiendo estados que hayan sido visitados
![Page 13: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/13.jpg)
Ejemplo:
![Page 14: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/14.jpg)
DETECION DE EVENTOS REPETITIVOS Si el algoritmo no detecta los estados
repetidos estos se pueden provocar que un problema resoluble sea irresoluble
Para la búsqueda en profundidad los únicos nodos en memoria son aquellos del camino que esta desde la raíz hasta el nodo actual(esto permite eliminar caminos que forman ciclos)
![Page 15: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/15.jpg)
DETECION DE EVENTOS REPETITIVOS “Los algoritmos que olvidan su historia
están condenados a repetirla.”
![Page 16: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/16.jpg)
¿A QUE SE REFIERE?
Si un algoritmo recuerda cada estado que ha visitado entonces puede verse como la exploración directamente del grafo de espacios de estados.
![Page 17: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/17.jpg)
Continuación…..
Podemos modificar el algoritmo en general para incluir una estructura de datos llamada LISTA CERRADA
![Page 18: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/18.jpg)
LISTA CERRADA La búsqueda en grafos en profundidad
interactiva tiene que comprobar si un camino recién descubierto aun nodo es mejor que el original y si es así podría tener que revisar las profundidades y los costos del camino de los descendentes nodos.
![Page 19: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/19.jpg)
Ejemplo
![Page 20: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/20.jpg)
Ejemplo
![Page 21: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/21.jpg)
PSEUDOCODIGO
![Page 22: Grafos y evitar eventos repetitivos Inteligencia Artifical](https://reader035.vdocuments.mx/reader035/viewer/2022062420/55b34995bb61eb26178b4724/html5/thumbnails/22.jpg)
Código en JAVA