Transcript
  • AI ..

    @ 1

    3Heuristic Search1.

    (Sequencial Search) 2 (Blind Search) (Heuristic Search)

    2. (Blind search)

    (Depth first search) (Breadth first search)

    2.1

  • AI ..

    @ 2

    (Root node) (Terminal node) 1

    1

    8 142

    6 93 15 1712

    5 74 11 1310 18 1916

    1

    ( ) (pop)

    AB

    DC

    F

    E

    G

    H

    2 A B C A

    C C C D F (Push) B D F C F

  • AI ..

    @ 3

    G B D G (A C F G H E D B) 1

    A B CC B D FF B D GG B D HH B D EE B DD BB

    1

    1 2 STACK 3 1. 1 STACK 22. STACK 3

    4 STACK 0 1 () 2 STACK 2

    3. 4.

  • AI ..

    @ 4

    2.2

    ( 0) 1 1 2 3

    1

    3 42

    6 75 9 108

    12 1311 15 1614 18 1917

    3 (Queue)

    AB

    DC

    F

    E

    G

    H

    4

    A B C A B D E B D E B (A B C D E F G H) 2

    A B CB C D E

  • AI ..

    @ 5

    C D E FD E F G HE F G HF G HG HH

    2

    1 2 QUEUE 3 1. 1 QUEUE 22. QUEUE 3

    4 QUEUE 0 1 () 2 QUEUE 2

    3. 4.

    3. (heuristic search)

  • AI ..

    @ 6

    (heuristic function) (aspects) Weak Methods Weak Methods (general-purposecontrol stategies)

    3.1 (Branch and bound)

    (Traveling Salesman)

    n (n-1) * (n-2) * (n-3) 1 (n-1)! 10

  • AI ..

    @ 7

    10! 3,628,800 25

    (Branch and bound)

    A B C DA 0 20 30 50B 0 15 20C 0 10D 0

    3

    A B C D 4 A B C D

    A B C D = 20 + 15 + 10 = 45 A C B B

    A C B = 30 + 15 = 45

    A C B A C D B 60

    A C D B = 30 + 10 + 20 = 60 A D

    A D = 50 A D A B C D

  • AI ..

    @ 8

    1. 2.

    2.1 2.2

    3

    (complete path)

    3.2 (Generate and Test)

  • AI ..

    @ 9

    1.

    path 2.

    path 3. 2

    1 5

    O @

    @ @ O O

    @ O

    2 1. 1 2. 1

    O O @ @

    5 @ O

    (path) 6

    @ @ O O @ @ O O @ O @ O @ O @ O @ O O @

    @ O O @

    6

  • AI ..

    @ 10

    7

    @ @ O O @ @ O O @ O @ O @ O @ O @ O O @

    O @ @ O O @ @ O

    @ O O @

    7 2 O @ @ O

    8

    @ @ O O @ @ O O @ O @ O @ O @ O @ O O @

    O @ @ O O @ @ O

    @ O @ O

    O @ @ O

    O @ O @

    O @ O @ O O @ O O O @ @

    @ O O @

    7 2 O O @ @

    9

  • AI ..

    @ 11

    @ @ O O @ @ O O @ O @ O

    @ O @ O

    O @ @ O

    O @ O @

    O @ O @ O O @ O O O @ @

    (path)

    9

    (complete path) (Depth first search) (back tracking)

    British Museum Algorithm

    (Heuristic function)

    3.2 (Hill Climbing)(Hill climbing)

  • AI ..

    @ 12

    generate-and-test generate and test (test function) yes no hill climbing

    3.2.1 Simple Hill Climbing1.

    (current state) 2

    2.

    2.1

    2.2

    2

  • AI ..

    @ 13

    OO @@@@ OO @@ OO

    @ O

    @@ OO

    12

    11

    @ O@O 9

    O@ O@ 8

    O O@@ 6

    @ O@O 8

    @O O@ 6

    @O @O 4

    @O @O 3

    O @@O 1

    OO @@ 0

    O@ @O 6

    O@ @O 5

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    3.2.2 (Steepest-Ascent Hill Climbing)1.

    (current state) 2

    2.

    2.1 SUCC 2.2

    SUCC SUCC

    2.3 SUCC SUCC

  • AI ..

    @ 14

    @@ OO

    @@ OO

    12

    11

    @ O@O 9

    O@ O@ 8 @ O@O 8

    @O O@ 6

    @O @O 4

    @O @O 3

    O @@O 1

    OO @@ 0

    1

    2

    3

    4

    5

    6

    7

    8

    9

    @@ OO 11

    @@ OO 10

    steepest ascent

    Hill climbing generate andtest

    !!!! (Local Maximum): (a) 1 B C B C B C 1 C E 1 B

  • AI ..

    @ 15

    !!!! (Plateau): (b) 3 A

    !!!! (Ridge):

    3.2.3 (Simulated Annealing)

    (Kritpatrick., 1983) (annealing) ()

    A

    G

    CB

    ED F

    5 7

    8910 11

    A

    DB 7 7C 7

    (b)

    (a)

  • AI ..

    @ 16

    p = e - E/KT

    E K Boltmann T

    K T

    p = e - E/T

    T T P ( local maximum) T ( local maximum) T T T annealing schedule localmaximum (problem space) local maximum T T T simulated annealing

    1. (current state) 2

    2. BEST (pointer) SUCC 3. annealing schedule T4. SUCC

  • AI ..

    @ 17

    a) SUCCb)

    return

    SUCC BEST

    E = - p 0-1 1 p p p p SUCC

    c) T annealing schedule5. return BEST

    3.3 (Best-first search) (Depth first

    search) (Breadth first search) (most promising) 2.7 1 (root node) 2 B C B C 3 1 C ( ) C 3 D E 4 6 (terminal node) B 3 ( )

  • AI ..

    @ 18

    4 F G 6 5

    A A

    CB 3 1

    A

    CB 3

    D E 64A

    CB 3

    D E 64F G 56

    : 1. OPEN 2. OPEN

    OPEN

    i) OPEN

    ii)

    3.3.1 (Greedy Algorithm) (Best first search)

  • AI ..

    @ 19

    1. 2. 3.

    3.1 3.2

    4. 2

    A B C D 3

    A

    DB C20 30 50

    DC 15 20

    D 10

    D

    B C

    A

    20

    50

    30

    15

    20 10

    13

    13 A B C D A 20 30 50 B B C D 15 20 C C D 10 D A 20 + 15 + 10 + 50 = 95

    3.3.2 A*

  • AI ..

    @ 20

    A* A* A* 2 f g cost h' cost

    f = g + h A*(A* algorithm) A*

    (description) (indicator) (pointer) parent (list) parent-link recover

    2 + OPEN priority queue QUEUE + CLOSE

    f' f' 2 g = cost h'= cost

  • AI ..

    @ 21

    f=g+h' g

    1. OPEN (initial node) 0 g = 0 h' f=h'+0 CLOSED 2. :

    2.1 OPEN fail2.2 OPEN f BESTNODE

    OPEN CLOSED BESTNODE

    2.3 BESTNODE BESTNODE BESTNODE

    BESTNODE

    g(SUCCESSOR) = g(BESTNODE) + cost BESTNODE SUCCESSOR

    cost SUCCESSOR cost OPEN : OLD SUCCESSOR OLD BESTNODE parent link OLD BESTNODE ( SUCCESSOR OLD ) parent SUCCESSOR BESTNODE SUCCESSOR g OLD SUCCESSOR parent OLD BESTNODE g(OLD) update f(OLD)

  • AI ..

    @ 22

    SUCCESSOR OPEN CLOSE OLD OLD BESTNODE's successor ( ) parent g f' OLD (propagate) OLD OLD SUCCESSOR (terminal node) OPEN (propagate cost) depth-first traverse tree OLD g (f' ) traverse parent link parent parent g g current parent current parent parent

    SUCCESSOR OPEN CLOSE OPEN BESTNODE

    f'(SUCCESSOR) = g(SUCCESSOR) + h'(SUCCESSOR)

    A* 8-puzzle g h g h

  • AI ..

    @ 23

    2 8 3

    1 6 4

    7 5

    1 2 3

    4 5 6

    7 8 9

    2 3

    1 8 4

    7 6 5

    1 2 3

    8 4

    7 6 5

    g 1 0 1 2 3 4 0 5 1 8 1 1=0, 2=0, 3=0, 4=0, 5=1, 6=0, 7=0, 8=1, 9=0 g=2 h' 1=1, 2=0, 3=0, 4=1, 5=1, 6=0, 7=0, 8=0, 9=0 h'=3f = 2 + 3 = 5

  • AI ..

    @ 24

    2 8 3

    1 6 4

    7 5

    2 8 3

    1 6 4

    7 5

    2 8 3

    1 4

    7 6 5

    2 8 3

    1 6 4

    7 5

    2 8 3

    1 4

    7 6 5

    2 3

    1 8 4

    7 6 5

    2 8 3

    1 4

    7 6 5

    2 8 3

    7 1 4

    6 5

    2 3

    1 8 4

    7 6 5

    2 3

    1 8 4

    7 6 5

    1 2 3

    8 4

    7 6 5

    1 2 3

    8 4

    7 6 5

    1 8 3

    7 8 4

    6 5

    8 3

    2 1 4

    7 6 5

    f=0+4

    f=1+5f=1+3f=1+5

    f=2+3 f=2+3 f=2+4

    f=3+3

    f=3+4 f=3+2 f=3+4

    f=4+1

    f=5+0 f=5+2

    8-puzzle A*

    1.

    g=0

  • AI ..

    @ 25

    ( 1)

    2. h' h () h' perfect estimator h, A* algorithm

    h'= h'= 0 g g=0 random g 1 breadth-first

    3.3.2 Agendas Best-First Search: 1. most promising task 2. task (resource) time space task task (successor node)

    - agenda (justification) task agenda - task task

    3.3.3 Problem Reduction

  • AI ..

    @ 26

    AND-OR AND AND AND-OR

    2.8 AND

    Traverse 1. traverse (initial node) expand 2. f'( h' ) 3. f' 2 arcs (mostpromising)

    2.9 cost AND

    cost cost = 1 A ->B cost = 5+1 = 6 A ->C & D cost = 3+4+1+1 = 9

    AO*(AO* algorithm) 1. G INIT h'(INIT) 2. INIT SOLVED h' INIT FUTILITY

  • AI ..

    @ 27

    - Trace mark INIT NODE - NODE FUTILITY h' NODE NODE + SUCCESSOR G + SUCCESSOR SOLVED h'=0 + SUCCESSOR h' 3. S SOLVED h' parent S NODE S

    3.4 Constrain satisfaction

    3.5 Mean-End Analysis Mean-end analysis

    General Problem Solver(GPS) Mean end analysis Mean-End Analysis (precondition)

    Operator Precondition ResultPUSH(obj, loc) at(robot,obj)^

    large(obj)^clear(obj)^armempty

    at(obj, loc)^at(robot, loc)

    CARRY(obj.loc) at(robot,obj)^amall(obj)

    at(obj, loc)^at(robot, loc)

    WALK(loc) none at(robot, loc)

  • AI ..

    @ 28

    PICKUP(loc) at(robot, obj) holding(obj)PUTDOWN(obj) holding(obj) ~holding(obj)PLACE(obj1,obj2) at(robot,obj2)^

    holding(obj1)on(obj1, obj2)

    9

    Push Carry Walk Pickup Putdown PlaceMove object * *Move robot *Clear object *Get object on object *Get arm empty * *Be holding object *

    2.10

    2

    A walk pick up put down pick up put down B push C E place D

  • AI ..

    @ 29

    Heuristic Search 5 O @ simulated annealing


Top Related