artificial intelligence dr. paul wagner department of computer science university of wisconsin –...
Post on 27-Dec-2015
257 Views
Preview:
TRANSCRIPT
Artificial IntelligenceArtificial Intelligence
Dr. Paul WagnerDr. Paul Wagner
Department of Computer ScienceDepartment of Computer Science
University of Wisconsin – Eau University of Wisconsin – Eau ClaireClaire
MessagesMessages
Artificial Intelligence (AI) is an Artificial Intelligence (AI) is an interesting sub-field of computer interesting sub-field of computer science that provides many science that provides many contributions to the overall fieldcontributions to the overall field
CS 420, as the AI course at CS 420, as the AI course at UWEC, is a good opportunity to UWEC, is a good opportunity to begin to explore these issuesbegin to explore these issues
OutlineOutline
OverviewOverview AI TopicsAI Topics
– Knowledge representationKnowledge representation– Problem solving and search space manipulationProblem solving and search space manipulation– PlanningPlanning– LearningLearning– CommunicatingCommunicating– UncertaintyUncertainty– Intelligent agentsIntelligent agents– RoboticsRobotics
AI LanguagesAI Languages MICS Robot Contest VideoMICS Robot Contest Video
Overview of Artificial Overview of Artificial IntelligenceIntelligence Definitions – four Definitions – four
major major combinationscombinations– Based on Based on thinkingthinking
or or actingacting– Based on activityBased on activity
like humanslike humans or or performed in performed in rational wayrational way
Systems Systems that that think like think like humanshumans
Systems Systems that that think think rationallrationallyy
Systems Systems that act that act like like humanshumans
Systems Systems that act that act rationallrationallyy
AI DefinitionsAI Definitions
Acting HumanlyActing Humanly– Turing Test – computer passes test if Turing Test – computer passes test if
a human interrogator asking written a human interrogator asking written questions can distinguish written questions can distinguish written answers from computer or humananswers from computer or human
– Computer needs:Computer needs: Natural language processingNatural language processing Knowledge representationKnowledge representation Automated reasoningAutomated reasoning Machine learningMachine learning
AI Definitions (2)AI Definitions (2)
– Total Turing Test – includes video Total Turing Test – includes video component (to test subject’s component (to test subject’s perceptual abilities) and opportunity perceptual abilities) and opportunity to pass physical objects to subjectto pass physical objects to subject
– Computer also needs:Computer also needs: Computer visionComputer vision RoboticsRobotics
AI Definitions (3)AI Definitions (3)
Thinking HumanlyThinking Humanly– Cognitive Modeling approach to AICognitive Modeling approach to AI– Involves crossover between Involves crossover between
computer science and psychology – computer science and psychology – cognitive sciencecognitive science
– Areas of interestAreas of interest Cognitive modelsCognitive models Neural networksNeural networks
AI Definitions (4)AI Definitions (4)
Thinking RationallyThinking Rationally– ““Laws of thought” approach to AILaws of thought” approach to AI– Goal: solve any problem based on logical Goal: solve any problem based on logical
manipulationmanipulation– ProblemsProblems
Difficult to represent certain types of knowledge Difficult to represent certain types of knowledge (e.g. common sense, informal knowledge)(e.g. common sense, informal knowledge)
Difference between solving problems in Difference between solving problems in principle and in practiceprinciple and in practice
– E.g. computational limitsE.g. computational limits
AI Definitions (4)AI Definitions (4)
Acting RationallyActing Rationally– ““Design a rational agent” approach Design a rational agent” approach
to AIto AI– Advantages over logic approachAdvantages over logic approach
Logic is only one tool or many that can Logic is only one tool or many that can be used to design rational agentbe used to design rational agent
Scientific advances can provide more Scientific advances can provide more tools for developing better agentstools for developing better agents
Knowledge Knowledge RepresentationRepresentation How to represent information?How to represent information? Generally, we use some sort of tree, Generally, we use some sort of tree,
grid or networkgrid or network OptionsOptions
– OO programming languages: OO programming languages: classes/objectsclasses/objects
– Relational database system: Relational database system: tables/rows/columnstables/rows/columns
ProblemProblem– The world is more varied, with many types The world is more varied, with many types
of things to representof things to represent
Knowledge Knowledge Representation (2)Representation (2) Abstract ObjectsAbstract Objects
– SetsSets– SentencesSentences– MeasurementsMeasurements
TimesTimes WeightsWeights
Generalized EventsGeneralized Events– IntervalsIntervals– PlacesPlaces– Physical ObjectsPhysical Objects– ProcessesProcesses
Knowledge Knowledge Representation (3)Representation (3) Some things are very difficult to representSome things are very difficult to represent
– Common senseCommon sense See See http://www.cyc.com/http://www.cyc.com/
– Combinations of multiple typesCombinations of multiple types Issues of:Issues of:
– TypeType– ScaleScale– GranularityGranularity– CombinationCombination
Other QuestionsOther Questions– How to distinguish knowledge and belief?How to distinguish knowledge and belief?– What is the best way to reason with this What is the best way to reason with this
information?information?
Problem Solving and Problem Solving and Search Space Search Space ManipulationManipulation Many Algorithmic Approaches to Many Algorithmic Approaches to
Problem SolvingProblem Solving– Depth-First SearchDepth-First Search– Breadth-First SearchBreadth-First Search
VariationsVariations– Depth-Limited SearchDepth-Limited Search– Iterative Deepening Depth-First Iterative Deepening Depth-First
SearchSearch– Bi-directional SearchBi-directional Search
Problem Solving and Problem Solving and Search Space Search Space Manipulation (2)Manipulation (2) Smarter SearchSmarter Search
– Greedy best-first searchGreedy best-first search– A* search (combine costs of path so A* search (combine costs of path so
far plus path from current node to far plus path from current node to goal)goal)
– Memory-bounded heuristic searchMemory-bounded heuristic search Heuristic – means of estimating a Heuristic – means of estimating a
measurement such as cost of searchmeasurement such as cost of search
Problem Solving and Problem Solving and Search Space Search Space Manipulation (3)Manipulation (3) IssuesIssues
– Avoiding repeated searchAvoiding repeated search– Searching with partial informationSearching with partial information
Problem Solving and Problem Solving and Search Space Search Space Manipulation (4)Manipulation (4) Adversarial SearchAdversarial Search
– E.g. games and game treesE.g. games and game trees– Minimax algorithmMinimax algorithm– Alpha-Beta pruningAlpha-Beta pruning
Problem Solving and Problem Solving and Search Space Search Space Manipulation (5)Manipulation (5) Applications of Problem SolvingApplications of Problem Solving
– Expert SystemsExpert Systems Approximating the functionality of an Approximating the functionality of an
absent human expertabsent human expert
– RoboticsRobotics Encountering unexpected obstaclesEncountering unexpected obstacles
PlanningPlanning
Many types of Many types of problemsproblems– ““Blocks world”Blocks world”– Getting yourself from Getting yourself from
Eau Claire to the Eau Claire to the AAAI conference in AAAI conference in BostonBoston
– Changing a flat tireChanging a flat tire– Completing all of Completing all of
your projects at the your projects at the end of the semesterend of the semester
– Developing a large Developing a large software applicationsoftware application
Planning (2)Planning (2)
ApproachesApproaches– State-based searchState-based search– Partial-order planningPartial-order planning– Planning graphsPlanning graphs
IssuesIssues– TimeTime– SchedulingScheduling– ResourcesResources
LearningLearning
Definition - Building on current Definition - Building on current knowledge by using experience to knowledge by using experience to improve a systemimprove a system
Various approachesVarious approaches– Supervised/unsupervised/reinforcementSupervised/unsupervised/reinforcement
Forms of learning algorithmsForms of learning algorithms– Inductive logicInductive logic
Example: given a set of point, approximate a lineExample: given a set of point, approximate a line
– Decision tree (set of questions, act differently Decision tree (set of questions, act differently depending on answer)depending on answer)
Learning (2)Learning (2)
IssuesIssues– Computational Learning TheoryComputational Learning Theory
Intersection of theoretical CS, AI, Intersection of theoretical CS, AI, statistics statistics
– How many examples do you need?How many examples do you need?
CommunicatingCommunicating
Major issue - Natural language Major issue - Natural language processingprocessing– Many issuesMany issues
SyntaxSyntax SemanticsSemantics ContextContext
– StepsSteps PerceptionPerception ParsingParsing AnalysisAnalysis DisambiguationDisambiguation IncorporationIncorporation
UncertaintyUncertainty
Much knowledge is not absoluteMuch knowledge is not absolute– Boundary between knowledge and belief is grayBoundary between knowledge and belief is gray
Techniques for dealing with uncertaintyTechniques for dealing with uncertainty– Probabilistic reasoningProbabilistic reasoning– Probabilistic reasoning over timeProbabilistic reasoning over time– Fuzzy sets / fuzzy logicFuzzy sets / fuzzy logic– Simple decision-making (evaluating utility)Simple decision-making (evaluating utility)– Complex decision-making (taking ability to Complex decision-making (taking ability to
reevaluate into account)reevaluate into account) ApplicationsApplications
– Expert systemsExpert systems
Intelligent AgentsIntelligent Agents
Everything we’ve talked about Everything we’ve talked about can be viewed in terms of can be viewed in terms of embedding intelligence within an embedding intelligence within an agentagent– Software systemSoftware system– Machine with embedded softwareMachine with embedded software– RobotRobot
Intelligent Agents (2)Intelligent Agents (2)
Issues for agentsIssues for agents– Limitations on memoryLimitations on memory– Perceiving its environmentPerceiving its environment– Working with other agentsWorking with other agents– Affecting its environment (through Affecting its environment (through
actuators)actuators) ProcessesProcesses
– Simple – based on rulesSimple – based on rules– Complex – based on multiple pieces of logic, Complex – based on multiple pieces of logic,
dealing with uncertaintydealing with uncertainty
RoboticsRobotics
Field encompassing elements of computer Field encompassing elements of computer science/AI, engineering, physical systemsscience/AI, engineering, physical systems
IssuesIssues– Many that we’ve discussed, plus:Many that we’ve discussed, plus:– PerceptionPerception– ActuationActuation
Recent successesRecent successes– Worker bots (e.g. floor cleaners)Worker bots (e.g. floor cleaners)– Intelligent navigation (DARPA vehicle contest)Intelligent navigation (DARPA vehicle contest)
Test environmentsTest environments– Lego MindstormsLego Mindstorms– Other robot packages or custom systemsOther robot packages or custom systems
AI LanguagesAI Languages
Scheme / LISPScheme / LISP– FunctionalFunctional– Simple knowledge representation (list)Simple knowledge representation (list)– Easy to apply functionality to represented elementsEasy to apply functionality to represented elements
PrologProlog– Logic-basedLogic-based– Facts and rules easily representedFacts and rules easily represented– Built-in search engineBuilt-in search engine
Specialized languagesSpecialized languages– Rule languages (e.g. CLIPS)Rule languages (e.g. CLIPS)– Planning languages (e.g. STRIPS)Planning languages (e.g. STRIPS)
CS 420CS 420
Spring semester, about every Spring semester, about every other yearother year
Will be offered Spring 2007Will be offered Spring 2007 Prerequisite: CS 330 (to get Prerequisite: CS 330 (to get
Scheme and Prolog background)Scheme and Prolog background) TopicsTopics
– All of the above!All of the above!
CS 420 (2)CS 420 (2)
Possible ProjectsPossible Projects– Neural network to simulate decision Neural network to simulate decision
making, natural language processingmaking, natural language processing– Software development planning Software development planning
through cooperating intelligent agentsthrough cooperating intelligent agents– Expert system for deciding which Expert system for deciding which
courses to take to complete a CS majorcourses to take to complete a CS major– Sumo robots?Sumo robots?
MICS Robot Contest MICS Robot Contest VideoVideo http://http://
video.google.com/videoplay?docivideo.google.com/videoplay?docidd=7851913746457357108&hl=en=7851913746457357108&hl=en
top related