Está en la página 1de 20

Tema 08:

Introducción a los términos de


búsqueda
¿Qué SON?
1 Introducción Una serie de esquemas de representación del
conocimiento, que a través de diversos
algoritmos nos permite resolver ciertos
Las técnicas de búsqueda en la IA se refieren problemas desde el punto de vista de la IA.
fundamentalmente a las técnicas que solemos
usar en dominios como la deducción , elaboración
de planes de actuación , razonamientos de
sentido común , prueba automática de teoremas ,
etc. Como por ejemplo hay programas que tratan
de entender el lenguaje natural , otros programan
sintetizan un conjunto de reglas de clasificación o
sistemas que realizan inferencias , para todos
estos sistemas inteligentes se usa la lógica de los
dominios mencionados ( deducción , planes de
actuación , razonamientos lógicos , etc.) solo que
son puestos en practica en estos sistemas
inteligentes.
1 Tipos de estrategias de búsqueda

Las estrategias de búsqueda se pueden agrupar en dos grandes grupos:

 Búsquedas sin contar con información (o búsqueda ciega): no existe información


acerca de la cantidad de pasos necesarios o sobre el costo de ruta para pasar del estado de
un momento dado a la meta.

 Búsqueda respaldada con información (o búsqueda heurística): se posee información


muy valiosa para orientar la búsqueda para que sea mas óptima.
Algunos ejemplos
Estos ejemplos son de tipo NP-duros, es decir problemas para los
que no se conoce un algoritmo polinomial que las resuelva y que
además , dada una solución , no es posible verificar el tiempo
polinomial que se trata de una solución optima.

1. Generación de planes de actuación de robots


2. Problemas de rutas optimas en grafos
3. Juegos con contrincante
Generación de planes de actuación de robots
La investigación sobre resolución de problemas de robots ha dado lugar a
muchas técnicas de resolución de problemas generales que se usan en
IA. El planteamiento típico de uno de estos problemas consta de un robot
que tiene un repertorio finito de acciones que puede ejecutar y de un
entorno de actuación. La situación mas paradigmática es la del “mundo de
bloques”. En este caso se dispone de unos cuantos bloques distinguibles
unos de otros situados sobre una mesa y un brazo móvil (el robot) capaz
de cambiarlos de sitio; se supone, además, que el robot es capaz de
localizar a estos bloques con el objetivo de realizar alguna tarea con ellos.
Programar un robot consiste en integrar varias funciones, entre las que se
incluye:

• Percepción del entorno que le rodea,


• La formulación de planes de actuación
• El seguimiento de esos planes.
Para ello el primer paso es disponer de un modelo del entorno que permita representar lo relevante de
todas las situaciones que se puedan producir. Supóngase que el entorno está formado por tres bloques
A, B y C, inicialmente situados en el suelo, y que el objetivo es llegar a una situación en la que los
tres bloques estén formando una pila de modo que el bloque C esté en el suelo, el bloque B sobre C y
el bloque A sobre B, tal y como se muestra.
El modelo del entorno debe permitir representar lo relevante de éstas, y otras, situaciones. En
este caso lo relevante es el hecho de que un bloque esté sobre otro o sobre el suelo y que un
bloque tenga a no otro bloque encima; sin embargo, la posición concreta del suelo en la que está
un bloque no se considera relevante. Esto es así porque se supone que el sistema de percepción
del robot le permite identificar distintas configuraciones de los bloques con independencia del
lugar que ocupen respecto al suelo. De este modo, un modelo basado en listas permitirá
representar los estados anteriores como ((A)(B)(C)) y ((A B C)) respectivamente. Se supone
también que el robot es capaz de mover cualquier bloque, x, que no tiene otro bloque sobre él, a
otra posición, el suelo o bien otro bloque y que tampoco tiene un bloque sobre él.
Este problema permite entender cómo son dos de los elementos esenciales de un sistema de
búsqueda: la representación de los estados y la representación de los operadores o reglas de
producción. Los estados modelan las situaciones del entorno de actuación del agente, y las reglas
modelan las acciones elementales del agente sobre el entorno. Generalmente, las reglas tienen
asociado un coste, o, en ocasiones, un beneficio. En este caso, lo natural es interpretar que cada
regla tiene asociado un coste debido al movimiento de un bloque. La interpretación concreta del
coste depende de la función objetivo que se trata de minimizar. Dado que en este caso se trata de
minimizar el número de movimientos, lo natural es asignar a todas las reglas un coste igual a 1.
La descripción precisa de los estados y de las reglas, con sus costes, define el espacio de
búsqueda. En el ejemplo del robot en un mundo de bloques, este espacio tiene forma de grafo
dirigido simple. En particular, este grafo tiene ciclos y dado un par de nodos puede haber varios
caminos entre ellos con distinta longitud. Una vez que se tiene definido el espacio de búsqueda, el
paso siguiente es definir la tercera de las componentes principales de un sistema de búsqueda: la
estrategia de control o algoritmo de búsqueda. La estrategia de control indica el orden en el que se
van a visitar los nodos a partir del nodo inicial para llegar a un nodo objetivo. Como es natural la
estrategia de control es el elemento más importante desde el punto de vista de la IA. Una
buena estrategia de control debe permitir llegar a una solución sin necesidad de visitar todos, o casi
todos, los nodos del espacio de búsqueda.
Problemas de rutas optimas en grafos
La teoría de grafos presenta algunos ejemplos típicos de búsquedas. El más sencillo consiste en encontrar el camino más
nodos dados suponiendo que cada arco, o cada eje, tiene asociado un coste o longitud.
El problema es, por supuesto, encontrar una estrategia de control adecuada. El objetivo de una buena estrategia de contro
una solución, óptima si es posible y si no semióptima, sin necesidad de visitar un número muy grande de nodos.

