Planeacion Busqueda(Adaptativos).pdf

  • Upload
    stark

  • View
    27

  • Download
    0

Embed Size (px)

DESCRIPTION

Materia Sistemas Adaptativos, diferentes tipos de búsqueda.

Citation preview

  • 30/03/2012

    1

    Planeacin y bsqueda

    Programacin de Sistemas AdaptativosUnidad 3: Sistemas inteligentes

    Contenidos

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    2

    Formulacin de problemas

    Repaso DFS y BFS

    Bsqueda

    Bsqueda sin informacin

    Bsqueda con informacin

    Planeacin

  • 30/03/2012

    2

    Motivacional

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    3

    Juego: misioneros y canbales

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    4

    Se tienen tres misioneros y tres canbales; se desea

    cruzarlos al otro lado del ro.

    M M M

    C C C

  • 30/03/2012

    3

    Juego: misioneros y canbales

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    5

    Se cuenta con un bote que soporta dos personas

    mximo.

    Si los canbales superan en nmero a los misioneros, se los

    comen (!). Por tanto, movimientos que propicien esta

    situacin son invlidos.

    Considera que el bote no se maneja solo.

    http://www.matematicasbachiller.com/juegos/misioneros.html

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    6

    Resuelve el juego.

    Reflexin:

    Qu estrategia seguiste?

    Cmo haras un programa que solucione automticamente el

    juego?

  • 30/03/2012

    4

    Problema de las n-reinas

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    7

    Se trata de acomodar n reinas en un tablero de ajedrez

    de n x n.

    SIN que se ataquen.

    Por ejemplo, la instancia de 4 reinas considera poner 4 reinas

    en un tablero de 4 x 4.

    R

    R

    R R

    R

    R

    R

    R

    Formulacin de problemas

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    8

    Se trata de encontrar una configuracin meta que resuelva el problema.

    O la serie de pasos que llevan a ella.

    Componentes

    Estado inicial configuracin de inicio

    Espacio de estados estados (configuraciones) + funcin de sucesin

    Meta estado deseado

    Costo de seguir una ruta de estados

  • 30/03/2012

    5

    Tipos de formulacin

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    9

    Incremental

    Se comienza con un estado vaco

    Se van agregando elementos a los estados en cada nivel.

    Ejemplo con n-reinas:

    Estado inicial: tablero vaco

    Se va agregando una reina por nivel

    Completa

    Cada estado contiene todos los elementos posibles.

    Ejemplo con n-reinas:

    N-reinas en el tablero

    Cada nivel explora algn movimiento especfico

    Bsqueda sin informacin

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    10

    Representamos el espacio de estados como un rbol.

    Aplicamos bsqueda en anchura o profundidad.

    Este tipo de bsqueda es el ms genrico.

    Por tanto, puede ser ineficiente.

  • 30/03/2012

    6

    x

    a

    q

    y b

    w

    m

    tn

    z e

    s v u

    f o

    x

    a

    q

    y b

    w

    m tn

    z e

    s v u

    f o

  • 30/03/2012

    7

    x

    a

    q

    y b

    w

    x

    a

    q

    y b

    w

    m tn s v u

    z e

  • 30/03/2012

    8

    Formulacin incremental para n-reinas

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    15

    Estado inicial

    Tablero vaco

    Estados

    Configuraciones de 0 a n reinas en el tablero

    Funcin de sucesin

    Agregar una reina al tablero

    Meta

    N reinas en el tablero que no se atacan

    4-reinas (fs: poner en rengln diferente)

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    16

    [ ]

    [ (1, 1) ] [ (1, 2) ] [ (1, 3) ] [ (1, 4) ] [ (2, 1) ] [ (2, 2) ]

    [ (2, 1) ] [ (2, 2) ] [ (2, 3) ]

  • 30/03/2012

    9

    Canbales y misioneros

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    17

    ({MMMCCC (B)}, {})

    ({MMMCC},

    {C (B)})

    ({MMMC},

    {CC (B)})

    ({MMCCC},

    {M (B)})

    ({MMCC},

    {MC (B)})

    ({MCCC},

    {MM (B)})

    ({MMMCC

    (B)}, {C})

    ({MMMCCC

    (B)}, {})

    Estado vlido

    Estado invlido

    Estado repetido

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    18

    Busquemos soluciones con

    N-reinas

    Canbales y misioneros

  • 30/03/2012

    10

    Bsqueda con informacin

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    19

    Se obtiene informacin del contexto.

    Se utilizan heursticas.

    Un tipo es la bsqueda avariciosa (greedy best first search)

    Expande primero los nodos que aparecen ms cercanos a la

    meta.

    Otros tipos: best-first, A*

    Ejemplo (AIMA p. 63)

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    20

    Neamt

    Iasi

    Vaslui

    Urziceni

    Hirsova

    Eforie

    Oradea

    Zerind

    Arad

    SibiuFagaras

    RimnicuVilcea

    Pitesti

    Bucarest

    Giurgiu

    Timisoara

    Lugoj

    Mehadia

    Dobreta Craiova

  • 30/03/2012

    11

    Tabla de distancias hacia Bucarest

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    21

    Arad 366 Mehadia 241

    Bucarest 0 Neamt 234

    Craiova 160 Oradea 380

    Dobreta 242 Pitesti 100

    Eforie 161 RimnicuV. 193

    Fagaras 176 Sibiu 253

    Giurgiu 77 Timisoara 329

    Hirsova 151 Urziceni 80

    Iasi 226 Vaslui 199

    Lugoj 244 Zerind 374

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    22

    Arad

    Zerind Sibiu Timisoara

    FagarasArad

    Rimnicu

    V.

    Sibiu Bucarest

    366

    374

    253 329

    176 193

    Oradea

    366380

  • 30/03/2012

    12

    Planeacin

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    23

    Obtener una secuencia de acciones para alcanzar una meta.

    Planeacin clsica

    Ambientes completamente observables, determinsticos, finitos y estticos.

    Formas de bsqueda

    Hacia adelante (progresin)

    Se aplican las acciones posibles hasta llegar a la meta.

    Hacia atrs (regresin)

    Se parte desde la meta hasta el estado inicial.

    Lenguaje STRIPS

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    24

    STanford Research Institute Problem Solver

    Utilizado para describir problemas de planeacin.

    Describe lo siguiente:

    Estados

    Meta

    Acciones

    Cada accin va acompaada de precondiciones y

    efectos.

    Se hace uso de la lgica para describir el problema.

  • 30/03/2012

    13

    Ejemplo zapatos

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    25

    Una persona desea ponerse los zapatos. Se sabe que para

    ello debe primero ponerse los calcetines.

    Descripcin con STRIPS

    Init()

    Goal(ZapatoIzqPuesto ZapatoDerPuesto)

    Ejemplo zapatos

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    26

    Action(ZapatoIzq, PRECOND: CalcetinIzqPuesto,

    EFECTO: ZapatoIzqPuesto )

    Action(CalcetinIzq, EFECTO: CalcetinIzqPuesto)

    Action(ZapatoDer, PRECOND: CalcetinDerPuesto,

    EFECTO: ZapatoDerPuesto )

    Action(CalcetinDer, EFECTO: CalcetinDerPuesto)

  • 30/03/2012

    14

    Ejemplo zapatos

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    27

    Plan: [CalcetinIzq, CalcetinDer, ZapatoIzq, ZapatoDer]

    Otro plan: [CalcetinIzq, ZapatoIzq, CalcetinDer,

    ZapatoDer]

    Toma, chango, tu banana

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    28

    Se tiene en un laboratorio a:

    un mono (en un punto A)

    un racimo de pltanos que cuelga del techo (en un punto B)

    una caja que permitira al mono alcanzar los pltanos si se sube

    en ella (en un punto C)

    El mono y la caja tienen altura Baja, pero si el mono sube

    a la caja, su altura cambia a Alta.

  • 30/03/2012

    15

    Toma, chango, tu banana

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    29

    Acciones:

    Ir de un lugar a otro

    Empujar un objeto de un lugar a otro

    Subir a un objeto

    Bajar de un objeto

    Tomar un objeto

    Mono con STRIPS

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    30

    Init(En(A, Mono), En(B, Bananas), En(C, Caja), SinBananas)

    Goal(ConBananas)

    Action( Ir(x,y)

    PRECOND: En(x, Mono)

    EFFECT: En(x, Mono) En(y, Mono) )

  • 30/03/2012

    16

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    31

    Action( EmpujarCaja(x, y)

    PRECOND: En(x, Mono) En(x, Caja)

    EFFECT: En(x, Mono) En(x, Caja) En(y, Mono) En(y, Caja) )

    Action( SubirACaja

    PRECOND: En(x, Mono) En(x, Caja)

    EFECTO: MonoBajo MonoAlto )

    Action( TomarBananas

    PRECOND: MonoAlto En(B, Mono)

    EFECTO: SinBananas ConBananas

    Resumen

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    32

    Componentes de un problema?

    Bsqueda sin informacin?

    Bsqueda con informacin?

    Planeacin?

  • 30/03/2012

    17

    Referencias

    Programacin de Sistemas Adaptativos:

    Planeacin y bsqueda

    33

    Neapolitan, Richard y Kumarss Naimipour . Foundations

    of Algorithms Using C++ Pseudocode. Jones and Bartlett

    Publishers, Massachusetts, 1998. 2da. edicin.

    Russell, Stuart y Peter Norvig. Artificial Intelligence: A

    Modern Approach. Prentice Hall, New Jersey, 2003, 2 ed.