sábado, 7 de febrero de 2015

Introducción a Prolog

INTRODUCCIÓN.

Se define que es el conocimiento en la inteligencia artificial de cómo está compuesto un sistema de inteligencia artificial para asi tener una idea de cómo resuelve los problemas la inteligencia artificial.

MARCO TEÓRICO
Que es el conocimiento?
Conocimiento:
  v  La parte fundamental de cualquier sistema que utiliza Inteligencia Artificial es el Conocimiento.
  v  Los sistemas con Inteligencia Artificial adquieren el conocimiento a partir de la Educación o de la experiencia. La computadora obtiene el conocimiento, de forma general, a partir de uno o varios expertos humanos en determinada rama del saber.
  v  El conocimiento está formado por hechos, conceptos, teorías, relaciones y prcedimientos. Es información que ha sido organizada y analizada para ser formalizada para su utilización en la solución de problemas y en la toma de decisiones.
  v  El proceso de obtención del conocimiento para ser utilizado en sistemas inteligentes, es conocido como ciencia del conocimiento, es un proceso sumamente complicado y de gran repercusión en el resultado final del sistema.
  v  El conocimiento obtenido, queda expresado formalmente en Modelos de Representación del Conocimiento. Cada modelo tiene un uso específico según el tipo de problema que se quiere representar.
PARTES DE UN SISTEMA DE INTELIGENCIA ARTIFICIAL
  v  La Base de Conocimiento está formada por Hechos y Relaciones.
  v  La Máquina de Inferencias tiene los procedimientos y reglas para trabajar con la base del conocimiento.

  v  A partir de la creación de la Base de Conocimiento, la computadora está en condiciones de utilizar las técnicas de Inteligencia Artificial para pensar y razonar
LA INTELIGENCIA ARTIFICIAL vs. LA COMPUTACION TRADICIONAL
  v  En un programa convencional se le dice a la computadora cómo resolver el problema.
  
  v  En un programa de Inteligencia Artificial se le dice a la computadora qué problema resolver.
CRITERIOS PARA EL ÉXITO
Criterios para el éxito en una aplicación de inteligencia artificial
     -       Debe existir una tarea bien definida.
     -       Debe existir un procedimiento ya instrumentado que ejecute la tarea.
     -       Debe existir un conjunto de regularidades y restricciones identificables a partir de las cuales el procedimiento instrumentado se pueda ejecutar.
Preguntas adicionales para el éxito
.¿Resuelve la aplicación un problema real?.
.¿Crea la aplicación una nueva oportunidad?.
Lenguajes de programación de la I.A
LISP
El lenguaje LISP (LISt Processing) se considera el lenguaje declarativo más antiguo, fue diseñado por John McCarthy en el Massachusetts Institute of Technology (MIT) alrededor del año 1960.
El lenguaje LISP en su forma pura es netamente un lenguaje aplicativo, la única estructura de control es la aplicación de funciones a argumentos; y un programa LISP no es más que una expresión construida a partir de la aplicación de funciones.
El LISP es el segundo entre los lenguajes de programación más viejos y con un empleo extenso actualmente, el primero es el lenguaje FORTRAN.
LENGUAJES DE PROGRAMACIÓN: PROLOG
El lenguaje Prolog (acronismo de PROgramación LÓGica) se creó en la década del 70 por Alain Colmerouer y sus colaboradores de la Facultad de Ciencias en Marsella, Francia.
Esta idea en el diseño del lenguaje le da la capacidad de hacer que una computadora simule el proceso del pensamiento haciendo deducciones a partir de información dada en forma lógica.
Prolog utiliza árboles como su estructura básica. En un programa Prolog cada árbol es un hecho o un átomo de conocimiento y la naturaleza bidimensional de los árboles contribuye a la potencia de expresión del lenguaje.
Definición sintáctica simple
Un programa Prolog es un conjunto de cláusulas que declaran, en forma lógica, el conocimiento sobre un determinado problema. Estas cláusulas se definen como hechos (elementos que se dan por verdaderos) y reglas que expresan las condiciones que se tienen que cumplir para probar un determinado objetivo.
CONCLUSIÓN.

