EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

37
Formulación general de solución a problemas de búsqueda en IA Estructura de la solución a problemas de búsqueda Implementación y evaluación de la solución Solución a problemas de búsqueda Estrategias de búsqueda y Estructura de la solución Hugo Franco, PhD Inteligencia Artificial Maestría en Analítica de Datos 26 de marzo de 2022 Hugo Franco, PhD Solución a problemas de búsqueda

Transcript of EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Page 1: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Solución a problemas de búsquedaEstrategias de búsqueda y Estructura de la solución

Hugo Franco, PhD

Inteligencia ArtificialMaestría en Analítica de Datos

26 de marzo de 2022

Hugo Franco, PhD Solución a problemas de búsqueda

Page 2: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Repaso: Especificación de problemas de búsqueda

La especificación formal de un problema de búsqueda consiste en:El estado inicial en el que el agente comienza su ejecución(funcionamiento).Una descripción de las posibles acciones a disposición del agente.

Dado un estado particular s, la función ACCIONES(s) retorna elconjunto de acciones que pueden ser ejecutadas desde s (cada unade esas acciones se dice “aplicable” en s)

Una descripción de lo que cada acción hace (modelo detransiciones), especificaca por la función RESULTADO (s, a) queretorna el estado que resulta de ejecutar la acción a en el estado s.Un estado alcanczable desde s se denomina “sucesor de s”La prueba de objetivo alcanzado, que determina si dado un estadoalcanzado en un momento dado de la ejecución, el objetivo delagente es alcanzadoUna función de costo de camino, que asigna un costo numérico acada camino, el agente solucionador de problemas debe usar unafunción de costo que represente o refleje su propia medida dedesempeño.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 3: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Repaso: Problema del agente viajeroProblema: determinar la mejor ruta que permita al agente visitar todas las

ubicaciones una sola vez y regresar al lugar de partida

Estados: ubicaciones del viajero en cada instante incluyendo la lista deubicaciones previamente visitadas.Estado inicial: punto de partida y llegada del viajeroAcciones: viajar de la ubicación actual a alguna de las ciudades vecinasModelo de transiciones: el siguiente estado después de una evaluaciónactualiza la ubicación “actual” del viajero y la lista de ciudades visitadasPrueba de éxito: evaluar si la ubicación actual del viajero es igual a supunto de partida y la lista de ubicaciones visitadas contiene todas lasdemás ubicaciones (vértices) una única vez.Función de costo: determinada por los pesos de las aristas (costo de lostrayectos)

Hugo Franco, PhD Solución a problemas de búsqueda

Page 4: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Repaso: Formas de representación

En ciertos problemas de búsqueda, elespacio de estados se puede representarcomo un grafo que contiene lascaracterísticas del problema.

Diferentes tipos de recorridos permitenmodelar y dar solución a problemasasociados a rutas y caminos

En otros problemas, la exploración delespacio de estados se puede implementarcomo el proceso de expandir y recorrerun árbol.

Esto es necesario en problemas cuyoespacio de estados no se puederepresentar de forma exhaustiva

Hugo Franco, PhD Solución a problemas de búsqueda

Page 5: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Solución a problemas de búsqueda enIA

Page 6: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Solución a problemas de búsqueda

En general, la solución de problemas de búsqueda consiste enencontrar un camino desde el estado inicial hasta un estadoobjetivo dentro del espacio de estados definido sobre elproblema.

En ocasiones, se debe proveer la mejor solución posible, según lasmedidas de desempeño definidas para el sistema (problema/agente).

De este modo, un agente inteligente diseñado para solucionar unproblema de búsqueda funciona como un agente por guiado porobjetivos.Así, el programa del agente es atómico (el entorno de trabajo semodela como un todo indivisible, asociado al dominio de losalgoritmos de búsqueda).

Hugo Franco, PhD Solución a problemas de búsqueda

Page 7: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Proceso de solución a problemas de búsqueda

1 Definición del objetivo del agente (determinar el espacio deestados y estado solución)

2 Formulación del problema en términos de los estados del sistema(definir las posibles transiciones entre estados y sus restricciones)

3 Elección de un método de solución que permita encontrar unasecuencia adecuada de transiciones para ir del estado inicial a unestado solución.

4 Selección de la mejor solución posible (conjunto de transicionesque conduce del estado inicial al estado objetivo) dentro de lasalternativas a disposición.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 8: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Proceso de solución a problemas de búsqueda I

