Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los...

30
Inteligencia Artificial Inteligencia Artificial 1 Planificación y Actuación Planificación y Actuación FCC - BUAP FCC - BUAP Antonio Juárez González Antonio Juárez González Alfonso Garcés Báez Alfonso Garcés Báez

Transcript of Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los...

Page 1: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 11

Planificación y ActuaciónPlanificación y ActuaciónFCC - BUAPFCC - BUAP

Antonio Juárez González Antonio Juárez González Alfonso Garcés BáezAlfonso Garcés Báez

Page 2: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 22

Planificación CondicionalPlanificación Condicional Conocida como Conocida como Planificación de Planificación de

ContingenciasContingencias. Construye un plan condicional . Construye un plan condicional donde se incluyen todas las posibles donde se incluyen todas las posibles situaciones de contingencia que puedan situaciones de contingencia que puedan surgir. Se auxilia de surgir. Se auxilia de acciones de percepciónacciones de percepción..

Monitoreo de la EjecuciónMonitoreo de la Ejecución Si algún factor externo influye en las Si algún factor externo influye en las

condiciones del mundo, mediante de un condiciones del mundo, mediante de un monitoreo de lo que esta pasando durante la monitoreo de lo que esta pasando durante la ejecución del plan, el agente puede darse ejecución del plan, el agente puede darse cuenta de que algo anda mal, procediendo a cuenta de que algo anda mal, procediendo a una una replanificaciónreplanificación..

Page 3: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 33

La diferencia entre los dos métodos La diferencia entre los dos métodos planteados radica en que un agente que planteados radica en que un agente que maneja la maneja la planificación condicionalplanificación condicional enfrenta desde el principio los errores que enfrenta desde el principio los errores que pudieran aparecer durante la ejecución del pudieran aparecer durante la ejecución del plan, mientras que un agente que maneja plan, mientras que un agente que maneja monitoreo de la ejecución monitoreo de la ejecución pospone el pospone el enfrentar dichos errores hasta el momento enfrentar dichos errores hasta el momento en que realmente se presenten.en que realmente se presenten.

Page 4: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 44

Planificación condicionalPlanificación condicional

Este tipo de planificación se basa en Este tipo de planificación se basa en bifurcaciones de las situaciones que se bifurcaciones de las situaciones que se pudieran presentar en un momento dado.pudieran presentar en un momento dado.

NotaciónNotación

Si(Condición,[Parte Entonces],[Parte Si_no(alternativa)])Si(Condición,[Parte Entonces],[Parte Si_no(alternativa)])

Puede haber condiciones anidadas.Puede haber condiciones anidadas.

Page 5: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 55

Los pasos condicionales se ejecutan de la Los pasos condicionales se ejecutan de la manera siguiente:manera siguiente: El agente somete a prueba la condición El agente somete a prueba la condición

comparándola con su BC. Luego procede a comparándola con su BC. Luego procede a ejecutar la parte Entonces o Si_no, según la ejecutar la parte Entonces o Si_no, según la condición sea condición sea verdadera o falsa verdadera o falsa respectivamente. Las partes a ejecutar respectivamente. Las partes a ejecutar pueden ser a su vez planes y en ellas puede pueden ser a su vez planes y en ellas puede haber un anidado arbitrario de condicionales.haber un anidado arbitrario de condicionales.

Page 6: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 66

El hecho más importante en la ejecución El hecho más importante en la ejecución de los planes condicionales reside en el de los planes condicionales reside en el hecho de que en el momento de la hecho de que en el momento de la ejecución de un paso condicional, el ejecución de un paso condicional, el agente debe tener la capacidad para agente debe tener la capacidad para determinar la validez o falsedad de la determinar la validez o falsedad de la condición.condición.

Es necesario que el agente conozca la Es necesario que el agente conozca la condición en ese momento del plan.condición en ese momento del plan.

Page 7: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 77

Acciones de Percepción SensorialAcciones de Percepción Sensorial

Son aquellas que el agente tiene que Son aquellas que el agente tiene que incorporar al plan y cuyo efecto permita incorporar al plan y cuyo efecto permita conocer las condiciones respectivas al conocer las condiciones respectivas al plan.plan.