La promoción en prolog trata de darnos una idea de cómo se resuelven los problemas de la inteligencia artificial lo cual hay q tener una buena base del conocimiento como también las reglas para una buena resolución.

Búsqueda Local en Espacios Continuos y Búsqueda online y Ambientes Desconocidos

INTRODUCCIÓN.

Se trata de entender de como el agente hace una búsqueda en espacio continuo o una búsqueda online por lo que esta búsqueda solo se basa en lo que está pasando en ese estado para tomar de nuevo otra acción.

MARCO TEÓRICO
Búsqueda local en espacios continuos.
Aun ninguno de los algoritmos descritos puede manejar espacios de estados continuos, la función sucesor en la mayor parte de casos devuelve infinitamente muchos estados! la técnicas de búsqueda local para encontrar soluciones optimas en espacios continuos.
Un modo de evitar problemas continuos es simplemente discretizar la vecindad de cada estado. Podemos aplicar entonces cualquiera de los algoritmos de búsqueda local descritos anteriormente. Uno puede aplicar también la ascensión de colinas estocástica y el temple simulado directamente, sin discretizar el espacio. Estos algoritmos eligen a los sucesores aleatoriamente, que pueden hacerse por la generación de vectores aleatorios de longitud.
Los métodos locales de búsqueda sufren de máximos locales, crestas, y mesetas tanto en espacios de estados continuos como en espacios discretos. Se pueden utilizar el reinicio aleatorio y el temple simulado y son a menudo provechosos. Los espacios continuos dimensionalmente altos son, sin embargo, lugares grandes en los que es fácil perderse.
Un problema de optimización está restringido si las soluciones debieran satisfacer algunas restricciones sobre los valores de cada variable. La dificultad de los problemas de optimización con restricciones depende de la naturaleza de las restricciones y la función objetivo. La categoría más conocida es la de los problemas de programación lineal en los cuales las restricciones deben ser desigualdades lineales formando una región convexa y la función objetiva es también lineal. Los problemas de programación lineal pueden resolverse en tiempo polinomial en el número de variables. También se han estudiado problemas con tipos diferentes de restricciones y funciones objetivo (programación cuadrática, programación
cónica de segundo orden, etcetera).
Agentes de búsqueda online y ambientes desconocidos
Un agente de búsqueda en línea (online) funciona intercalando el cálculo y la acción: primero toma una acción, entonces observa el entorno y calcula la siguiente acción. La búsqueda online es una buena idea en dominios dinámicos o semidinamicos (dominios donde hay una penalización por holgazanear y por utilizar demasiado tiempo para calcular). La búsqueda online es una idea incluso mejor para dominios estocásticos. En general, una búsqueda offline debería presentar un plan de contingencia exponencialmente grande que considere todos los acontecimientos posibles, mientras que una búsqueda online necesita solo considerar lo que realmente pasa.
La búsqueda online es una idea necesaria para un problema de exploración, donde los estados y las acciones son desconocidos por el agente; un agente en este estado de ignorancia debe usar sus acciones como experimentos para determinar que hacer después, y a partir de ahí debe intercalar el cálculo y la acción.
CONCLUSIÓN.

Estas búsquedas solo consideran lo que realmente pasa en ese estado y después tomar nuevas acciones ya que en otras busque necesitan tener una visión general del problema para así poder realizar una acción.
BIBLIOGRAFÍA


Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE MODERNO. PEARSON EDUCACION. 2 ed. Madrid.

Algoritmos de Búsqueda Local y Problemas de Optimización

INTRODUCCIÓN.

En esta clase nos dimos cuenta que este algoritmo de búsqueda local es muy eficiente ya que esta usa poca memoria a comparación de otros algoritmos y así de esa manera encuentran la solución de manera rápida, es decir usa una cantidad constante de memoria y encuentra soluciones en estados grandes.


MARCO TEÓRICO

Algoritmos de búsqueda local y problemas de optimización