Definición del objetivo del agente: como primer paso de lasolución se debe establecer un objetivo que describa de maneraconcreta y sin ambigüedades el propósito del agente

Esto es, la solución que el agente perseguirá durante su ejecución.Suele conducir a la determinación del estado de llegada exitosa delproceso de búsqueda ejercido por el agente dentro del espacio deEstados.

Ejemplos

Punto de llegada en un recorrido entre ciudades mediante la red detráfico aéreo.Situación posicional en un juego de tablero según sus reglas en lasque el agente sale vencedor.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 9: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Proceso de solución a problemas de búsqueda II

Formulación del problema: de forma subsiguiente, definir elconjunto de acciones que puede llevar a cabo el agente para alcanzarel estado objetivo

Usualmente, la solución consiste en establecer la secuencia particularde transiciones (preferiblemente óptima) que conduce al estadoobjetivoSe suele generar un recorrido en el espacio de estados del problema(recorrer la estructura de datos que representa al problema mediantetransiciones)Se deben tener en cuenta las restricciones definidas sobre elproblema (agente y su relación con el entorno)

Los entornos de trabajo en este contexto suelen ser determinísticos,completamente observables, conocidos y discretos.

Ejemplo

Mover una pieza de un juego de mesa, tomar un vuelo de una ciudad aotra durante un trayecto.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 10: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Proceso de solución a problemas de búsqueda III

Búsqueda

Proceso de determinación de una secuencia de acciones (transicionesde estados - recorrido de vértices en la representación del espacio deestados) que conduce a un estado objetivo.

Algoritmo de búsqueda y solución

La solución (secuencia de acciones que conduce a alcanzar elobjetivo) corresponde al valor de retorno de un algoritmo debúsqueda

Así pues, el diseño del agente corresponde a la secuencia “formular,buscar, ejecutar” , siendo esta última la tarea de llevar a cabo lasacciones contenidas en la solución.

En problemas de búsqueda, el agente deja de atender suspercepciones para ejecutar la secuencia de acciones correspondientea la solución. Esto se conoce como “sistema de lazo abierto”.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 11: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Proceso de solución a problemas de búsqueda IV

Solución óptima

La solución óptima de un problema de búsqueda consiste en aquellasolución (camino desde el estado inicial hasta el estado objetivo) quetiene el mínimo costo de ruta dentro del conjunto de soluciones posiblesal problema.

Modelado y abstracción

Un modelo es una representación simplificada de la realidadmediante un lenguaje formal (usualmente las matemáticas)

La construcción de la representación de un problema de búsqueda enInteligencia Artificial implica la selección de las características delproblema que describen la situación.El principio de parsimonia indica que el mejor modelo es aquel quegarantiza la mayor simplicidad (menos variables y relaciones) sinperder el rigor de la formulación.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 12: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Estructura de la solución a problemasde búsqueda

Page 13: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Expansión de estados y frontera:

Expansión de estados

Aplicar cada acción válida (arista incidente) al estado actual, generandoun nuevo conjunto de estados.

FronteraConjunto de vértices del árbol disponibles para ser expandidos hasta unpunto dado (iteración) de la exploración del espacio de estados. Son lashojas del árbol hasta donde ha sido construido en el punto de avance delproceso exploración.

Un estado repetido en el espacio de búsqueda conduce a laaparición de circuitos, que elevan la complejidad del algoritmo queimplementa la estrategia de búsqueda, lo que debería evitarse.La estrategia de búsqueda debería evitar rutas redundantes queconducen a soluciones de mayor costo (indeseadas)

Hugo Franco, PhD Solución a problemas de búsqueda

Page 14: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Ejemplo: rutas de tren en España

Considérese el siguiente grafo. Encontrar la ruta de menor costo(distancia, precio, duración) desde Coruña hasta Valencia

Hugo Franco, PhD Solución a problemas de búsqueda

Page 15: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Proceso de búsqueda general (ejemplo)

Hugo Franco, PhD Solución a problemas de búsqueda

Page 16: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Ejemplo: Estado Inicial

El primer vértice corresponde al primer estado evaluado en el proceso debúsqueda de una solución, en este caso el lugar de partida.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 17: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Ejemplo: Después de expandir el primer vértice

