Artificial Intelligence and SearchingArtificial IntelligenceTopics in Artificial IntelligenceDomain KnowledgeFrames & RulesPlanningSlide 7Slide 8Schemas & Case-based ReasoningSchemasSlide 11Determining SimilarityGame Playing and SearchReally Basic State Search ExampleOperatorsSearchGame PlayingTypes of gamesSlide 19Artificial Intelligence and SearchingCPSC 315 – Programming StudioSpring 2009Project 2, Lecture 1Adapted from slides of Yoonsuck ChoeArtificial IntelligenceLong-standing computational goalTuring testField of AI very diverse“Strong” AI – trying to simulate thought itself“Weak” AI – trying to make things that behave intelligentlySeveral different approaches used, topics studiedSometimes grouped with other fieldsRoboticsComputer VisionTopics in Artificial IntelligenceProblem SolvingReasoningTheorem ProvingPlanningLearningKnowledge RepresentationPerceptionAgent Behavioretc.Common theme: reason about domain knowledgeDomain KnowledgeTo perform a task, systems need a representation of the domainSymbolicExplicit representation of domain objects, concepts, and attributesE.g. Rules, frames, schemasSub-symbolicDistributed representation of objects, concepts, and attributes in the worldE.g. neural netsThere are also representations that blend these two depending on their useFrames & RulesFramesRepresents declarative and behavioral informationLike objects in E-R diagram or OO codeReasoning through inheritance of attributes and behaviorsSingle and multiple inheritanceClass-instance and prototype inheritanceRulesOften of the form “If A then B” (A → B)Reasoning through associative property A → B and B → C means A → COften combined with other representation of objectsPlanningActions often represented as preconditions and post-conditionsCookFood pre: haveRawFood AND haveCookingDevice post: haveCookedFood AND NOT haveRawFoodBuyRawFood pre: atGroceryStore AND money>=5 post: haveRawFood AND money = money – 5IncreaseRetirement (n)pre: money>=n post: retirement = retirement + n AND money = money – nAssume features not mentioned in post-condition are not modified by actionPlanningForward chainingFrom current state to decision (data driven)Often used in open-ended domains (e.g. design) and domains where new data becomes available over timeIdentifies potential action sequencesA utility (“goodness”) function used to select among possible paths (could be lowest cost in design)Backward chainingFrom goal to actions (goal driven)Used in domains with fixed number of outcomes (e.g. diagnosis)Hypothesis/test method identifies possible diagnosesTests to discriminate between diagnoses are then identifiedPlanningHow to select among actions when more than one is availablePriority Order Often times implemented implicitly through order of actions in listCould have priority ranks, but then again have to choose when more than one in the same rank are availablePrecision of Context Number of preconditions often used to infer more specialized actionMore specialized is assumed betterSchemas & Case-based ReasoningSchemasRepresents normal sequences of actions/eventsCase-based reasoning: reuse solution from prior case for current contextIdentify appropriate schema requires similarity assessmentRevise/adapt case to match current contextPerhaps save new case as schema for future actionOur legal system includes case-based reasoning because rule-based reasoning is fragile many unanticipated exceptions too many potential exceptions to be encodedSchemasConsider when entering a new restaurantRestaurant schema 1Enter restaurantGet in lineOrder at counterPay for foodWait for foodTake food to tableEat foodTake trash to trashcanLeave restaurantSchemasConsider when entering a new restaurantRestaurant schema 1Enter restaurantGet in lineOrder at counterPay for foodWait for foodTake food to tableEat foodTake trash to trashcanLeave restaurantRestaurant schema 2Enter restaurantAsk for tableWait to be seatedOrder food from waiterWait for foodEat foodGet billPay bill & leave tipLeave restaurantDetermining SimilarityHow to identify similar contextsSimilar situationNumber of attributes in commonCan be weighted to indicate relative importance of attributesDoes it look like McDonald’s or Christopher’s?Similar processNumber of common actions preceding current stateCan be weighted as a function of time to emphasize recent actionsDid you just give your car to the valet?Game Playing and SearchGame playing a long-studied topic in AISeen as a proxy for how more complex reasoning can be developedSearchUnderstanding the set of possible states, and finding the “best” state or the best path to a goal state, or some path to the goal state, etc.“State” is the condition of the environmente.g. in theorem proving, can be the state of things knownBy applying known theorems, can expand the state, until reaching the goal theoremShould be stored conciselyReally BasicState Search ExampleGiven a=b,b=c,c=d, prove a=d.a=b, b=c, c=da=b, b=c, c=da=ca=b, b=c, c=db=da=b, b=c, c=db=d, a=dOperatorsTransition from one state to anotherFly from one city to anotherApply a theoremMove a piece in a gameAdd person to a meeting scheduleOperators and states are both usually limited by various rulesCan only fly certain routesOnly valid moves in gameSearchExamine possible states, transitions to find goal stateInteresting problems are those too large to explore exhaustivelyUninformed searchSystematic strategy to explore optionsInformed searchUse domain knowledge to limit searchGame PlayingAbstract AI problemNice and challenging propertiesUsually state can be clearly, concisely representedLimited number of operations (but can still be large)Unknown factor – account for opponentSearch space can be hugeLimit response based on time – forces making good “decisions”e.g. Chess averages about 35 possible moves per turn, about 50 moves per player per game, or 35100 possible games. But, “only” 1040 possible board states.Types of gamesDeterministic vs. random factorKnown state vs. hidden
View Full Document