Los algoritmos de búsqueda local funcionan con un solo estado actual (más que múltiples caminos) y generalmente se mueve solo a los vecinos del estado. Típicamente, los caminos seguidos por la búsqueda no se retienen. Aunque los algoritmos de búsqueda local no son sistemáticos, tienen dos ventajas claves: usan muy poca memoria (por lo general una cantidad constante) y pueden encontrar a menudo soluciones razonables en espacios de estados grandes o infinitos (continuos) para los cuales son inadecuados los algoritmos sistemáticos.

Además de encontrar los objetivos, los algoritmos de búsqueda local son útiles para resolver problemas de optimización puros, en los cuales el objetivo es encontrar el mejor estado según una función objetivo Muchos problemas de optimización no encajan en el modelo <estándar> de búsqueda.

Para entender la búsqueda local, encontraremos muy útil considerar la forma o el paisaje del espacio de estados. El paisaje tiene <posición> (definido por el estado) y <elevación> (definido por el valor de la función de coste heurística o función objetivo). Si la elevación corresponde al costo, entonces el objetivo es encontrar el valle más bajo (un mínimo global); si la elevación corresponde a una función objetivo, entonces el objetivo es encontrar el pico más alto (un máximo global) (Puedes convertir uno en el otro solamente al insertar un signo menos.) Los algoritmos de búsqueda local exploran este paisaje. Un algoritmo de búsqueda local completo siempre encuentra un objetivo si existe; un algoritmo optimo siempre encuentran un mínimo/máximo global.


Búsqueda de Ascensión de Colinas

El algoritmo de búsqueda de ascensión de colinas es simplemente un bucle que continuamente se mueve en dirección del valor creciente, es decir cuesta arriba. Termina cuando alcanza <un pico> en donde ningún vecino tiene un valor más alto. El algoritmo no mantiene un árbol de búsqueda, sino una estructura de datos del nodo actual que necesita solo el registro del estado y su valor de función objetivo. La ascensión de colinas no mira delante más allá de los vecinos inmediatos del estado actual.

A veces a la ascensión de colinas se le llama búsqueda local voraz porque toma un estado vecino bueno sin pensar hacia donde ir después. Aunque la avaricia sea considerada uno de los siete pecados mortales, resulta que los algoritmos avaros a menudo funcionan bastante bien. La ascensión de colinas a menudo hace el progreso muy rápido hacia una solución, porque es por lo general bastante fácil mejorar un estado malo. Lamentablemente, la ascensión de colinas a menudo se atasca por los motivos siguientes:


  •    Máximo local: un máximo local es un pico que es más alto que cada uno de sus estados vecinos, pero más abajo que el máximo global. Los algoritmos de ascensión de colinas que alcanzan la vecindad de un máximo local irán hacia el pico, pero entonces se atascaran y no podrán ir a ninguna otra parte.
  •    Crestas: las crestas causan una secuencia de máximos locales que hace muy difícil la navegación para los algoritmos avaros.
  •    Meseta una meseta es un área del paisaje del espacio de estados donde la función de evaluación es plana. Puede ser un máximo local plano, del que no existe ninguna salida ascendente, o una tarraza por la que se pueda avanzar. Una búsqueda de ascensión de colinas podría ser incapaz de encontrar su camino en la meseta.

El éxito de la ascensión de colinas depende muchísimo de la forma del paisaje del espacio de estados: si hay pocos máximos locales y mesetas, la ascensión de colinas con reinicio aleatorio encontrara una solución buena muy rápidamente.

Búsqueda de Temple Simulado.

Un algoritmo de ascensión de colinas que nunca hace movimientos <cuesta abajo> hacia estados con un valor inferior (o coste más alto) garantiza ser incompleto, porque puede estancarse en un máximo local. En contraste, un camino puramente aleatorio, es decir moviéndose a un sucesor elegido uniformemente aleatorio de un conjunto de sucesores, es completo, pero sumamente ineficaz. Por lo tanto, parece razonable intentar combinar la ascensión de colinas con un camino aleatorio de algún modo que produzca tanta eficacia como completitud.