NotaciónNotación Op(Acción: Revisar(Llanta(x))Op(Acción: Revisar(Llanta(x))

CondPrev: Llanta(x)CondPrev: Llanta(x) Efecto: Sabe_si(“Intacta(x)”))Efecto: Sabe_si(“Intacta(x)”))

Page 8: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 88

Ejemplo: Consideremos el problema de Ejemplo: Consideremos el problema de cambiar una llanta desinflada.cambiar una llanta desinflada. Esquemas de acciónEsquemas de acción* Op(Acción: Eliminar(x)* Op(Acción: Eliminar(x) CondPrev: Puesta(x)CondPrev: Puesta(x) Efecto: Desmontada(x),Despejado(x),¬Puesta(x))Efecto: Desmontada(x),Despejado(x),¬Puesta(x))* Op(Acción: Poner(x)* Op(Acción: Poner(x) CondPrev: Desmontada(x), DespejadoR(x)CondPrev: Desmontada(x), DespejadoR(x) Efecto: Puesta(x),¬DespejadoR(x),¬Desmontada(x))Efecto: Puesta(x),¬DespejadoR(x),¬Desmontada(x))* Op(Acción: Inflar(x)* Op(Acción: Inflar(x) CondPrev: Intacta(x),Desinflada(x)CondPrev: Intacta(x),Desinflada(x) Efecto: Inflada(x),¬Desinflada(x))Efecto: Inflada(x),¬Desinflada(x))

Page 9: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 99

Nuestra meta tener una llanta inflada y Nuestra meta tener una llanta inflada y montada:montada:

Puesta(x), Inflada(x)Puesta(x), Inflada(x)

Si nuestras condiciones iniciales son:Si nuestras condiciones iniciales son:

Inflada(LlantaRef), Intacta(LlantaRef),Inflada(LlantaRef), Intacta(LlantaRef),Desmontada(LlantaRef), Puesta(LlantaDesmontada(LlantaRef), Puesta(Llanta11), ), Desinflada(LlantaDesinflada(Llanta11))

Page 10: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1010

Empleando alguno de los planificadores Empleando alguno de los planificadores estándar de los capítulos anteriores estándar de los capítulos anteriores obtendríamos:obtendríamos:

[Eliminar(Llanta[Eliminar(Llanta11), Poner(LlantaRef)]), Poner(LlantaRef)]

** Supongamos que la información que Supongamos que la información que tenemos del mundo esta incompleta y no tenemos del mundo esta incompleta y no sabemos si sabemos si LlantaLlanta11 esta realmente esta realmente ponchada o solo le falta aire.ponchada o solo le falta aire.

Page 11: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1111

Para enfrentarnos a esto debemos usar un Para enfrentarnos a esto debemos usar un paso condicional:paso condicional:

Si(Intacta(LlantaSi(Intacta(Llanta11), [Inflar(Llanta), [Inflar(Llanta11)],)],

[Quitar(Llanta[Quitar(Llanta11), Poner(LlantaRef)])), Poner(LlantaRef)])

* Ahora supongamos que no sabemos el * Ahora supongamos que no sabemos el estado actual de estado actual de LlantaLlanta11, , debemos, por debemos, por tanto, añadir al plan una tanto, añadir al plan una acción de acción de percepción sensorialpercepción sensorial para poder conocer el para poder conocer el estado de estado de LlantaLlanta11..

Page 12: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1212

Op(Acción: Revisar(Llanta(x))Op(Acción: Revisar(Llanta(x)) CondPrev: Llanta(x)CondPrev: Llanta(x) Efecto: Sabe_si(“Intacta(x)”))Efecto: Sabe_si(“Intacta(x)”))

• Ahora podemos saber el estado de Ahora podemos saber el estado de LlantaLlanta11 y y podemos proceder a hacer lo que más podemos proceder a hacer lo que más convenga. Nótese que este tipo de acciones convenga. Nótese que este tipo de acciones producen efectos comunes y también acarrean producen efectos comunes y también acarrean condiciones previas para poder cumplirse.condiciones previas para poder cumplirse.

• Por tanto, en los planificadores condicionales Por tanto, en los planificadores condicionales habrá ocasiones en los que se elaboren planes habrá ocasiones en los que se elaboren planes relacionados con la realización de acciones relacionados con la realización de acciones comunes con objeto de obtener algún tipo de comunes con objeto de obtener algún tipo de información necesario.información necesario.