Se evalúan los nodos contiguos a la raíz del árbol de búsqueda en elespacio de estados.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 18: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Ejemplo: tras expandir los hijos del nodo raíz.

Se expanden los nodos de la frontera del paso anterior, generando unanueva frontera y avanzando en la exploración del espacio de búsqueda.

“Valladolid” aparece nuevamente en la siguiente evaluación.En problemas que requieren determinar el coste mínimo, debeactualizarse el costo de llegar hasta el nodo repetido si este es menorque aquel previamente calculadoEn problemas que no permiten estados repetidos, la exploración poreste camino debe detenerse

Hugo Franco, PhD Solución a problemas de búsqueda

Page 19: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Búsqueda general (sobre árboles)

El siguiente es un ejemplo de implementación general (abstracta) de unalgoritmo de solución a problemas de búsqueda.

función BUSQUEDA (problema) retorna una solución, o alerta de falloinicializar la frontera usando el estado inicial del problemahacer

si la frontera es vacía entoncesretornar alerta de fallo

escoger un vértice hoja y eliminarlo de la fronterasi el nodo contiene un estado objetivo (solución) entonces

retornar la solución encontrada

expandir el vértice seleccionado, agregando los nodos resultantes a lafrontera

* Nótese que este algoritmo no gestiona los estados repetidos

Hugo Franco, PhD Solución a problemas de búsqueda

Page 20: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Búsqueda con gestión de estados repetidos (árboles y grafos)

Para gestionar los estados repetidos, es necesario llevar un registro (lista)de los estados previamente explorados.

BÚSQUEDA (problema) retorna un estado solución, o alerta de fallo

inicializar la frontera usando el estado inicial del problema,

inicializar la lista de estados explorados a vacíohacer

si la frontera es vacía entoncesreturn alerta de fallo (no encontró la solución)

escoger un vértice hoja y eliminarlo de la fronterasi el vértice contiene un estado objetivo (solución) entonces

retornar la solución encontradaagregar el vértice a la lista de estados exploradosexpandir el vértice, para cada hijo generado:

si su estado no está ya en la frontera ni en la lista de estadosexplorados: agregar el hijo a la fronterade lo contrario, actualizar el costo de la ruta (y el estado padre)si éste es menor al costo previamente asignado

Hugo Franco, PhD Solución a problemas de búsqueda

Page 21: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Receso

Page 22: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Implementación y evaluación de lasolución

Page 23: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Diseño del algoritmo de solución IEstructuras de Datos

De acuerdo con la representación de problemas de búsqueda, la estructurade datos en árbol que permite la implementación de las diferentesestrategias de solución debería contener los siguientes atributos:

AtributosEstado: identificador único del estadorepresentado por el vértice (árbol)Padre: identificador o apuntador alvértice padreAcción: descriptor del tipo de acción quecondujo a la generación del vérticeCosto_Ruta: costo acumulado hasta elestado actual

Hugo Franco, PhD Solución a problemas de búsqueda

Page 24: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Diseño del algoritmo de solución IIEstructura de datos (ejemplo) y acceso

La expansión de nodos permite generar los “hijos” de un vértice a partir de laaplicación de las diferentes transiciones válidas sobre el estado correspondienteal vértice. Los vértices así generados se añadirán a la frontera del problema.

función EXPANDIR_NODO(problema, padre, acción) retorna unvértice

retornar un vértice con:ESTADO = problema.RESULTADO (padre.ESTADO, acción),PADRE= padre,ACCIÓN = acción,COSTO_RUTA= padre.COSTO_RUTA +

problema.COSTO_PASO(padre.ESTADO, acción)

Hugo Franco, PhD Solución a problemas de búsqueda

Page 25: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Diseño del algoritmo de soluciónLista de estados visitados

Dado que es indispensable llevar un registro de los estados visitados hastaun punto dado de la exploración (iteración del algoritmo), se debeimplementar una lista que los contenga, en un orden determinado.

Dicho orden puede ser tipo FIFO, LIFO o lista de prioridad(ordenada según un parámetro de prioridad), de acuerdo con laestrategia de búsqueda empleada.

Esta implementación requiere de las siguientes funciones:Lista_vacía (lista): función booleana cuyo valor de retorno indicasi no hay ningún estado en la lista de visitas.Extraer (vértice, lista): (pop) retorna el primer vértice de la listade visitas y lo elimina de esta.Insertar (vértice, lista): inserta un nuevo vértice en la lista devisitas y retorna la lista completa.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 26: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Evaluación de desempeño