El bucle interno del algoritmo del temple simulado es bastante similar a la ascensión de colinas. En vez de escoger el mejor movimiento, sin embargo, escoge un movimiento aleatorio. Si el movimiento mejora la situación, es siempre aceptado. Por otra parte, el algoritmo acepta el movimiento con una probabilidad menor que uno. La probabilidad se disminuye exponencialmente con la <maldad> de movimiento (la cantidad ΔE por la que se empeora la evaluación). La probabilidad también disminuye cuando <la temperatura> T baja: los <malos> movimientos son más probables al comienzo cuando la temperatura es alta, y se hacen más improbables cuando T disminuye. Uno puede demostrar que si el esquema disminuye Tbastante despacio, el algoritmo encontrara un óptimo global con probabilidad cerca de uno.

Búsqueda por Haz Local

Guardar solamente un nodo en la memoria podría parecer una reacción extrema para el problema de limitaciones de memoria. El algoritmo^10 de búsqueda por haz local guarda la pista de K estados (no solo uno). Comienza con estados generados aleatoriamente. En cada paso, se generan todos los sucesores de los K estados. Si alguno es un objetivo, paramos el algoritmo. Por otra parte, se seleccionan los K mejores sucesores de la lista completa y repetimos.

A primera vista, una búsqueda por haz local con K estados podría parecerse a ejecutar K reinicios aleatorios en paralelo en vez de en secuencia. De hecho, los dos algoritmos son bastantes diferentes. En una búsqueda de reinicio aleatorio, cada proceso de búsqueda se ejecuta independientemente de los demás. En una búsqueda por haz local la información útil es pasada entre los k hilos paralelos de búsqueda. Por ejemplo, si un estado genera varios sucesores buenos y los otros K-1 estados generan sucesores malos, entonces el efecto es que el primer estado dice a los demás, <Venid aquí, la hierba es más verde!> El algoritmo rápidamente abandona las búsquedas infructuosas y mueve sus recursos a donde se hace la mayor parte del progreso.

Algoritmos Genéticos

Un algoritmo genético (o AG) es una variante de la búsqueda de haz estocástica en la que los estados sucesores se generan combinando dos estados padres, más que modificar un solo estado. La analogía a la selección natural es la misma que con la búsqueda de haz estocástica, excepto que ahora tratamos con reproducción sexual más que con la reproducción asexual.

Como en la búsqueda de haz, los AGs comienzan con un conjunto de K estados generados aleatoriamente, llamados población Cada estado, o individuo está representado como una cadena sobre un alfabeto finito (el más común, una cadenas de 0s y 1s).


CONCLUSIÓN.

No usa mucha memoria a diferencias de los otros métodos, los métodos de  búsqueda local manteniendo sólo un número pequeño de nodos en menoría. Los algoritmos de búsqueda local Iniciar con una solución inicial generada aleatoriamente, o hallada con algún otro algoritmo.

BIBLIOGRAFÍA


Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE MODERNO. PEARSON EDUCACION. 2 ed. Madrid.

Funciones Heurística

INTRODUCCIÓN.

La búsqueda heurística dispone de alguna información sobre la proximidad del estado objetivo, por lo que explorar los lugares más prometedores en encontrar el estado objetivo.


MARCO TEÓRICO

FUNCIONES HEURÍSTICA

El efecto de la precisión heurística en el rendimiento

Una manera de caracterizar la calidad de una heurística es el b* factor de ramificación eficaz. Si el número total de nodos generados por A* para un problema particular es N, y la profundidad de la solución es d. entonces b* es factor de ramificación que un árbol uniforme de profundidad d deberá tener para  contener N + 1 nodos. Así,

N+1=1+b*+ (b*)^2+……….. (b*)^d

Por lo tanto, las  medidas experimentales de b* sobre un pequeño conjunto de problemas pueden proporcionar una buena guía para la utilidad total de la heurística. Una heurística bien diseñada tendría un valor de b cerca de 1, permitiría resolver problemas bastante grandes.

Aprendizaje de heurísticas desde la experiencia