Page 13: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1313

Algoritmo para generar planes Algoritmo para generar planes condicionalescondicionales

El proceso es muy semejante al de El proceso es muy semejante al de planificación del capítulo 11.planificación del capítulo 11.

La principal estructura es el La principal estructura es el contextocontexto de de un paso en el plan, que no es sino la un paso en el plan, que no es sino la unión de las condiciones que es necesario unión de las condiciones que es necesario satisfacer para que se ejecute el paso. satisfacer para que se ejecute el paso. Básicamente es la rama en la que se Básicamente es la rama en la que se encuentra el paso.encuentra el paso.

Page 14: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1414

Page 15: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1515

Page 16: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1616

Page 17: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1717

Ampliación del lenguaje del planAmpliación del lenguaje del plan

DefinicionesDefiniciones Acciones de percepción sensorial múltipleAcciones de percepción sensorial múltiple

Color(x,c)Color(x,c)Son aquellas en las que el conocimiento del entorno Son aquellas en las que el conocimiento del entorno no es único. Por ejemplo, la variable no es único. Por ejemplo, la variable cc del ejemplo del ejemplo puede tomar diferentes colores, dependiendo de que puede tomar diferentes colores, dependiendo de que color sea el objeto color sea el objeto xx..

Planes parametrizadosPlanes parametrizados

Aquellos que utilizan acciones de percepción sensorial Aquellos que utilizan acciones de percepción sensorial multiple.multiple.

Page 18: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1818

Ejemplo: SupongamosEjemplo: SupongamosColor(Silla, c), Color(Mesa, c)Color(Silla, c), Color(Mesa, c)

““La silla tiene el mismo color que la mesa”.La silla tiene el mismo color que la mesa”. Al Al principio la silla no esta pintada y se dispone de principio la silla no esta pintada y se dispone de pinturas y brochas. Podemos utilizar el plan:pinturas y brochas. Podemos utilizar el plan:

[PercibirColor(Mesa), SaberQue(“Color(Mesa, [PercibirColor(Mesa), SaberQue(“Color(Mesa, cc)”),)”),ConseguirPintura(c), Pintar(Silla,c)]ConseguirPintura(c), Pintar(Silla,c)]

Los dos últimos pasos están parametrizados, ya Los dos últimos pasos están parametrizados, ya que no será sino hasta la ejecución cuando el que no será sino hasta la ejecución cuando el agente podrá saber cuál es el valor de agente podrá saber cuál es el valor de cc..

* A la variables como * A la variables como cc se les llamará se les llamará variables de variables de tiempo de ejecución.tiempo de ejecución.

Page 19: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 1919

Meta de mantenimientoMeta de mantenimientoSon aquellas que se utilizan para Son aquellas que se utilizan para controlar los hechos que se desean controlar los hechos que se desean cambiar y los que se desean conservar cambiar y los que se desean conservar cuando un agente tiene la capacidad de cuando un agente tiene la capacidad de determinar que ciertos hechos son determinar que ciertos hechos son verdaderos, y si no lo son, convertirlos verdaderos, y si no lo son, convertirlos en verdaderos.en verdaderos.

Color(Silla, c), Color(Mesa, c), Matener(Color(Mesa, c))Color(Silla, c), Color(Mesa, c), Matener(Color(Mesa, c))

La meta La meta MantenerMantener garantiza que en el garantiza que en el plan no se insertará ninguna acción plan no se insertará ninguna acción cuyo efecto causal común sea el de cuyo efecto causal común sea el de cambiar el color de la mesa.cambiar el color de la mesa.

Page 20: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2020

Monitoreo de la ejecuciónMonitoreo de la ejecución

En este se revisan las condiciones previas En este se revisan las condiciones previas de todas las acciones en el momento de la de todas las acciones en el momento de la ejecución.ejecución.

Es útil en sistemas de tiempo real, donde Es útil en sistemas de tiempo real, donde puede haber factores inesperados que puede haber factores inesperados que cambien súbitamente las condiciones cambien súbitamente las condiciones necesarias para las acciones del plan.necesarias para las acciones del plan.