El diseño, evaluación y selección de los algoritmos que solucionanproblemas de búsqueda en espacios de estado asociados a rutasalternativas que conducen a un estado solución debe guiarse por criteriosde desempeño.

Algunos criterios de desempeño de los algoritmos de búsqueda empleadoscomúnmente son:

1 Completitud: ¿Garantiza el algoritmo de búsqueda que seencontrará una solución si esta existe?

2 Optimalidad: ¿La estrategia seleccionada lleva a la soluciónóptima? (esto es, la solución que implica menor costo)

3 Complejidad en tiempo (instrucciones): ¿Cuánto le lleva alalgoritmo encontrar un estado solución?

4 Complejidad en memoria: ¿Cuánta memoria requiere el algoritmopara llevar a cabo la búsqueda de forma exitosa?

Hugo Franco, PhD Solución a problemas de búsqueda

Page 27: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Impacto del tamaño del espacio de estados

El número de instrucciones se estima sobre el número de nodosgenerados durante la búsqueda. La memoria usada se estima comoel máximo número de nodos expandidos en un momento dado de laejecución del algoritmo.

En problemas abstractos, el costo computacional se estima usando eltamaño del grafo del espacio de estados como parámetro .

Equivale a la cardinalidad del conjunto de estados más lacardinalidad del conjunto de transiciones posibles.

En algunos problemas, el tamaño del espacio de estados puede sermuy grande (incluso infinito), luego su representación es implícita yse requiere una estrategia de exploración (basada usualmente enárboles)En problemas con un número de estados acotado, la exploraciónsuele basarse en recorridos de grafos.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 28: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Costo del proceso de búsqueda

Dado lo anterior, se requiere estimar la complejidad en función de variables dela representación del problema, como:

El factor de ramificación (b, número máximo de transiciones desde unestado). Puede dar lugar a la “explosión combinatoria”.

La profundidad de la solución más próxima al estado inicial (d).

La longitud de la ruta más larga dentro del espacio de estados (m,máximo número de transiciones entre dos estados).

La efectividad del método empleado se puede reportar, entonces, comoCosto de búsqueda: calculado a partir de la complejidad en tiempoy en memoria del algoritmo.El costo de la solución: en función del costo asociado a la ruta delestado inicial al estado solución.El costo total: estimado con base en el costo de búsqueda y elcosto de la solución obtenida.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 29: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Métodos de búsqueda en el curso

Page 30: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Tipos de problemas de búsqueda en este curso

Búsqueda no-informada: la solución no incorpora conocimiento previo sobre lasolución. Algoritmos: BFS, Costo uniforme, DFS (profundización iterativa,profundidad limitada), bidireccional.

Ej.: Determinación de rutas mínimas, navegación sobre espacios continuos.

Búsqueda informada: se incorpora conocimiento sobre soluciones previas oestrategias. Algoritmos: voraces, A*

Ej.: uso de heurísticas (puzzle de 8 casillas, planeación de rutas)

Búsqueda adversaria: entorno con múltiples agentes compitiendo por alcanzarun estado objetivo/solución. Algoritmo: Minimax .

Ej.: jugadores automáticos de juegos por turnos (ajedrez, damas, go)

Búsqueda local: el propósito del sistema/agente consiste en la determinación deun estado solución sin importar la ruta. Algoritmos: voraces, programacióndinámica

Ej:. optimización de funciones continuas (minimización de funciones deerror), optimización combinatoria.

Búsqueda con restricciones: satisfacción restricciones definidas sobre lasolución buscada. Algoritmos: backtracking cronológico...

Ej: Criptografía, planeación flexible, ubicación espacial de recursos,solución automática de crucigramas, sudokus, etc.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 31: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Métodos de búsqueda no informada

La búsqueda no informada consiste en la selección e implementación de estrategias debúsqueda de un estado solución a partir de un estado inicial sin introducir al algoritmode solución conocimiento sobre el impacto de las transiciones en la exploración delespacio de estados. Algunos métodos son:

Método Implementación

Búsqueda en anchura Usando los métodos de recorrido de árboles por niveles

Búsqueda de costo uniforme Similar a los algoritmos de costo mínimo en grafos, pero fijándose solo en el nodo

de origen y el nodo de destino