Una función heurística h(n), como se supone, estima el costo de una solución que comienza desde el estado en el nodo n. Los métodos de aprendizaje inductivos trabajan mejor cuando se les suministrar características de un estado que sean relevante para su evaluación, más que sólo la descripción del estado.

A partir de esto, se puede utilizar un algoritmo de aprendizaje inductivo para construir una función h(n) que pueda predecir los costos solución para otros estados que surjan durante la búsqueda. Las técnicas para hacer esto, está basado en la  utilización de  redes neuronales, árboles de decisión. Y otros métodos.
CONCLUSIÓN.

El éxito de esta función heurística es depende de la información heurística ya que dependiendo de esta heurística se puede e encontrar el estado objetivo de una manera eficiente o más rápida.


BIBLIOGRAFÍA


Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE MODERNO. PEARSON EDUCACION. 2 ed. Madrid.

Estrategia de Búsqueda Informada

Introducción.

Hay varios métodos de búsqueda informada pero depende del problema a resolver, la búsqueda informada puede encontrar soluciones de una manera mas eficiente que las búsquedas no informadas, el cual detallaremos un poco sobre el método búsqueda voraz primero el mejor.

MARCO TEÓRICO 
las estrategias de búsqueda no informadas pueden encontrar soluciones en problemas generando sistemáticamente nuevos estados y probándolos con el objetivo. lamentablemente, estas estrategias son increíblemente ineficientes en la mayoría de casos, la estrategia de búsqueda informada (la que utiliza el conocimiento específico del problema) puede encontrar soluciones de una manera más eficiente.
Estos algoritmos son adecuados para problemas en los cuales el coste del camino es irrelevante y todo lo que importa es el estado solución en sí mismo.

Estrategias de Búsqueda Informada (heurísticas).
Esta estrategia muestra cómo una búsqueda informada puede encontrar soluciones de una manera más eficiente que una estrategia no informada, la cual utiliza el conocimiento específico del problema más allá de la definición del problema en sí mismo.

Búsqueda Voraz Primero el Mejor.

La búsqueda voraz priman el mejor trata de expandir el nodo más cercano al objetivo, alegando que probablemente conduzca rápidamente a una solución. Así, evalúa los nodos utilizando solamente la función heurística: 


f(n) = h(n).

