El documento describe los conceptos básicos de agentes y su entorno. Un agente es cualquier cosa capaz de percibir su medioambiente y actuar en él. Los agentes humanos usan sentidos como la vista y el oído, mientras que los agentes robóticos usan sensores como teclados y redes. La racionalidad de un agente depende de su medida de rendimiento, conocimiento, acciones posibles y percepciones. Un agente racional es aquel que toma la acción que maximiza su rendimiento basado en sus percepciones y conocimiento
0 calificaciones0% encontró este documento útil (0 votos)
180 vistas38 páginas
El documento describe los conceptos básicos de agentes y su entorno. Un agente es cualquier cosa capaz de percibir su medioambiente y actuar en él. Los agentes humanos usan sentidos como la vista y el oído, mientras que los agentes robóticos usan sensores como teclados y redes. La racionalidad de un agente depende de su medida de rendimiento, conocimiento, acciones posibles y percepciones. Un agente racional es aquel que toma la acción que maximiza su rendimiento basado en sus percepciones y conocimiento
Descripción original:
Documento acerca de los agentes y su comportamiento en el entorno, Inteligencia Artificial.
El documento describe los conceptos básicos de agentes y su entorno. Un agente es cualquier cosa capaz de percibir su medioambiente y actuar en él. Los agentes humanos usan sentidos como la vista y el oído, mientras que los agentes robóticos usan sensores como teclados y redes. La racionalidad de un agente depende de su medida de rendimiento, conocimiento, acciones posibles y percepciones. Un agente racional es aquel que toma la acción que maximiza su rendimiento basado en sus percepciones y conocimiento
El documento describe los conceptos básicos de agentes y su entorno. Un agente es cualquier cosa capaz de percibir su medioambiente y actuar en él. Los agentes humanos usan sentidos como la vista y el oído, mientras que los agentes robóticos usan sensores como teclados y redes. La racionalidad de un agente depende de su medida de rendimiento, conocimiento, acciones posibles y percepciones. Un agente racional es aquel que toma la acción que maximiza su rendimiento basado en sus percepciones y conocimiento
Descargue como PDF, TXT o lea en línea desde Scribd
Descargar como pdf o txt
Está en la página 1de 38
Agentes y su entorno
• Un agente es cualquier cosa capaz de percibir su medioambiente con
la ayuda de sensores y actuar en ese medio utilizando actuadores (Se usa éste término para indicar el elemento que reacciona a un estímulo realizando una acción). La Figura 2.1 ilustra esta idea simple. • Un agente humano tiene ojos, oídos y otros órganos sensoriales además de manos, piernas, boca y otras partes del cuerpo para actuar. • Un agente robot recibe pulsaciones del teclado, archivos de información y paquetes vía red a modo de entradas sensoriales y actúa sobre el medio con mensajes en el monitor, escribiendo ficheros y enviando paquetes por la red. • Se trabajará con la hipótesis general de que cada agente puede percibir sus propias acciones (pero no siempre sus efectos). • El término percepción se utiliza en este contexto para indicar que el agente puede recibir entradas en cualquier instante. La secuencia de percepciones de un agente refleja el historial completo de lo que el agente ha recibido. • En general, un agente tomará una decisión en un momento dado dependiendo de la secuencia completa de percepciones hasta ese instante. • Si se puede especificar qué decisión tomará un agente para cada una de las posibles secuencias de percepciones, entonces se habrá explicado más o menos todo lo que se puede decir de un agente. • En términos matemáticos se puede decir que el comportamiento del agente viene dado por la función del agente que proyecta una percepción dada en una acción. • La función que describe cl comportamiento de un agente se puede presentar en forma de tabla: en la mayoría de los casos esta tabla sería muy grande (infinita a menos que se limite el tamaño de la secuencia de percepciones que se quiera considerar). • Dado un agente, con el que se quiera experimentar, se puede, en principio, construir esta tabla teniendo en cuenta todas las secuencias de percepción y determinando qué acción lleva a cabo el agente en respuesta. La, tabla es, por supuesto, una caracterización externa del agente. • Inicialmente la función del agente para un agente artificial se implementará mediante el programa del agente. • Es importante diferenciar estas dos ideas. La función del agente es una descripción matemática abstracta; el programa del agente es una implementación completa que se ejecuta sobre la arquitectura del agente. • Para ilustrar esta idea se utilizara un ejemplo muy simple. el mundo de la aspiradora presentado en la Figura 2.2. Este mundo es tan simple que se puede describir todo lo que en él sucede; es un mundo hecho a medida, para el que se pueden inventar otras variaciones. • Este mundo en particular tiene solamente dos localizaciones: cuadrícula A y B. La aspiradora puede percibir en qué cuadrante se encuentra y si hay suciedad en él. • Puede elegir si se mueve hacia la izquierda, derecha, aspirar la suciedad o no hacer nada. • Una función muy simple para el agente vendría dada por: si la cuadrícula en la que se encuentra está sucia, entonces aspirar, de otra forma cambiar de cuadrícula. Una muestra parcial de la función del agente representada en forma de tabla aparece en la Figura 2.3. • Revisando la Figura 2.3, se aprecia que se pueden definir varios agentes para el mundo de la aspiradora simplemente rellenando la columna de la derecha de formas distintas. • La pregunta obvia, entonces es: ¿Cuál es la mejor forma de rellenar una tabla? • En otras palabras, ¿qué hace que un agente sea bueno o malo, inteligente o estúpido? Buen comportamiento: el concepto de racionalidad • Un agente racional es aquel que hace lo correcto; en términos conceptuales, cada elemento de la tabla que define la función del agente se tendría que rellenar correctamente. Obviamente, hacer lo correcto es mejor que hacer algo incorrecto, pero ¿,qué significa hacer lo correcto? Como primera aproximación, se puede decir que lo correcto es aquello que permite al agente obtener un resultado mejor. • Por tanto. se necesita determinar una forma de medir el éxito. Ello, junto a la descripción del entorno y de los sensores y actuadores del agente, proporcionará una especificación completa de la tarea que desempeña el agente. • Dicho esto, ahora es posible definir de forma más precisa qué significa la racionalidad. Medidas de rendimiento • Las medidas de rendimiento incluyen los criterios que determinan el éxito en el comportamiento del agente. Cuando se sitúa un agente en un medio, éste genera una secuencia de acciones de acuerdo con las percepciones que recibe. • Esta secuencia de acciones hace que su hábitat pase por una secuencia de estados. • Si la secuencia es Ia deseada, entonces el agente habrá actuado correctamente. • Obviamente, no hay una única medida adecuada para todos los agentes. Sc puede preguntar al agente por su opinión subjetiva acerca de su propia actuación, pero muchos agentes serían incapaces de contestar, y otros podrían engañarse a sí mismos. • Por tanto hay que insistir en la importancia de utilizar medidas de rendimiento objetivas, que normalmente determinará el diseñador encargado de la construcción del agente. • Si retomamos el ejemplo de la aspiradora de la sección anterior, se puede proponer utilizar como medida de rendimiento la cantidad de suciedad limpiada en un período de ocho horas. • Con agentes racionales, por supuesto, se obtiene lo que se demanda. Un agente racional puede maximizar su medida de rendimiento limpiando la suciedad, tirando la basura al suelo, limpiándola de nuevo, y así sucesivamente. Una medida de rendimiento más adecuada recompensaría al agente por tener el suelo limpio. Por ejemplo, podría ganar un punto por cada cuadrícula limpia en cada período de tiempo (quizás habrá que incluir algún tipo de penalización por cada electricidad gastada y el ruido generado). • Como regla general, es mejor diseñar medidas de utilidad de acuerdo con lo que se quiere para el entorno, más que de acuerdo con cómo se cree que el agente debe comportarse. • La selección de la medida de rendimiento no es siempre fácil. Por ejemplo, la noción de “suelo limpio” está basada e un nivel de limpieza medio a lo largo del tiempo. Además, este nivel medio de limpieza se puede alcanzar de dos formas diferentes, llevando a cabo una limpieza mediocre pero continua o limpiando en profundidad, pero realizando largos descansos. La forma más adecuada de hacerlo puede venir dada por la opinión de un encargado de limpieza profesional, pero en realidad es una cuestión filosófica profunda con fuertes implicaciones. ¿Qué es mejor, una vida temeraria con altos y bajos, o una existencia segura pero aburrida? ¿Qué es mejor, una economía en la que todo el mundo vive en un estado de moderada pobreza o de una en la que algunos viven en la abundancia y otros son muy pobres? Racionalidad • La racionalidad en un momento determinado depende de cuatro factores: • La medida de rendimiento que define el criterio de éxito. • El conocimiento del medio en el que habita acumulado por el agente. • Las acciones que el agente puede llevar a cabo. • La secuencia de percepciones del agente hasta este momento. • Esto nos lleva a la definición de agente racional: En cada posible secuencia de percepciones, un agente racional deberá emprender aquella acción que supuestamente maximice su medida de rendimiento, basándose en las evidencias aportadas por lo secuencia de percepciones y en el conocimiento que el agente mantiene almacenado. • Considerando que el agente aspiradora limpia una cuadrícula si está sucia y se mueve a la otra si no lo está ( ésta es la función del agente que aparece en la tabla de la Figura ¿se puede considerar racional? ¡Depende! Primero, se debe determinar cuál es la medida de rendimiento, qué se conoce del entorno, y qué sensores y actuadores tiene el agente. Si asumimos que: • La medida de rendimiento premia con un punto al agente por cada recuadro limpio en un período de tiempo concreto, a lo largo de una «vida» de 1.000 períodos. • La «geografía» del medio se conoce a priori (Figura 2.2), pero que la distribución de la suciedad y la localización inicial del agente no se conocen. Las cuadrículas se mantienen limpias y aspirando se limpia la cuadrícula en que se encuentre el agente. Las acciones Izquierda y Derecha mueven al agente hacia la izquierda y derecha excepto en el caso de que ello pueda llevar al agente fuera del recinto, en este caso el agente permanece donde se encuentra. • Las únicas acciones permitidas son Izquierda, Derecha, Aspirar y NoOp (no hacer nada). • El agente percibe correctamente su localización y si esta localización contiene suciedad. • Puede afirmarse que bajo estas circunstancias el agente es verdaderamente racional; el rendimiento que se espera de este agente es por lo menos tan alto como el de cualquier otro agente. El Ejercicio 2.4 pide que se pruebe este hecho. • Fácilmente se puede observar que el agente puede resultar irracional en circunstancias diferentes. Por ejemplo, cuando toda la suciedad se haya eliminado el agente oscilará innecesariamente hacia delante y atrás; si la medida de rendimiento incluye una penalización de un punto por cada movimiento hacia la derecha e izquierda, la respuesta del agente será pobre. Un agente más eficiente no hará nada si está seguro de que todas las cuadrículas están limpias. Si una cuadrícula se ensucia de nuevo, el agente debe identificarlo en una de sus revisiones ocasionales y limpiarla. Si no se conoce la geografía del entorno, el agente tendrá que explorarla y no quedarse parado en las cuadrículas A y B. El Ejercicio 2.4 pide que se diseñen agentes para estos casos. Omnisciencia, aprendizaje y autonomía • Es necesario tener cuidado al distinguir entre racionalidad y omnisciencia. Un agente omnisciente conoce el resultado de su acción y actúa de acuerdo con él; sin embargo, en realidad la omnisciencia no es posible. Considerando el siguiente ejemplo: estoy paseando por los Campos Elíseos y veo un amigo al otro lado de la calle. No hay tráfico alrededor y no tengo ningún compromiso, entonces, actuando racionalmente, comenzaría a cruzar la calle. Al mismo tiempo, a 33.000 pies de altura, se desprende la puerta de un avión4, y antes de que termine de cruzar al otro lado de la calle me encuentro aplas,tado. ¿Fue irracional cruzar la calle? Sería de extrañar que en mi nota necrológica apareciera <<Un idiota intentando cruzar la calle». • Este ejemplo muestra que la racionalidad no es lo mismo que la perfección. La racionalidad maximiza el rendimiento esperado, mientras la perfección maximiza el resultado real. Alejarse de, la necesidad de la perfección no es sólo cuestión de hacer justicia con los· agentes. El asunto es que resulta imposible diseñar un agente que siempre lleve a cabo, de forma sucesiva, las mejores acciones después de un acontecimiento, a menos que se haya mejorado el rendimiento de las bolas de cristal o las máquinas de tiempo. • La definición propuesta de racionalidad no requiere omnisciencia, ya que la elección racional depende sólo de la secuencia de percepción hasta la fecha. Es necesario asegurase de no haber permitido, por descuido, que el agente se dedique decididamente a llevar a cabo acciones poco inteligentes. • Por ejemplo, si el agente no mirase a ambos la dos de la calle antes de cruzar una calle muy concurrida, entonces su secuencia de percepción no le indicaría que se está acercando un gran camión a gran velocidad. ¿La definición de racionalidad nos está indicando que está bien cruzar la calle? ¡Todo lo contrario! Primero, no sería racional cruzar la calle sólo teniendo esta secuencia de percepciones incompleta: el riesgo de accidente al cruzarla sin mirar es demasiado grande. Segundo, un agente racional debe elegir la acción de «mirar» antes de intentar cruzar la calle, ya que el mirar maximiza el rendimiento esperado. Llevar a cabo acciones con la intención de modificar percepciones futuras, en ocasiones proceso denominado recopilación de información, es una parte importante de la racionalidad. Un segundo ejemplo de recopilación de información lo proporciona la exploración que debe llevar a cabo el agente aspiradora en un medio inicialmente desconocido. • La definición propuesta implica que el agente racional no sólo recopile información, sino que aprenda lo máximo posible de lo que está percibiendo. La configuración inicial del agente puede reflejar un conocimiento preliminar del entorno, pero a medida que el agente adquiere experiencia éste puede modificarse y aumentar. Hay casos excepcionales en los que se conoce totalmente el entorno a priori. En estos casos, el agente no necesita percibir y aprender; simplemente actúa de forma correcta. Por supuesto, estos agentes son muy frágiles. Considérese el caso del humilde escarabajo estercolero. Después de cavar su nido y depositar en él su huevos, tomó una bola de estiércol de una pila cercana para tapar su entrada. Si durante el trayecto se le quita la bola, el escarabajo continuará su recorrido y hará como si estuviera tapando la entrada del nido, sin tener la bola y sin darse cuanta de ello. • La evolución incorporó una suposición en la conducta del escarabajo, y cuando se viola, el resultado es un comportamiento insatisfactorio. La avispa cavadora es un poco más inteligente. La avispa hembra cavará una madriguera, saldrá de ella, picará a una oruga y la llevará a su madriguera, se introducirá en la madriguera para comprobar que todo está bien, arrastrará la oruga hasta el fondo y pondrá sus huevos. La oruga servirá como fuente de alimento cuando los huevos se abran. Hasta ahora todo bien, pero si un entomólogo desplaza la oruga unos centímetros fuera cuando la avispa está revisando la situación, ésta volverá a la etapa de «arrastre» que figura en su plan, y continuará con el resto del plan sin modificación alguna, incluso después de que se intervenga para desplazar la oruga. La avispa cavadora no es capaz de aprender que su plan innato está fallando, y por tanto no lo cambiará. • Los agentes con éxito dividen las tareas de calcular la función del agente en tres períodos diferentes: cuando se está diseñando el agente, y están los diseñadores encargados de realizar algunos de estos cálculos; cuando está pensando en la siguiente operación, el agente realiza más cálculos; y cuando está aprendiendo de la experiencia, el agente lleva a cabo más cálculos para decidir cómo modificar su forma de comportarse. • Se dice que un agente carece de autonomía cuando se apoya más en el conocimiento inicial que le proporciona su diseñador que en sus propias percepciones. Un agente racional debe ser autónomo, debe saber aprender a determinar cómo tiene que compensar el conocimiento incompleto o parcial inicial. Por ejemplo, el agente aspiradora que aprenda a prever dónde y cuándo aparecerá suciedad adicional lo hará mejor que otro que no aprenda. En la práctica, pocas veces se necesita autonomía completa desde el comicnw: cuando el agente haya tenido poca o ninguna experiencia, tendrá que actuar de fornú aleatoria a menos que el diseñador le haya proporcionado ayuda. • Así, de la misma forma que la evolución proporciona a los animales sólo los reactivos necesarios para que puedan sobrevivir lo suficiente para aprender por ellos mismos, sería razonable proporcionar a los agentes que disponen de inteligencia artificial un conocimiento inicial. así corno de la capacidad de aprendizaje. Después de las suficientes experiencias interaccionando con el entorno, el comportamiento del agente racional será efectivamente independiente del conocimiento que poseía inicialmente. De ahí. que la incorporación del aprendizaje facilite el diseño de agentes racionales individuales que tendrán éxito en una gran cantidad de medios. La naturaleza del entorno • Ahora que se tiene una definición de racionalidad, se está casi preparado para pensar en la construcción de agentes racionales. Primero, sin embargo, hay que centrarse en los entornos de trabajo, que son esencialmente los «problemas» para los que los agentes racionales son las <<soluciones>>. Para ello se comienza mostrando cómo especificar un entorno de trabajo, ilustrando el proceso con varios ejemplos. Posteriormente se mostrará que el entorno de trabajo ofrece diferentes posibilidades, de forma que cada una de las posibilidades influyen directamente en el diseño del programa del agente. Especificación del entorno de trabajo • En la discusión de la racionalidad de un agente aspiradora simple, hubo que especificar las medidas de rendimiento, el entorno, y los actuadores y sensores del agente. Todo ello forma lo que se llama el entorno de trabajo, para cuya denominación se utiliza el acrónimo REAS (Rendimiento, Entorno, Actuadores, Sensores). En el diseño de un agente, el primer paso debe ser siempre especificar el entorno de trabajo de la forma más completa posible. • El mundo de la aspiradora fue un ejemplo simple: considérese ahora un problema más complejo: un taxista automático. Este ejen1plo se utilizará a lo largo del capítulo. Antes de alarmar al lector, conviene aclarar que en la actualidad la construcción de un taxi automatizado está fuera del alcance de la tecnología· actual. La tarea de conducir un automóvil, en su totalidad, es extremadamente ilimitado. No hay límite en cuanto al número de nuevas combinaciones de circunstancias que pueden surgir (por esta razón se eligió esta ac- tividad en la presente discusión). • La Figura 2.4 resume la descripción REAS para el entorno de trabajo del taxi. El próximo párrafo explica cada uno de sus elementos en más detalle. • Primero, ¿cuál es el entorno de trabajo en el que el taxista automático aspira a conducir'? Dentro de las cualidades deseables que debería tener se incluyen el que llegue al destino correcto: que minimice el consumo de combustible; que minimice el tiempo de viaje y/o coste: que minimice el número de infracciones de tráfico y de molestias a otros conductores; que maximice la seguridad, la comodidad del pasajero y el beneficio. Obviamente, alguno de estos objetivos entran en conflicto por lo que habrá que llegar a acuerdos. • Siguiente, ¿cuál es el entorno en el que encontrará el taxi? Cualquier taxista debe estar preparado para circular por distintas carreteras, desde caminos rurales y calles urbanas hasta autopistas de 12 carriles. En las carreteras se pueden encontrar con tráfico, peatones, animales, obras, coches de policía, charcos y haches. El taxista también tiene que comunicarse tanto con pasajeros reales como potenciales. Hay también elecciones opcionales. El taxi puede operar en California del Sur, donde la nieve es raramente un problema. o en Alaska, donde raramente no lo es. Puede conducir siempre por la de- recha, o puede ser lo suficientemente flexible como para que circule por la izquierda cuando se encuentre en el Reino Unido o en Japón. Obviamente. cuanto más restringido esté el entorno. más fácil será el problema del diseño. • Los actuadores disponibles en un taxi automático serán más o menos los mismos que los que tiene a su alcance un conductor humano: el control del motor a través del acelerador y control sobre la dirección y los frenos. Además, necesitará tener una pantalla de visualización o un sintetizador de voz para responder a los pasajeros, y quizás algún mecanismo para comunicarse, educadamente o de otra forma, con otros vehículos. • Para alcanzar sus objetivos en el entorno en el que circula, el taxi necesita saber dónde está, quG otros elementos están en la carretera, y a qué velocidad circula. Sus sensores básicos deben, por tanto, incluir una o más cámaras de televisión dirigidas, un velocímetro y un tacómetro. Para controlar el vehículo adecuadamente, especialmente en las curvas. debe tener un acelerador; debe conocer el estado mecánico del vehículo, de forma que necesitará sensores que controlen el motor y el sistema eléctrico. Debe tener instrumentos que no están disponibles para un conductor medio: un sistema de posicionamiento global vía satélite (GPS) para proporcionarle información exacta sobre su posición con respecto a un mapa electrónico, y sensores infrarrojos o sonares para detectar las distancias con respecto a otros coches y obstáculos. Finalmente, necesitará un teclado o micrófono para que el pasajero le indique su destino. • La Figura 2.5 muestra un esquema con los elementos REAS básicos para diferentes clases; de agentes adicionales. Puede sorprender a algunos lectores que se incluya en la lista de tipos de agente algunos programas que operan en la totalidad del entorno artificial definido por las entradas del teclado y los caracteres impresos en el monitor. «Seguramente», nos podamos pregun tar, «¿este no es un entorno real, verdad?». De hecho, lo que importa no es la distinción entre un medio «real» y «artificial», sino la complejidad de la relación entre el comportamiento del agente, la secuencia de percepción generada por el medio y la medida de rendimiento. Algunos entornos «reales» son de hecho bastante simples. Por ejemplo, un robot diseñado para inspeccionar componentes según pasan por una cinta transportadora puede hacer u'so de varias suposiciones simples: que la cinta siempre estará . iluminada, que conocerá todos los componentes que circulen por la cinta, y que hay solamente dos acciones (aceptar y rechazar). • En contraste, existen algunos agentes software (o robots software o softbots) en entornos ricos y prácticamente ilimitados. Imagine un softbot diseñado para pilotar el simulador de vuelo de un gran avión comercial. El simulador constituye un medio muy detallado y complejo que incluye a otros aviones y operaciones de tierra, y el agente software debe elegir, en tiempo real, una de entre un amplio abanico de posibilidades. • O imagine un robot diseñado para que revise fuentes de información en Internet y para que muestre aquellas que sean interesantes a sus clientes. Para lograrlo, deberá poseer cierta habilidad en el procesamiento de lenguaje natural, tendrá que aprender qué es lo que le interesa a cada cliente, y tendrá que ser capa1, de cambiar sus planes dinámicamente, por ejemplo, cuando se interrumpa la conexión con una fuente de información o cuando aparezca una nueva. Internet es un medio cuya complejidad rivaliza con la del mundo físico y entre cuyos habitantes se pueden incluir muchos agentes artificiales. • El rango de los entornos de trabajo en los que se utilizan técnicas de IA es obviamente muy grande. Sin embargo, se puede identificar un pequeño número de dimensiones en las que categorizar estos entornos. Estas dimensiones determinan, hasta cierto punto, el diseño más adecuado para el agente y la utilización de cada una de las familias principales de técnicas en la implementación del agente. Primero se enumeran la dimensiones, y después se analizan varios entornos de trabajo para ilustrar estas ideas. Las definiciones dadas son informales. Totalmente observable vs parcialmente observable. • Si los sensores del agente le proporcionan acceso al estado completo del medio en cada momento, entonces se dice que el entorno de trabajo es totalmente observable. • Un entorno de trabajo es, efectivamente. totalmente observable si los sensores detectan todos los aspectos que son relevantes en la toma de decisiones; la relevancia, en cada momento, depende de las medidas de rendimiento. Entornos totalmente observables son convenientes ya que el agente no necesita mantener ningún estado interno para saber qué sucede en el mundo. Un entorno puede ser parcialmente observable debido al ruido y a la existencia de sensores poco exactos o porque los sensores no reciben información de parte del sistema, por ejemplo, un agente aspiradora con sólo un sensor de suciedad local no puede saber si hay suciedad en la otra cuadrícula, y un taxi automatizado no pude saber qué están pensando otros conductores.