Búsqueda en profundidad Usando los métodos de recorrido de árboles en profundidad, p.ej. el algoritmo

pre-orden

Búsqueda en profundidad

limitada

Con base en la búsqueda en profundidad, se establece un nivel máximo de explo-

ración

Búsqueda en profundidad con

profundización iterativa

Se itera sobre la búsqueda en profundidad limitada, incrementando el nivel máximo

en cada iteración

Búsqueda bidireccional Usa un método de recorrido por niveles desde el nodo origen en paralelo con el

mismo método desde el nodo destino, finalizando cuando encuentra intersección

Hugo Franco, PhD Solución a problemas de búsqueda

Page 32: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Métodos de búsqueda informada

La búsqueda informada se fundamenta en la incorporación de conocimiento sobre lasolución del problema externo a las reglas de transición (es decir, una estrategia) enpara priorizar unas rutas de exploración del espacio de estados sobre otras, agilizando,de ser posible, la llegada al estado objetivo. El conocimiento se modela como unafunción heurística que puede o no ser parte de una función de costo. Ejemplos:

Método Implementación

Heurístico

puro

Los nodos se expanden de acuerdo al valor de una función heurística, agregando

el nodo que se expandirá una lísta de “ABIERTOS”. Los nodos explorados que

no son solución se agregan a una lista “CERRADOS”

Búsqueda

Primero el

Mejor

Algoritmo voraz que genera toda la exploración de una rama del árbol de explora-

ción del espacio de estados, tomando siempre el camino del nodo que represente

el estado co menor valor de la función heurística

Búsqueda A* Algoritmo de coste mínimo en árboles, usa una función de costo que suma a la

función heurística el costo real que implica ir del estado inicial del problema al

estado que se está evaluando en cada paso de la exploración

Búsqueda A*

en grafos

Adaptación del método A* para desarrollar la búsqueda del estado objetivo en

espacios de estados ques e pueden representar como grafos

Hugo Franco, PhD Solución a problemas de búsqueda

Page 33: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Métodos de búsqueda local

Los métodos de búsqueda local usan solo un estado (actual) que usualmente se“mueve” hacia uno de sus vecinos en el proceso de búsqueda del estado solución.El estado solución suele ser desconocido (en los valores de sus atributos)

Tienen baja complejidad en memoria

Pueden encontrar soluciones razonables en espacios de estados muy grandes o denaturaleza continua

Hugo Franco, PhD Solución a problemas de búsqueda

Page 34: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Métodos de búsqueda adversaria

En problemas multiagente competitivos(p.ej. juegos), usualmente basados enturnos, se emplean algoritmos querepresentan la búsqueda de ventaja delagente autónomo en contraposición con labúsqueda de ventaja del adversario(“oponente”). El algoritmo minimax es delos más conocidos en este contexto, aunquerequiere optimizaciones (podas).

Los triángulos hacia arriba representanal jugador “MAX” (automático)

Los triángulos abajo representan aljugador “MIN” (oponente). Losvalores terminales (p.ej., victoria deuno u otro jugador) permiten calcularlos valores asociados a las jugadasprevias dentro del árbol de exploracióndel espacio de estados

Hugo Franco, PhD Solución a problemas de búsqueda

Page 35: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Problemas de Satisfacción de Restricciones

Las técnicas y métodos para abordarProblemas de Satisfacción deRestricciones establecen unarepresentación del problema en funciónde restricciones que deben cumplir lasvariables que describen el problema (elprograma del agente y los estados noson atómicos)

Una solución a un problema desatisfacción de restricciones consisteen un conjunto valores que tomandichas variables, si cumplen con lasrestricciones establecidas.

Hugo Franco, PhD Solución a problemas de búsqueda

Page 36: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Evaluación del curso

Page 37: EstrategiasdebúsquedayEstructuradelasolución HugoFranco,PhD

Formulación general de solución a problemas de búsqueda en IAEstructura de la solución a problemas de búsqueda

Implementación y evaluación de la solución

Evaluación del curso

1 Exámenes:1 1er examen: problemas de búsqueda2 2do examen: aprendizaje automático

2 Entregas del proyecto:1 1era entrega: 26 de marzo de 20222 2nda entrega: 30 de abril3 Entrega final: última semana del semestre

3 Talleres:1 Entrega 10 días después de su formulación

Hugo Franco, PhD Solución a problemas de búsqueda