Los arcos representan las transiciones con


sus costes

Representan estados o situaciones por las


que podemos pasar
Otro problema famoso de búsqueda en grafos es el problema
del viajante de comercio conocido también como el TSP
(Traveling Salesman Problem). En este problema, dado un
grafo que representa a un conjunto de ciudades y sus
conexiones, se trata de buscar la ruta que debe seguir un
viajante para visitarlas todas y volver a la ciudad de partida
con el menor coste posible. En este caso, no hay que confundir
el grafo que representa los datos del problema, con el grafo
que representa el espacio de búsqueda. Los nodos de este
espacio vendrán definidos por secuencias de ciudades
visitadas en un momento dado y las reglas representarán
enlaces con las ciudades a ser visitadas posteriormente.
Juegos de Contrincante
En los juegos de dos contrincantes, como las damas,
el ajedrez, el tres en raya, etc., cada jugador realiza
una búsqueda entre todas las jugadas que puede
hacer en cada instante de tal forma que la situación
resultante de la jugada le sea lo más favorable
posible. En este caso las reglas del juego marcan las
posibilidades de acción y el objetivo es
conceptualmente sencillo: alcanzar una situación de
victoria. En este tipo de búsquedas hay, en principio,
una diferencia sustancial con respecto a los
problemas que se han considerado en las secciones
anteriores: el agente sólo tiene el control de forma
alterna ya que el contrincante también juega.
Con este planteamiento, existen sistemas de búsqueda específicos para estos problemas basados en algoritmos
como el método MinMax y el procedimiento de poda α−β Con estos algoritmos, el espacio de búsqueda tiene
el aspecto que se muestran. Se trata de un árbol en el que los dos jugadores, A y B, tienen el control de forma
alterna.

En principio se puede tratar de encontrar lo que se


denomina una estrategia ganadora que viene definida
por un subárbol tal que para cada nodo en el que
mueve A incluye un único sucesor en el que mueve B,
para cada nodo en el que mueve B incluye todos sus
sucesores, y así hasta llegar a nodos que representen
situaciones de victoria para A, o al menos tablas. Como
es de esperar, en juegos como las damas o el ajedrez, el
tamaño del espacio de búsqueda, y también de una
estrategia ganadora, viene dado por cifras astronómicas
(del orden 10120) por lo que una búsqueda exacta es
inabordable.
FORMULACIÓN DE PROBLEMAS DE BÚSQUEDA

En esta sección se resumen los elementos más


importantes que deben ser considerados en el
diseño de un sistema de búsqueda en espacios
de estados para resolver un determinado
problema.

Los componentes principales de un sistema


de búsqueda son tres: los estados, las reglas
u operadores y la estrategia de control.
FORMULACIÓN DE PROBLEMAS DE BÚSQUEDA

los estados son representaciones que contienen el conjunto de toda la información que
LOS ESTADOS: describe la situación del sistema en un momento determinado, se puede pensar como
una foto del instante que uno quiere describir de esta manera

El conjunto de estados representa todas las situaciones por las que el agente puede eventualmente pasar durante la
solución del problema