Page 21: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2121

Causas de falla de un plan:Causas de falla de un plan: Indeterminación acotadaIndeterminación acotada

Aunque las acciones tengan efectos inesperados, se Aunque las acciones tengan efectos inesperados, se enumeran y describen los efectos que sea posible enumeran y describen los efectos que sea posible esperar, como parte del axioma de descripción de esperar, como parte del axioma de descripción de acciones.acciones.

Indeterminación no acotadaIndeterminación no acotadaEl conjunto de posibles resultados El conjunto de posibles resultados inesperados resulta excesivamente inesperados resulta excesivamente grande. En este caso de planifica una grande. En este caso de planifica una cantidad determinada de cantidad determinada de contingencias, y optar por la contingencias, y optar por la replanificación cuando nos replanificación cuando nos enfrentemos a una contingencia no enfrentemos a una contingencia no esperada.esperada.

Page 22: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2222

Planificación y Ejecución integradasPlanificación y Ejecución integradas

Los dos métodos pueden considerarse Los dos métodos pueden considerarse como un solo proceso concentrado en un como un solo proceso concentrado en un agente planificador situadoagente planificador situado. .

Page 23: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2323

Ejemplo:Ejemplo: Sean el problema de mover bloques.Sean el problema de mover bloques.

Nuestra meta es:Nuestra meta es:

Sobre(C, D), Sobre(D, B)Sobre(C, D), Sobre(D, B)

La acción es:La acción es:

Op(Acción: Desplazar(x, y)Op(Acción: Desplazar(x, y) CondPrev: Despejar(x), Despejar(y), Sobre(x, z)CondPrev: Despejar(x), Despejar(y), Sobre(x, z) Efecto: Sobre(x, y), Despejar(z),Efecto: Sobre(x, y), Despejar(z), ¬Sobre(x, z), ¬ Despejar(y))¬Sobre(x, z), ¬ Despejar(y))

Page 24: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2424

Estado inicial y seguimiento del ejemplo

Page 25: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2525

Page 26: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2626

Page 27: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2727

ComparaciónComparación Planificación condicionalPlanificación condicional

La cantidad de condiciones posibles para las que hay La cantidad de condiciones posibles para las que hay que planificar crece exponencialmente con la cantidad que planificar crece exponencialmente con la cantidad de pasos presentes en un plan.de pasos presentes en un plan.

Muchos de los eventos planificados tienen solo una Muchos de los eventos planificados tienen solo una posibilidad infinitesimal de producirse.posibilidad infinitesimal de producirse.

ReplanificaciónReplanificación El planificador supone que no hay fallas en las El planificador supone que no hay fallas en las

acciones y los problemas se van resolviendo acciones y los problemas se van resolviendo conforme van surgiendo durante la ejecución.conforme van surgiendo durante la ejecución.

Se pueden producir planes muy frágiles.Se pueden producir planes muy frágiles. Pueden omitirse condiciones.Pueden omitirse condiciones.

Page 28: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2828

Coerción y AbstracciónCoerción y Abstracción

Son técnicas que permiten a un agente Son técnicas que permiten a un agente hacer planes bastante complejos, sin hacer planes bastante complejos, sin necesidad de todo un aparato para necesidad de todo un aparato para razonar acerca de las posibilidades.razonar acerca de las posibilidades.

Page 29: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 2929

CoerciónCoerción Permite reducir la incertidumbre acerca del Permite reducir la incertidumbre acerca del

mundo al encasillar este en un estado que sí mundo al encasillar este en un estado que sí es conocido, independientemente de cuál sea es conocido, independientemente de cuál sea el estado inicial.el estado inicial.

AbstracciónAbstracción Sirve para que el agente elimine los detalles Sirve para que el agente elimine los detalles

de un problema acerca de los cuales no tenga de un problema acerca de los cuales no tenga un conocimiento ni exacto ni completo.un conocimiento ni exacto ni completo.

Agregación…Agregación…

Page 30: Planificación y Actuaciónagarces/descargas/PlanificacionActuacion.pdf · La diferencia entre los dos métodos planteados radica en que un agente que maneja la planificación condicional

Inteligencia ArtificialInteligencia Artificial 3030

GRACIASGRACIAS