Veamos cómo trabaja para los problemas de encontrar una ruta en Rumania utilizando la heurística distancia en linea recta que llamaremos h(DLR) Si el objetivo es Bucarest, tendremos que conocer las distancias en línea recta a Bucarest. Por ejemplo, h[DLR(En(Arad)) = 366. Notemos que los valores de h(DLR) no pueden calcularse de la descripción de problema en sí mismo. Además, debemos tener una cierta cantidad de experiencia para saber que h(DLR) está correlacionada con las distancias reales del camino y es, por lo tanto, una heurística útil.

Si el objetivo es Bucarest, tendremos que conocer las distancias en línea recta a Bucarest, que se muestran en el gráfico anterior.
La búsqueda voraz primero el mejor se parece a la búsqueda primero en profundidad en el modo que prefiere seguir un camino hacia el objetivo, pero volverá atrás cuando llegue a un callejón sin salida. Sufre los mismos defectos que la búsqueda primero en profundidad, no es óptima, y es incompleta (porque puede ir hacia abajo en un camino infinito y nunca volver para intentar otras posibilidades). Sin embargo,  con una buena función, se pueden reducir la complejidad considerablemente. La cantidad de la reducción depende del problema particular y de la calidad de la heurística.


CONCLUSIÓN.

Las estrategias de búsqueda informada son mucho más eficientes que las no informadas ya que dan solución de una manera mas rápida dependiendo de la calidad y cantidad de heurística, la finalidad de utilizar una búsqueda informada es utilizar conocimiento específico del problema para alcanzar el objetivo de manera más eficiente. es muy parecido al de primero en profundidad ya que sigue el camino hacia el objetivo .
BIBLIOGRAFÍA.

Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE MODERNO. PEARSON EDUCACION. 2 ed. Madrid.

Búsqueda con Infortmación Parcial

INTRODUCCIÓN.

En este tipo de búsqueda no proporciona ninguna información después de cada acción el conocimiento de los estados o acciones es incompleto por lo hay tres tipos de problema distinto:
           
          -  Problemas sin sensores
          -  De contingencia
          -  De exploración.

MARCO TEÓRICO

Búsqueda con Información Parcial 
Asumimos que el entorno es totalmente observable y determinista y que el agente conoce cuales son los efectos de cada acción. Por lo tanto, el agente puede calcular exactamente cuál es el estado resultado de cualquier secuencia de acciones y siempre sabe en qué estado esta. Su percepción no proporciona ninguna nueva información después de cada acción. Que pasa cuando el conocimiento de los estados o acciones es incompleto? Encontramos que diversos tipos de incompletitud conducen a tres tipos de problemas distintos:
1.     Problemas sin sensores (también llamados problemas conformados): si el agente no tiene ningún sensor, entonces (por lo que sabe) podría estar en uno de los posibles estados iniciales, y cada acción por lo tanto podría conducir a uno de los posibles estados sucesores.
2.      Problemas de contingencia: si el entorno es parcialmente observable o si las acciones son inciertas, entonces las percepciones del agente proporcionan nueva información después de cada acción. Cada percepción posible define una contingencia que debe de planearse. A un problema se le llama entre adversarios si la incertidumbre está causada por las acciones de otro agente.
3.       Problemas de exploración: cuando se desconocen los estados y las acciones del entorno, el agente debe actuar para descubrirlos. Los problemas de exploración pueden verse como un caso extremo de problemas de contingencia.
CONCLUSIÓN.

Es importante que tipo de problema tenemos ya que una vez identificado podremos dar una buena solución de una manera correcta y eficiente, ya que hay varias formas de dar solución a los problemas por lo tanto si se conoce el problema entonces se identifica cual va a ser una mejor solución a la esta resolución.

BIBLIOGRAFÍA


Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE MODERNO. PEARSON EDUCACION. 2 ed. Madrid.

Estrategias de Búsqueda no Informada

Introducción.

En esta clase se analizaron los métodos de búsqueda primero en anchura y primero en profundidad, las cuales se utilizan para la solución de problemas, y ambos métodos tiene una funcionalidad diferente.

MARCO TEÓRICO.  

El término significa que ellas no tienen información adicional acerca de los estados más allá de la que proporciona la definición del problema. Todo lo que ellas pueden hacer es generar los sucesores y distinguir entre un estado Objetivo de uno que no lo es.

Búsqueda Primero en Anchura.

La búsqueda primero en anchura es una estrategia sencilla en la que se expande primero el nodo raíz, a continuación se expanden todos los sucesores del nodo raíz, después sus sucesores, etc. En general, se expanden todos los nodos a una profundidad en el árbol de búsqueda antes de expandir cualquier nodo del próximo nivel.

La búsqueda primero en anchura se puede implementar llamando FIFO una cola primero en entrar primero en salir, asegurando que los nodos primeros visitados serán los primeros expandidos.

Ejemplo: Describe la funcionalidad de primero en anchura mediante un gráfico.
Búsqueda Primero en Profundidad.
La búsqueda primero en profundidad siempre expande el nodo más profundo en la frontera actual del árbol de búsqueda. La búsqueda procede inmediatamente al nivel más profundo del árbol de búsqueda, donde los nodos no tienen ningún sucesor. Cuando esos nodos se expanden, son quitados de la frontera, así entonces la búsqueda «retrocede» al siguiente nodo más superficial que todavía tenga sucesores inexplorados, esta estrategia es llamada LIFO el cual último en entrar primero en salir.

Ejemplo: Describe la funcionalidad de primero en profundidad mediante un gráfico.
CONCLUSIÓN.
Las búsquedas no informados tienen barios métodos para la resolución de problemas el cual hemos definidos dos métodos, el primero en anchura es que expande todos sus nodos sucesores lo malo de este método es que al expandirse todo sus nodos se almacena en la memoria pero en muy usado ya que llega a encontrar varias soluciones ya que expande todos sus nodos, el método primero en profundidad expande el nodo mas profundo al momento de expandirse hasta su nodo mas profundo y no a encontrado la solución regresa y los nodos visitados salen de memoria es decir que solo almacena lo que se a expandido y si no encuentra el nodo objetivo va eliminando de memoria y lo malo de este método es que al encontrar el nodo objetivo termina y no sabrá si hay mas soluciones en el problema.  
BIBLIOGRAFÍA

Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE MODERNO. PEARSON EDUCACION. 2 ed. Madrid.

Agentes que planifican

INTRODUCCIÓN.

El objetivo es de entender el funcionamiento de los agentes resolventes de problemas   en donde  un agente puede encontrar una serie de acciones para alcanzar un objetivo. Los agentes más simples son los agentes reactivos  los cuales sus acciones están basadas a una acción directa. Los agentes basados en objetivos pueden tener éxito considerando las acciones de sus resultados las cuales utiliza una secuencia llamada búsqueda que es un algoritmo que toma como entrada un problema y devuelve una solución.

MARCO TEÓRICO.

Agentes Resolventes-Problemas.

Se supone que los agentes inteligentes deben maximizar su medida de rendimiento, esto puede simplificarse algunas veces si el agente puede elegir m objetivo y trata de satisfacerlo.

El primer paso para solucionar un problema es la formulación del objetivo basado en la situación actual y la medida de rendimiento del agente. La tarea del agente es encontrar que secuencia de acciones permite obtener un estado objetivo. Para esto, necesitamos decidir qué acciones y estados considerar.

Consideraremos los estados que corresponden a estar en un lugar determinada, ahora el agente ha adoptado el objetivo de ir al lugar determinado, y considera a donde ir. Existen tres destinos para llegar al lugar determinado, ninguna de estas alcanza el objetivo, a menos que el agente esté familiarizado con la geografía, no sabría qué camino seguir? En otras palabras, el agente no sabrá cuál de las posibles acciones es mejor, porque no conoce lo suficiente los estados que resultan al tomar cada acción. Si el agente no tiene conocimiento adicional, entonces estará en un callejón sin salida. Lo mejor que puede hacer es escoger al azar una de las acciones.

Pero, supongamos que el agente tiene un mapa de unos de los tres caminos, en papel o en su memoria. El propósito del mapa es dotar al agente de información sobre los estados en los que podría encontrarse, así como las acciones que puede tomar. El agente puede usar esta información para considerar los siguientes estados de un viaje hipotético por cada uno de los tres caminos, intentando encontrar un viaje que llegue al objetivo. Una vez que ha encontrado un camino en el mapa, puede alcanzar su objetivo, tomando las acciones de conducir que correspondan al objetivo.

 En general, un agente con distintas opciones inmediatas de valores desconocidos puede decidir qué hacer, examinando las diferentes secuencias posibles de acciones que le conduzcan a estados de valores conocidos, y entonces escoger la mejor secuencia.

Problemas y soluciones bien definidos

Un problema puede definirse, formalmente, por cuatro componentes:
   
    v   El estado inicial en el que comienza el agente.
    v  Una descripción de las posibles acciones disponibles por el agente
    v  El test objetivo, el cual determina si un estado es un estado objetivo.
    v  Una funcion costo del camino que asigna un costo numérico a cada camino.
CONCLUSIÓN.

Los agentes resolventes de problemas es el que decide que acciones tomar para así llegar al nodo objetivo, el problema se puede definir en cuatro componentes los cuales nos ayuda a dar una solución bien definida, el estado inicial donde se sitúa el agente, las posibles acciones que puede tomar el agente, el test objetivo el cual determina si es nuestro estado objetivo y coste del camino para saber que acción debe tomar para una mejor  solución.

BIBLIOGRAFÍA

Russell, S. y Norvig, P. 2004. INTELIGENCIA ARTIFICIAL. UN ENFOQUE MODERNO. PEARSON EDUCACION. 2 ed. Madrid.