Los estados del problema se puede considerar como el dominio que contiene todos los
EL CONJUNTO posibles estados del sistema este conjunto puede ser finito cuando se pueden conocer
DE ESPACIOS todos los estados posibles o puede ser infinito si no es posible enumerar todos los
DE ESTADOS estados posibles, a su vez dentro de este conjunto de estados posibles encontramos el
DEL SISTEMA estado inicial que describe la situación actual originaria del problema el conjunto de
estados objetivos o finales que es donde se pueden encontrar las distintas soluciones y
los estados intermedios que son aquellos estados por los que uno transita en pos de
encontrar la solución
FORMULACIÓN DE PROBLEMAS DE BÚSQUEDA

LAS REGLAS U Un operador es una expresión que permite acotar o extender una búsqueda de
LOS información, utilizando una combinación de palabras clave conectadas con uno o
OPERADORES más de estos operadores.

Un operador o regla vincula dos estados posibles un estado origen o padre con un estado destino

Definen el espacio de búsqueda que, en el paradigma de búsqueda en espacios de


CONJUNTO DE estados, tiene forma de grafo dirigido simple.
ESTADOS Y
OPERADORES En general, hay varios nodos del espacio de búsqueda que representan
soluciones del problema; estos son los objetivos.
FORMULACIÓN DE PROBLEMAS DE BÚSQUEDA

hoy podemos representar un problema en este ejemplo a través


de un árbol donde tenemos un estado inicial “A”

un conjunto de estados intermedios “B”, “C”, “D”, “E”, “F”, “G”,”


H”,” I”, “K” y “L” y un conjunto de estado solución que en este
caso están marcados con color verde “J” y “M” las distintas
transiciones implican el armado de este árbol.

Podemos destacar las siguientes de “A” hacia “B” en este caso de


“A” hacia “C” de “A” hacia “D” y de “B” a “F” de “C” a “G” de
“D” a “L” de “D” a”H” de “E” a “I” y de “D” a “J” siendo J nodo
solución de “J” a “K” de “G” a “L” y finalmente del estado “L” al
estado “M” que también es un nodo solución
FORMULACIÓN DE PROBLEMAS DE BÚSQUEDA

ESTRATEGIA DE Es la responsable de decidir el orden en el que se van explorando los estados, o lo que
es igual, el orden en el que se va considerando la aplicación de los operadores.
CONTROL

La estrategia de control es el conjunto de técnicas que nos permiten elegir las distintas reglas o estados a través de los distintos métodos
de búsqueda.
Una estrategia de control inteligente, o bien informada, debería llevar, con una alta probabilidad, a explorar primero aquellos nodos que
están en el mejor camino hacia una solución óptima.
FORMULACIÓN DE PROBLEMAS DE BÚSQUEDA
LA ESTRUCTURA
DE CONTROL
INTERNAMENTE

Cómo funciona la estructura de control internamente a partir de un


estado de entrada se analiza en el conjunto de reglas aplicables en el
primer caso que es que no existan reglas posibles aplicar el estado
salida quedaría idéntico al estado entrada sin haber modificado y por
no haber aplicado ninguna transición una segunda opción que es en
el caso que exista una única regla aplicar esa misma regla es
detectada se aplica y el estado o salida va a ser el resultado de la
aplicación de la regla sin embargo la tercera opción o la opción más
interesante más completa en la que la estructura de control tiene
más tareas para hacer es en el caso que existan dos o más reglas en
este caso existe un estado anterior aplicar la regla que es la selección
de la regla aplicar a partir de haber seleccionado la regla a aplicar se
aplica a la misma y se obtiene el nuevo estado salida de haber
aplicado la estructura de control.
FORMULACIÓN DE PROBLEMAS DE BÚSQUEDA

LA IA ADECUADAS PARA El resto de este capítulo se dedica al estudio de los


métodos de búsqueda a ciegas y algunas de sus
PROBLEMAS ESPECÍFICOS. propiedades principales

por ejemplo la cantidad de recursos computacionales que requieren y sus propiedades de completitud y admisibilidad, que se definen del
siguiente modo.

 Un algoritmo de búsqueda es completo si siempre encuentra solución, en el caso de que exista alguna.
 Un algoritmo de búsqueda es admisible, o exacto, si siempre encuentra una solución óptima.
METODOS DE BUSQUEDA SIN INFORMACION

Son métodos que realizan un recorrido del espacio de búsqueda de una forma sistemática, pero sin tener en cuenta ningún tipo de
información sobre el dominio del problema que se está resolviendo.

En la descripción de los algoritmos se utilizará una notación


y un nivel de detalle, en las operaciones y estructuras de
datos, que facilite la implementación de los mismos.

 En principio los algoritmos serán iterativos.


 Las estructuras de datos y operaciones
principales serán las que se indican a
continuación.

También podría gustarte