Top Banner

of 48

02 Solving Problems by Searching (Us)

Jun 01, 2018

Download

Documents

Amimul Ihsan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/9/2019 02 Solving Problems by Searching (Us)

    1/48

    Artificial Intelligence

    Solving problems by searching

    Fall 2008

    professor: Luigi Ceccaroni

  • 8/9/2019 02 Solving Problems by Searching (Us)

    2/48

    Problem solving

    e !ant:

    "o automatically solve a problem

    e nee#:

    A representation of the problem

    Algorithms that use some strategy to solve

    the problem #efine# in that representation

  • 8/9/2019 02 Solving Problems by Searching (Us)

    3/48

    Problem representation

    $eneral:

    % State space: a problem is #ivi#e# into a set

    of resolution steps from the initial state to the

    goal state

    % Reduction to sub-problems: a problem is

    arrange# into a hierarchy of sub&problems

    Specific: $ame resolution

    Constraints satisfaction

  • 8/9/2019 02 Solving Problems by Searching (Us)

    4/48

    States

    A problem is #efine# by its elements an# theirrelations'

    In each instant of the resolution of a problem(

    those elements have specific #escriptors )*o!to select them+, an# relations'

    A stateis a representation of those elements ina given moment'

    "!o special states are #efine#:% Initial state)starting point,

    % Final state)goal state,

  • 8/9/2019 02 Solving Problems by Searching (Us)

    5/48

    State mo#ification:

    successor function A successor function is nee#e# to move

    bet!een #ifferent states' A successor functionis a #escription of

    possible actions( a set of operators' It is atransformation function on a staterepresentation( !hich convert it into anotherstate'

    "he successor function #efines a relation of

    accessibility among states' -epresentation of the successor function:

    Con#itions of applicability "ransformation function

  • 8/9/2019 02 Solving Problems by Searching (Us)

    6/48

    State space

    "he state spaceis the set of all states

    reachable from the initial state'

    It forms a graph )or map, in !hich the no#es are

    states an# the arcs bet!een no#es are actions' A pathin the state space is a se.uence of

    states connecte# by a se.uence of actions'

    "he solution of the problem is part of the mapforme# by the state space'

  • 8/9/2019 02 Solving Problems by Searching (Us)

    7/48

    Problem solution

    A solutionin the state space is a path from theinitial state to a goal state or( sometimes( /ust agoal state'

    Path/solution cost: function that assigns anumeric cost to each path( the cost of applyingthe operators to the states

    Solution .uality is measure# by the path costfunction( an# an optimal solutionhas the

    lo!est path cost among all solutions' Solutions: any( an optimal one( all' Cost is

    important #epen#ing on the problem an# thetype of solution sought'

  • 8/9/2019 02 Solving Problems by Searching (Us)

    8/48

    Problem #escription

    Components: State space )e1plicitly or implicitly #efine#, Initial state $oal state )or the con#itions it has to fulfill, Available actions )operators to change state, -estrictions )e'g'( cost, lements of the #omain !hich are relevant to the

    problem )e'g'( incomplete 3no!le#ge of the starting

    point, "ype of solution:

    Se.uence of operators or goal state

    Any( an optimal one )cost #efinition nee#e#,( all

  • 8/9/2019 02 Solving Problems by Searching (Us)

    9/48

    1ample: 8&pu44le

    8

    2 3

    4

    1

    6

    !

  • 8/9/2019 02 Solving Problems by Searching (Us)

    10/48

    1ample: 8&pu44le

    State space: configuration of the eighttiles on the boar#

    Initial state: any configuration

    "oal state: tiles in a specific or#er

    #perators or actions: 5blan3 moves6 Con#ition: the move is !ithin the boar#

    "ransformation: blan3 moves Left( Right( Up(or Down

    Solution: optimal se.uence of operators

  • 8/9/2019 02 Solving Problems by Searching (Us)

    11/48

    1ample: n.ueens

    )n 7 ( n 7 8,

  • 8/9/2019 02 Solving Problems by Searching (Us)

    12/48

    1ample: n.ueens

    )n 7 ( n 7 8, State space: configurations from 0 to n .ueens

    on the boar# !ith only one .ueen per ro! an#column

    Initial state: configuration !ithout .ueens on the

    boar# "oal state: configuration !ith n .ueens such that

    no .ueen attac3s any other #perators or actions: place a .ueen on the

    boar# Con#ition: the ne! .ueen is not attac3e# by any

    other alrea#y place# "ransformation: place a ne! .ueen in a particular

    s.uare of the boar#

    Solution: one solution )cost is not consi#ere#,

  • 8/9/2019 02 Solving Problems by Searching (Us)

    13/48

  • 8/9/2019 02 Solving Problems by Searching (Us)

    14/48

    Search as goal satisfaction

    Satisfying a goal

    Agent 3no!s !hat the goal is

    Agent cannot evaluate interme#iate solutions

    )uninforme#,

    "he environment is:

    Static

    bservable

    9eterministic

  • 8/9/2019 02 Solving Problems by Searching (Us)

    15/48

    1ample: holi#ay in -omania

    n holi#ay in -omania; currently in Ara#

    Flight leaves tomorro! from :00 Let?s configure this to be an AI problem

  • 8/9/2019 02 Solving Problems by Searching (Us)

    16/48

    -omania

    hat?s the problem+

    Accomplish a goal

    -each :00

    So this is a goal&base# problem

  • 8/9/2019 02 Solving Problems by Searching (Us)

    17/48

    -omania

    hat?s an e1ample of a non&goal&base#

    problem+

    Live long an# prosper

    @a1imi4e the happiness of your trip to

    -omania

    9on?t get hurt too much

  • 8/9/2019 02 Solving Problems by Searching (Us)

    18/48

    -omania

    hat .ualifies as a solution+

    ou canBcannot reach :00

    "he actions one ta3es to travel from Ara# to

  • 8/9/2019 02 Solving Problems by Searching (Us)

    19/48

    -omania

    hat a##itional information #oes one

    nee#+

    A map

  • 8/9/2019 02 Solving Problems by Searching (Us)

    20/48

    A state space Which cities could you bein?

    An initial state Which city do you start

    from?A goal state

    Which city do you aim to

    reach?

    A function #efining state

    transitions

    When in city foo, the

    following cities can be

    reached

    A function #efining the

    5cost6 of a state

    se.uence

    How long does it take to

    travel through a city

    sequence?

    @ore concrete problem

    #efinition

  • 8/9/2019 02 Solving Problems by Searching (Us)

    21/48

    @ore concrete problem

    #efinition

    A state space Choose a representation

    An initial stateChoose an element from the

    representation

    A goal stateCreate goal_function(state)such

    that TR! is returned upon reaching

    goal

    A function #efining state

    transitions

    successor_function(statei)"

    #$actiona, statea%, $actionb, stateb%,

    &'

    A function #efining the 5cost6 of a

    state se.uencecost (sequence) " number

  • 8/9/2019 02 Solving Problems by Searching (Us)

    22/48

    Important notes about this

    e1ample Static environment )available states(

    successor function( an# cost functions #on?t

    change,

    bservable )the agent 3no!s !here it is, 9iscrete )the actions are #iscrete,

    9eterministic )successor function is al!ays

    the same,

  • 8/9/2019 02 Solving Problems by Searching (Us)

    23/48

    "ree search algorithms

  • 8/9/2019 02 Solving Problems by Searching (Us)

    24/48

  • 8/9/2019 02 Solving Problems by Searching (Us)

    25/48

    Implementation: general search

    algorithm,l*orithm$eneral Search

    penDstates'insert )InitialDstate,

    Current7 penDstates'first),

    $hile notisDfinal+)Current, and notpenDstates'empty+), do

    penDstates'#eleteDfirst),

    Close#Dstates'insert)Current,

    Successors7 generateDsuccessors)Current,

    Successors7 processDrepeate#)Successors( Close#Dstates(

    penDstates,

    penDstates'insert)Successors,

    Current7 penDstates'first),

    ehile

    e,l*orithm

  • 8/9/2019 02 Solving Problems by Searching (Us)

    26/48

  • 8/9/2019 02 Solving Problems by Searching (Us)

    27/48

    ,rad

    1ample: Ara#

  • 8/9/2019 02 Solving Problems by Searching (Us)

    28/48

    ,rad

    .erind %!& imisoara %118& Sibiu %140&

    1ample: Ara#

  • 8/9/2019 02 Solving Problems by Searching (Us)

    29/48

    ,rad

    .erind %!& imisoara %118& Sibiu %140&

    1ample: Ara#

  • 8/9/2019 02 Solving Problems by Searching (Us)

    30/48

    ,rad

    .erind %!& imisoara %118& Sibiu %140&

    radea %1!1& Fara*as %& Rimnicu ilcea %80&

    1ample: Ara#

  • 8/9/2019 02 Solving Problems by Searching (Us)

    31/48

    Implementation: states vs'

    no#es State

    )-epresentation of, a physical configuration

    Eo#e

    9ata structure constituting part of a search

    tree

    Inclu#esparent, children, depth, path costg)1,

    States #o not have parents( chil#ren(#epth( or path cost

  • 8/9/2019 02 Solving Problems by Searching (Us)

    32/48

    Search strategies

    A strategy is #efine# by pic3ing the or#er of no#e

    e1pansion

    Strategies are evaluate# along the follo!ing

    #imensions: Completeness % #oes it al!ays fin# a solution if

    one e1ists+

    "ime comple1ity % number of no#es

    generate#Be1pan#e#

    Space comple1ity % ma1imum no#es in memory

    ptimality % #oes it al!ays fin# a least&cost

    solution+

  • 8/9/2019 02 Solving Problems by Searching (Us)

    33/48

    Search strategies

    "ime an# space comple1ity are measure# in

    terms of:

    b % ma1imum branching factor of the search tree

    )may be infinite, # % #epth of the least&cost solution

    m % ma1imum #epth of the state space )may be

    infinite,

  • 8/9/2019 02 Solving Problems by Searching (Us)

    34/48

    Gninforme# Search Strategies

    Gninforme# strategies use only the

    information available in the problem

    #efinition

  • 8/9/2019 02 Solving Problems by Searching (Us)

    35/48

    >H

    Eo#es

    pen no#es:

    $enerate#( but not yet e1plore#

    1plore#( but not yet e1pan#e#

    Close# no#es:

    1plore# an# e1pan#e#

    >H

  • 8/9/2019 02 Solving Problems by Searching (Us)

    36/48

  • 8/9/2019 02 Solving Problems by Searching (Us)

    37/48

    Space cost of

  • 8/9/2019 02 Solving Problems by Searching (Us)

    38/48

    Properties of brea#th&first

    search Complete+

    es )if b )ma1 branch factor,is finite,

    "ime+

    = b b2

    J b#

    b)b#

    &=, 7 )b#=

    ,( i'e'( e1ponential in # Space+

    )b#=, )3eeps every no#e in memory,

    ptimal+

    nly if cost 7 = per step( other!ise not optimal in general Space is the big problem; it can easily generate no#es at

    =0 @

  • 8/9/2019 02 Solving Problems by Searching (Us)

    39/48

  • 8/9/2019 02 Solving Problems by Searching (Us)

    40/48

  • 8/9/2019 02 Solving Problems by Searching (Us)

    41/48

    =

    9epth&limite# search

    It is #epth&first search !ith an impose#

    limit on the #epth of e1ploration( to

    guarantee that the algorithm en#s'

    =

  • 8/9/2019 02 Solving Problems by Searching (Us)

    42/48

    2

    "reatment of repeate# states

  • 8/9/2019 02 Solving Problems by Searching (Us)

    43/48

  • 8/9/2019 02 Solving Problems by Searching (Us)

    44/48

    Iterative #eepening search

  • 8/9/2019 02 Solving Problems by Searching (Us)

    45/48

    H

    Iterative #eepening search

    "he algorithm consists of iterative( #epth&first

    searches( !ith a ma1imum #epth that increases at

    each iteration' @a1imum #epth at the beginning is ='

  • 8/9/2019 02 Solving Problems by Searching (Us)

    46/48

    Iterative #eepening search

  • 8/9/2019 02 Solving Problems by Searching (Us)

    47/48

    Summary

    All uninforme# searching techni.ues are more ali3e

    than #ifferent'

  • 8/9/2019 02 Solving Problems by Searching (Us)

    48/48

    8

    Gninforme# vs' informe#